appium不能获取webview内容的解决办法

亦余心之所善兮,虽九死其犹未悔。这篇文章主要讲述appium不能获取webview内容的解决办法相关的知识,希望能为你提供帮助。
在用appium对小猿搜题app进行自动化测试时,准备用page_source打印出文章的xml内容
但是发现只能打印出外部结构内容,实际的文章内容却没有显示
截图如下

appium不能获取webview内容的解决办法

文章图片

 
appium不能获取webview内容的解决办法

文章图片

查询之后,得知需要通过contexts获取所有的context,然后通过switch_to.context()切换到对应的context下便可获取
通过打印context,结果如下
appium不能获取webview内容的解决办法

文章图片

显示只有一个NATIVE_APP,并没有其他的webview信息
又经过一番查询,得知只有在android4.4及以上版本的系统中才会输出更多的webview
因此时用的安卓模拟器为夜神,系统为android4.4.2,猜测系统应该没问题
但是抱着试一下的态度,下载并安装了逍遥安卓模拟器(android版本为4.4.4)
测试结果如下
appium不能获取webview内容的解决办法

文章图片

【appium不能获取webview内容的解决办法】意外的输出了另外两个context
猜测应该是不同的模拟器对安卓系统有不同程度的修改
接着通过switch_to.context()依次切换这三个context,得到了需要的正文内容
appium不能获取webview内容的解决办法

文章图片

  通过此次经历,继续学习了appium的相关自动化测试,对移动端的自动化测试也有了更深一层的认识。
 

    推荐阅读