• appium+java (六) 手机chrome浏览器操作


    一、前言

    早之前写过一段时间的appium for native app(即原生app脚本),但尴尬的是从未写过类似的文章,后期有时间我会陆续接着写,近一阶段有时间又把appium捡起来了,由于公司产品特点H5及小程序较多,所以又转为写非原生app的脚本了。

    最近也有朋友问我说,手机里可不可以实现像webdriver那样的自动化?

    所以特意研究了下,只要肯尝试,方法还是有的,相信我,这一切并不是很难

    二、准备工作

    Chrome浏览器(版本70.0.3538.110)

    Android7.0

    三、实例代码

    代码示例:

     public AndroidDriver<WebElement> driver;
        @BeforeClass
        public void startTest() throws MalformedURLException {
            DesiredCapabilities capabilities = new DesiredCapabilities();
            capabilities.setCapability("platformName", "Android");
            capabilities.setCapability("deviceName", "WTK7N16C14006883");
            capabilities.setCapability("platformVersion", "7.0");
            capabilities.setCapability("browserName", "Chrome");
            driver = new AndroidDriver<WebElement>(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);
            driver.manage().timeouts().implicitlyWait(6, TimeUnit.SECONDS);
        }
    
        @Test
        public void testBrower() {
            //打开百度首页
            driver.get("https://www.baidu.com");
            //输入框元素
            WebElement inputBox = driver.findElement(By.id("index-kw"));
            //输入JAVA关键字
            inputBox.sendKeys("appium");
            //百度一下按钮
            WebElement searchButton = driver.findElement(By.id("index-bn"));
            //点击百度一下按钮
            searchButton.click();
            try {
                Thread.sleep(2000);
            } catch (InterruptedException e) {
                e.printStackTrace();
            }
        }
    
        //结束测试代码:
        @AfterClass
        public void afterClass() {
            driver.quit();
        }

    四、元素定位

    如下图所示,显然这是一个webview操作,关于webview怎么查看dom及元素显示,参照我之前写过的一篇文章《appium+java(四)微信公众号自动化测试实践》,此处不再赘述

     

    五、运行效果

  • 相关阅读:
    C++实现网络寻路
    java实现生日相同概率
    java实现生日相同概率
    Mysql 锁表 for update (引擎/事务)
    mysql(for update)悲观锁总结与实践
    Select For update语句浅析
    Mysql查询语句使用select.. for update导致的数据库死锁分析
    数据库中Select For update语句的解析
    【转载】支付宝运营架构中柔性事务指的是什么?
    互联网支付系统整体架构详解
  • 原文地址:https://www.cnblogs.com/longronglang/p/10314120.html
Copyright © 2020-2023  润新知