Appium自动化-webview测试

webview测试

模拟器

  • webview控件会被映射为原生控件,类型为view,其中的文本内容会变成content-desc或者text
  • 6.0会把webview中的控件变成一个带有content-desc属性的view控件
  • 9.0会把webview中的控件变成一个带有text属性的view控件

真机上

  • 如果app未开启webview的调试属性,是无法分析内部的控件的
  • 个别手机可能会默认打开此属性,所以默认也能访问到H5内部的控件
  • 如果还是访问不到,检查webview的调试属性是否开启,此时需要让研发配合打开webview的调试属性
  • adb shell cat /proc/net/unix | grep webview

webview测试用例

  • 不需要css定位:直接使用accessibility-id或者xpath定位就可以直接定位到
  • 需要css定位以及其他的js执行功能:contexts api
# switch to webview
webview = driver.contexts.last
driver.switch_to.context(webview)

# do some webby stuff
driver.find_element(:css, ".green_button").click

# switch back to native view
driver.switch_to.context(driver.contexts.first)

# do more native testing if we want
driver.quit()

webview技术原理

使用chrome62调试Android webview

其他

网易momo不支持webview
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/m0_37518413/article/details/106983764