Appium自动化测试之微信h5元素识别和代码实战
引子
总会有人问微信的自动化测试怎么做。其实我不太明白,为啥你要对ta做自动化测试啊,除非你们公司产品是基于微信做的开发否则没必要。即使一个公众号我也觉得没必要做自动化测试,基本功能点下没问题就可以了,毕竟都是配置的,除非你后台配置错了。(有时候真搞不懂这胡乱的测试,你咋不把整个微信都测一遍啊)
微信的本质
微信其实就是一个混合的app,客户端里嵌入的webview,明白这个就好说了。大家一定要注意,app中的native可以用uiaotumator来查看元素,但webview里的ta是不行的可以使用chrome来查看,这个是很多初学者不明白的地方。
如何查看微信webview中的元素
几个前提:
1、手机打开【开发者模式】
2、app必须是debug模式(别问我怎么弄,自己问开发去)
3、手机通过USB连接电脑,且能够识别出来手机(不会的自己google去。。。)
4、可以*12345678910111213141516171819202122232425262728293031323334353637fromappiumimportwebdriverimporttime#QQ群522720170desired_caps={}desired_caps={'platformName':'Android','platformVersion':'23','deviceName':'AndroidEmulator','unicodeKeyboard':'True','resetKeyboard':'True','appPackage':'com.tencent.mm','appActivity':'com.tencent.mm.ui.LauncherUI','chromeOptions':{'androidProcess':'com.tencent.mm:tools'}}driver=webdriver.Remote('http://127.0.0.1:4723/wd/hub',desired_caps)time.sleep(10)driver.find_element('name','发现').click()time.sleep(10)driver.find_element('name',"看一看").click()time.sleep(10)#获取当前上下文c=driver.contextsprint(c)#输出结果['NATIVE_APP','WEBVIEW_com.tencent.mm:tools']#切换为webview,名称就是从上面的语句得来的driver.switch_to.context('WEBVIEW_com.tencent.mm:tools')#获取h4标签的文本并打印出来titles=driver.find_elements('tagname','h4')print(titles[2].text)
至此就全部搞定了,是不是很简单?
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。