Appium兼容性問題
1、如何讓android模擬器上網
上網google的方法都試過了,還是不能讓模擬器聯網。可能是我的操作問題吧。不知道哪位朋友能稍微詳細的給我演示一下如何操作的。感激不盡。
我有更好的答案
推薦於2017-09-03 11:48:27 最佳答案
很多網友也問到為啥自己在家的PC機可以上網,而運行在PC機上面的android模擬器卻不能上網呢?是因為家里的PC機的DNS一般為:192.168.1.1,這個只是一般而言,不是絕對,這個得自己使用ipconfig /all命令檢查下;而模擬器默認的DNS為:10.0.2.3,那么模擬器跟自己的PC就不在同一個網段了,使用就導致自己的PC機可以上網,而模擬器不能上網,下面就簡單介紹下如何設置才能讓模擬器也可以上網:
首先,如果沒有配置sdk的環境變量的,那么在CMD命令下進入sdk安裝路徑的tools目錄下,然后使用adb shell命令 ,如果配置了sdk的環境變量的,那么直接在CMD窗口中輸入adb shell,如:C:\Documents and Settings\Administrator>adb shell
然后輸入:getprop 查看系統當前的各項屬性,得到模擬器的DNS地址,如下:
[net.dns1]: [10.0.2.3]
下面就是使用setprop命令把模擬器的DNS改為自己PC的DNS,例如:192.168.1.1
setprop net.dns1 192.168.1.1
設置完畢,回車生效,那么現在模擬器可以上外網了,就是這么簡單!
注意:這些配置是在模擬器在運行的情況下才可以
D:
Cd D:\android-sdk-windows\tools
adb shell
Getprop------查看模擬器DNS服務器地址
setprop net.dns1 192.168.1.1 設置擬器DNS服務器地址
getprop
adb shell dumpsys window | findstr mCurrentFocus
通過命令獲取:adb shell dumpsys window w |findstr \/ |findstr name=(這條命令的作用是,獲取當前app和當前Activity的名字,我現在手機已經打開了計算器應用)如圖:
補充:使用adb shell dumpsys window | findstr mCurrentFocus 命令查看當前運行的包名和Activity更清晰一些。
2、eclipse連接夜神模擬器,在夜神中裝這個apk
THEME 需默認的,不用改
2、Adb命令
補充:使用adb shell dumpsys window | findstr mCurrentFocus 命令查看當前運行的包名和Activity更清晰一些。
給模擬器安裝APK
Adb install D:\User\Desktop\1111111111\com.miaotong.live.calculator_102.apk
3、自動模擬器配置appium配置
4、夜神模擬器appium配置
5、pycharm逐步調試
6、webview第二次切換問題:
首先要有driver.quit()
WebDriverException: Message: chrome not reachable
(Session info: chrome=64.0.3282.137)
(Driver info: chromedriver=2.37.544315 (730aa6a5fdba159ac9f4c1e8cbc59bf1b5ce12b7),platform=Windows NT 6.1.7601 SP1 x86_64)
來源百度文檔:https://www.cnblogs.com/JcHome/p/9429717.html
原因為:Appium第一次切換到Html頁面時,會新生成一個Chromedriver;當第二次切換到Html時,會使用已經存在的Chromedriver。
解決方式:
找到Appium\Appium\node_modules\appium\lib\devices\android目錄下的android-hybrid.js文件,但是我用的是Appium-desktop,需要該類文件,android-hybrid.js中發現失敗此處有提示:'Found existing Chromedriver for context' ,於是在C:\Users\User_2\AppData\Local\Programs\appium-desktop文件下所有這個代碼,發現兩處有此代碼,如下圖:
就是改此函數
1、如下圖百度中類似,對上圖進行修改,上圖目錄lib,:C:\Users\User_2\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-android-driver\lib\commands\context.js,(appium-desktop中都是js文件,一般都兩處,對應另一處文件:build, C:\Users\User_2\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-android-driver\build\lib\commands)
2/lib修改如下,:C:\Users\User_2\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-android-driver\lib\commands\context.js,
3、build修改如下, C:\Users\User_2\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-android-driver\build\lib\commands
同樣也是:helpers.startChromedriverProxy, 這個函數
將case11中內容移到case3, 原case3內容注釋
注意保存,appium-desktop中此問題解決。
7、appium-desktop的驅動問題
appium-chromedriver路徑:
C:\Users\User_2\AppData\Local\Programs\appium-desktop\resources\app\node_modules\appium\node_modules\appium-chromedriver\chromedriver\win
appium-desktop1.80以后的版本,該路徑下可以自動識別可用版本驅動。
appium-desktop1.80以前的版本,驅動如果出現不適用的情況,優先用原生驅動試試
8、多機並發問題
9、多機運行問題
10、測試報告插入圖片問題
11、32位python,內存溢出問題
12、Python離線安裝包
第一種:不推薦
D:\Python27\Scripts\pip.exe install pywin32-223-cp27-cp27m-win_amd64.whl
安裝成功后,再次打包,如報編碼問題,將文件名改成字母數字就可以了。
d:
cd D:\pypackages\dist\xlrd-0.9.4
python setup.py install
第二種:pip
D:
Cd D:\python1\Scripts
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple Appium-Python-Client
清華鏡像庫
升級requests
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple --upgrade requests
13、appium-server
Appium-server崩潰問題
1、沒有殺死或重啟adb時,appium-server在運行兩小時后,崩潰
原因:adb長期運行時,容易出現卡死、閃退等不穩定情況,adb不穩定,會導致appium-server閃退或卡死
2、每次用例結束后,殺死adb進程,appium-server長期運行,正常
3、手機應用出現崩潰時,也可能導致appium-server還在運行中,突然結束adb進程,導致appium-server閃退,圖下圖