Appium 对于 Android 中webview 页面测试注意的问题
2017-06-16 14:37
281 查看
Appium 对于 Android 中webview 页面测试注意的问题
对于 APP中有webview页面的测试,如:集成其他APP账户登录的(类似Facebook,微博之类),见图(我们应用集成了facebook用户登录):
需要需要注意几点:
1. 先查看下被测试app 是原生的还是混合的,方法如下:
测试代码中:
Set contextNames=driver.getContextHandles();
System.out.print(contextNames.toString());
如果打印结果是:NATIVE_APP,很遗憾的告诉你,直接是不能测试带有Webview的APP的。
2.针对情况1,现在需要做的是,让开发人员帮你在APP源码中加入:
WebView.setWebContentsDebuggingEnabled(true);
然后重新打个包给你测试。
当然 自己有APP源码的话,你自己也可以修改源码,加入:
WebView.setWebContentsDebuggingEnabled(true);
具体最好可以咨询下开发人员,然后重新打个包。
3. 用1方法测试下,这次应该能打印出类似于:
[NATIVE_APP, WEBVIEW_tv.tobelive] 这样的结果(当然这是我的被测试APP)。
4. 开始测试:
被测试APP中 呼出Web页面后,在测试代码中加入:
driver.context("WEBVIEW_tv.tobelive");
然后测试就很简单了,找对象就和selenium一样了。如:
driver.findElement(By.name("email")).click();
driver.findElement(By.name("pass")).click();
driver.findElement(By.name("login")).click();
特别注意
Webview页面操作结束后,需要在切换回去原生的 NATIVE_APP(不然原生APP上的对象找不到)。
driver.context("NATIVE_APP");
至此,问题解决。
对于 APP中有webview页面的测试,如:集成其他APP账户登录的(类似Facebook,微博之类),见图(我们应用集成了facebook用户登录):
需要需要注意几点:
1. 先查看下被测试app 是原生的还是混合的,方法如下:
测试代码中:
Set contextNames=driver.getContextHandles();
System.out.print(contextNames.toString());
如果打印结果是:NATIVE_APP,很遗憾的告诉你,直接是不能测试带有Webview的APP的。
2.针对情况1,现在需要做的是,让开发人员帮你在APP源码中加入:
WebView.setWebContentsDebuggingEnabled(true);
然后重新打个包给你测试。
当然 自己有APP源码的话,你自己也可以修改源码,加入:
WebView.setWebContentsDebuggingEnabled(true);
具体最好可以咨询下开发人员,然后重新打个包。
3. 用1方法测试下,这次应该能打印出类似于:
[NATIVE_APP, WEBVIEW_tv.tobelive] 这样的结果(当然这是我的被测试APP)。
4. 开始测试:
被测试APP中 呼出Web页面后,在测试代码中加入:
driver.context("WEBVIEW_tv.tobelive");
然后测试就很简单了,找对象就和selenium一样了。如:
driver.findElement(By.name("email")).click();
driver.findElement(By.name("pass")).click();
driver.findElement(By.name("login")).click();
特别注意
Webview页面操作结束后,需要在切换回去原生的 NATIVE_APP(不然原生APP上的对象找不到)。
driver.context("NATIVE_APP");
至此,问题解决。
相关文章推荐
- appium对于混合app的webview页面的测试
- Appium测试Android混合应用时,第二次切换到WebView时的定位问题
- 屏蔽电信流氓广告造成的诡异的问题--Android WebView 长时间不能载入页面
- android webview 点击页面输入框导致页面变大问题的解决
- app自动化的webView页面测试思路(appium工具)。
- 【Android】WebView加载https页面不能正常显示资源问题
- Android菜鸟学习笔记(WebView加载html页面,页面提交数据问题)
- Android使用Webview显示页面以及点击跳转startActivity问题
- Android WebView JS交互 混淆打包需要注意的问题
- 【Android】WebView加载https页面不能正常显示资源问题
- Android WebView页面重定向问题
- Android 4.2 webview注入js对象时需要注意的问题
- 关于android 端,人人网以及新浪网 webview 页面缓存问题
- Android WebView加载出现空白页面问题解决
- android中webview注意的问题
- Android WebView加载服务端页面AJAX认证失败问题
- Android webview 加载html 页面缩放的问题
- android WebView与JS交互以及需要注意问题
- android webview 加载重定向页面时点击无法回退,导致重复加载当前页面问题的解决方案
- android 中webview退出当前页面仍然继续播放的问题