最近需要做微信公眾號的自動化測試,遇到了不少坑。
微信公眾號自動化與app自動化還是有區別的,因為多了不少坑。打開微信x5內核調試的就不說了,百度有。
1、首先,微信公眾號有webview,uiautomatorviewer定位不了webview,代碼也切換不了webview。
貼個事發主要自動化代碼(這段基本不用動):
解決方法第一個必要條件:chromeoptions
我第一個弄完還是無法切換webview,而appium報錯日志:
error: Chromedriver: Error: A new session could not be created. (Original error: session not created exception: Chrome version must be >= 65.0.3325.0
所以有第二個條件:chromedriver版本與chrome版本需對應:具體參考:https://www.cnblogs.com/csj2018/p/9186101.html
注意注意注意!這里的chrome版本是指WebView in com.tencent.mm的版本,很多人(包括我)認為chrome是手機chrome或pc端chrome的版本!!!從而一直調試失敗!!
那WebView in com.tencent.mm的版本要看哪里?
打開手機的webview后,進入chrome://inspect, 紅框位置即是所需要的版本號!!
所以選擇chromedriver v2.29
替換后chromedriver后,再跑一遍,終於成功切換webview了。
2、接下來,另一個大坑,就是webview里面元素的定位,肯定都用chrome里的inspect定位元素,但打開inspect 回顯404或打開空白。
這個我覺得挺無解的,好像全網只有一個方法,就是去大神那10塊錢買個離線包即可解決!什么翻牆是沒用的!!
傳送門:https://www.cnblogs.com/slmk/p/7591126.html
反正我是解決了。
接下來定位就跟web端的一樣了。
附:新版本的adb.1.0.40下載(比較難找)
傳送門:https://www.cnblogs.com/we-hjb/p/6416274.html
繼續跟進appium微信自動化的坑~~