zoukankan      html  css  js  c++  java
  • appium 测试使用的API

    appium 测试使用的API:

    模拟操作类

    driver.runAppInBackground(5); //将当前活跃的应用放在后台运行
    driver.hideKeyboard(); //隐藏键盘
    driver.lockDevice(); //锁屏
    driver.openNotifications(); //打开Android的下拉通知栏
    driver.isAppInstalled(“com.example.android.apis”) //判断应用是否安装
    driver.installApp(“path/to/my.apk”) //安装应用
    driver.removeApp(“com.example.android.apis”) //卸载应用
    driver.closeApp() //关闭App
    driver.getContextHandles() //可用上下文,context可以理解为可进入的窗口,如果是native则为native_app,如果是webview为对应webview;
    driver.context(); //设置上下文 (context),对hybrid app会用到
    driver.getAppStringMap(); //获取应用的字符串
    driver.pressKeyCode(AndroidKeyCode.HOME); //给设备发送一个按键事件,所有键盘按键值可参考AndroidKeyCode类
    driver.pullFile(“Library/AddressBook/AddressBook.sqlitedb”); //从设备中拉出文件
    driver.pullFolder(“Library/AddressBook”); //从设备中拉出文件夹
    driver.PushFile(“/data/local/tmp/file.txt”, “some data for the file”); //推送文件到设备中去
    driver.swipe(75, 500, 75, 0, 0.8) //模拟用户滑动
    driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(1)); //设置等待时间
    driver.navigate().forward(); // 前进
    driver.navigate().back(); // 后退
    driver.navigate().refresh(); // 刷新
    driver.currentActivity(); //当前activity,可用于断言跳转是否正确
    driver.startActivity(appPackage,appActivity); //启动其他app的activity
    坐标操作,降低适配带来的不适用: 
    double Screen_X = driver.Manage().Window.Size.Width;//获取手机屏幕宽度 
    double Screen_Y = driver.Manage().Window.Size.Height;//获取手机屏幕高度 
    double startX = element.Location.X; //获取元素的起点坐标,即元素最左上角点的横坐标 
    double startY = element.Location.Y; //获取元素的起点坐标,即元素最左上角点的纵坐标 
    double elementWidth = element.Size.Width; //获取元素的宽度 
    double elementHight = element.Size.Height; //获取元素的宽度

    元素定位类findElementByXX
    driver.findElementById(“id”);
    id获取方法:利用uiautomater截屏,获取resource id;
    driver.findElementByClassName(“className”);
    通常通过这种方式获取的view不止一个,需要遍历一遍得到的 views,然后根据条件匹配需要的view。
    driver.findElementByName(“text”);
    name获取方法:利用uiautomater截屏,获取text;
    driver.findElementsByLinkText (“text”);
    针对webview上元素的超链接
    driver.findElementByXPath(“//*[@name=’62’]”);
    举例,我要定位下图页面中的这个元素,我采用xpath定位时,可以这样写:
    WebElement webElement = driver.findElementByXPath("//android.widget.TextView[contains(@text,'商品描述')]");
    webElement.click();

  • 相关阅读:
    MyBatis原理分析
    oracle修改数据遇到的坑
    oracle查询时遇到的坑
    maven镜像
    易错题
    binlog2sql 安装使用
    Archery SQL审核平台搭建
    Docker安装
    夜莺n9e监控搭建
    influxdb安装
  • 原文地址:https://www.cnblogs.com/D-zsd/p/11401976.html
Copyright © 2011-2022 走看看