Appium中部分api的使用方法

1.使用AndroidDriver,其已经继承了AppiumDriver

[java]  view plain  copy
  1.        private AndroidDriver driver;  
  2.   
  3. @Before  
  4. public void setUp() throws Exception {  
  5.     DesiredCapabilities capabilities = new DesiredCapabilities();  
  6.     capabilities.setCapability("deviceName""Android Emulator");  
  7.     capabilities.setCapability("platformVersion""4.4");  
  8.     capabilities.setCapability("platformName""Android");  
  9.     capabilities.setCapability("appPackage""com.android.settings");  
  10.     capabilities.setCapability("appActivity"".Settings");  
  11.   
  12.     driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"),  
  13.             capabilities);  
  14. }  
  15.   
  16. @After  
  17. public void tearDown() throws Exception {  
  18.     driver.quit();  
  19. }  
2.截屏并保存至本地

[java]  view plain  copy
  1.               //截屏并保存至本地  
  2. File screen = driver.getScreenshotAs(OutputType.FILE);  
  3. File screenFile = new File("d:\\screen.png");  
  4. try {  
  5.     FileUtils.copyFile(screen, screenFile); //commons-io-2.0.1.jar中的api  
  6. catch (IOException e) {  
  7.     e.printStackTrace();  
  8. }   

3.push文件、pull文件

[java]  view plain  copy
  1.         File file = new File("d:\\test.txt"); //test.txt内容为"test"  
  2. String content = null;  
  3. try {  
  4.     content = FileUtils.readFileToString(file);  
  5. catch (IOException e) {  
  6.     e.printStackTrace();  
  7. }  
  8.   
  9. byte[] data = Base64.encodeBase64(content.getBytes());  
  10. driver.pushFile("sdcard/test.txt", data);  
  11.   
  12. byte[] resultDate = driver.pullFile("sdcard/test.txt");  
  13. System.out.println(new String(Base64.decodeBase64(resultDate))); //打印结果为"test"  

4.

[java]  view plain  copy
  1. //获取当前界面的activity,可用于断言是否跳转到预期的activity  
  2. driver.currentActivity();  

5.
[java]  view plain  copy
  1. //打开通知栏界面  
  2. driver.openNotifications();  
6.

[html]  view plain  copy
  1. //获取网络状态  
  2. int status = driver.getNetworkConnection().value;  
  3. System.out.println(status);  
  4.   
  5. //设置网络状态  
  6. driver.setNetworkConnection(new NetworkConnectionSetting(status));  
  7. //或者  
  8. driver.setNetworkConnection(new NetworkConnectionSetting(false, true, false));  
7.

[java]  view plain  copy
  1. //启动其他应用,跨APP  
  2. driver.startActivity("com.android.camera"".CameraLauncher");  
8.

[java]  view plain  copy
  1. //自动滑动列表  
  2. driver.scrollTo("text");  
  3. //或者  
  4. driver.scrollToExact("text");  
9.
[java]  view plain  copy
  1.               //安装APP  
  2. driver.installApp(appPath);  
  3.   
  4. //判断应用是否已安装  
  5. driver.isAppInstalled("package name");  
10.

[java]  view plain  copy
  1. //拖动相机图标至日历图标位置  
  2. new TouchAction(driver).longPress(driver.findElementByName("相机"))  
  3. .moveTo(driver.findElementByName("日历")).release().perform();  
11.

[java]  view plain  copy
  1.               //锁屏  
  2. driver.lockScreen(2);  
  3.   
  4. //判断是否锁屏  
  5. driver.isLocked();   
12.

[java]  view plain  copy
  1. //发送按键事件  
  2. Event(AndroidKeyCode.HOME);  

13.

[java]  view plain  copy
  1. <span style="color:#ff0000;"> </span>  
  2.                 //通过uiautomator定位clickable属性为true的元素并点击  
  3.         driver.findElementByAndroidUIAutomator("new UiSelector().clickable(true)").click();  
  4.           
  5.         //相同属性的元素使用List存放  
  6.         List<WebElement> elements = driver.findElementsByClassName("class name");  
  7.         elements.get(0).click(); //点击List中的第一个元素  
  8.         //tap,点击元素位置  
  9.         driver.tap(1, driver.findElementByName("日期和时间"), 0);  
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值