Appium兼容性問題


 

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閃退,圖下圖

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM