博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Appium之编写H5应用测试脚本(切换到Webview)
阅读量:5021 次
发布时间:2019-06-12

本文共 2003 字,大约阅读时间需要 6 分钟。

App使用H5编写,默认方式找不到元素。启动后获取所有上下文,找到webivew_xxxx的,然后进行切换。

源码:

1 package MyAppium; 2  3 import io.appium.java_client.android.AndroidDriver; 4 import org.openqa.selenium.By; 5 import org.openqa.selenium.WebElement; 6 import org.openqa.selenium.remote.DesiredCapabilities; 7  8 import java.net.MalformedURLException; 9 import java.net.URL;10 import java.util.Set;11 12 /**13  * @Auther:GongXingRui14  * @Date:2018/11/115  * @Description: 测试App应用(H5)16  **/17 public class ZBuyAppTest {18     public static void main(String[] args) throws MalformedURLException, InterruptedException {19 20         DesiredCapabilities capabilities = new DesiredCapabilities();21         capabilities.setCapability("deviceName", "Android Sum");22         capabilities.setCapability("automationName", "Appium");23         capabilities.setCapability("platformName", "Android");24         capabilities.setCapability("noReset", true);25 //        安卓版本号,保持默认即可26 //        capabilities.setCapability("platformVersion", "7.0");27         //启动包名,使用SDK的uiautomatorviewer查看28         capabilities.setCapability("appPackage", "cn.com.shopping.halmar");29         capabilities.setCapability("appActivity", "com.weshare.jiekuan.activity.LoadActivity");30 31         AndroidDriver driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub"), capabilities);32         Thread.sleep(5000);33 34 //        获取所有窗口35         Set
contexts = driver.getContextHandles();36 System.out.println("所有窗口上下文:" + contexts);37 38 // 切换窗口到WEBVIEW39 driver.context("WEBVIEW_cn.com.shopping.halmar");40 41 WebElement webElement = (WebElement) driver.findElements(By.className("_2G-P4GHfk8agQ8HDMa3Who")).get(1);42 webElement.click();43 Thread.sleep(3000);44 45 String result = driver.findElement(By.className("_3vza4fqJTJUBxJqQm687vB")).getText();46 System.out.println("结果:" + result);47 48 driver.quit();49 }50 }

 

转载于:https://www.cnblogs.com/gongxr/p/9894704.html

你可能感兴趣的文章
[Umbraco] 项目结构
查看>>
[Xcode 实际操作]二、视图与手势-(5)给图像视图添加圆角效果
查看>>
[Swift通天遁地]八、媒体与动画-(1)实现音频的播放和停止
查看>>
20155210 Exp7 网络欺诈防范
查看>>
[Unit Testing] AngularJS Unit Testing - Karma
查看>>
[CSS3] The different of Background-size between 'cover' and 'contain'
查看>>
[Spring Boot] Complex Scope Scenarios of a Spring Bean - Mix Prototype and Singleton, ScopeProxy
查看>>
[RxJS] Split an RxJS observable with window
查看>>
[Angular] Observable.catch error handling in Angular
查看>>
[Practical Git] Configure global settings with git config
查看>>
Android应用程序获取ROOT权限的方法
查看>>
python实现无重复字符串的最长子串
查看>>
记一次空格引发的错误
查看>>
git push 远程新分支
查看>>
python中defaultdict的用法
查看>>
jieba分词的原理
查看>>
CSS3新特性应用之用户体验
查看>>
编译成功,运行闪退
查看>>
C++ Copy Elision
查看>>
一款优秀的在线编辑器:JsBin [使用教程]
查看>>