Appium-Python-Windows環境搭建筆記


 

Appium版本:1.11.0

操作系統:Windows7-64位

開發語言:Python 3.7.2

測試應用平台:安卓 5.1.1


 

Appium服務端

一、JDK

也許你會覺得很奇怪,我搭建Python的Appium,關JDK或者JAVA什么事。這是因為,安卓系統依賴JAVA環境,所以這項是必需的。

1.1 推薦版本:JAVA SE 8u201

1.2 下載地址:https://www.oracle.com/technetwork/cn/java/javase/downloads/index.html

1.3 下載方法:

1.3.1打開下載地址后,點擊下載頁面的入口,如下圖所示。

1.3.2 JDK的下載界面如下圖所示。點擊“Accept License Agreement”同意證書許可。

1.3.3 根據自己的操作系統情況選擇對應的安裝包。樓主的是64位的Windows,所以選擇如下:

 

 

1.4 安裝方法:

1.4.1 安裝JDK的操作比較簡單,啟動安裝程序后,一律點擊“下一步”即可,直至出現下圖則表示安裝完畢。

 

1.4.2 驗證安裝是否成功:打開cmd命令窗口,輸入"java -version",檢查是否正常顯示java版本信息。成功安裝的回顯信息如下圖:

C:\Users\Administrator>java -version
java version "1.8.0_201"
Java(TM) SE Runtime Environment (build 1.8.0_201-b09)
Java HotSpot(TM) 64-Bit Server VM (build 25.201-b09, mixed mode) 

 

1.4.2 配置JAVA的環境變量

作用:通俗的講,配置了環境變量就好比告訴了計算機你的程序在哪個目錄,以后我不管在哪個目錄使用指令調用該程序都得照辦。

配置方法:

1.4.2.1 在桌面的“計算機”上點擊右鍵,選擇“屬性”菜單。

 

1.4.2.2 彈出如下窗口

 

1.4.2.3 在底部“系統變量”欄目中,點擊“新建(w)”按鈕,新建一個名為“JAVA_HOME”的系統變量,值為jdk的安裝根目錄。例如,默認的安裝目錄是“C:\Program Files\Java\jdk1.8.0_201”。然后點擊“確定”。

 

1.4.2.4 在系統變量欄目中找到一項名為“Path”的變量進行選中,點擊“編輯”按鈕。然后在變量值末尾追加“;%JAVA_HOME%\bin”。切記,兩個變量值之間一定要以英文半角的分號相隔。最后點擊“確定”按鈕。

至此,JDK的安裝就完成了。

 

二、安卓SDK

推薦版本:android-sdk_r24.4.1

2.1 下載方法:

下載地址:http://www.android-studio.org/

下載可執行的EXE程序,或者打包好的安裝包,兩種方式都可以。以下以ZIP格式的解壓包方式為例。

 

2.2 啟動 SDK Manager ,下載測試設備所對應版本的安卓系統API。

 

分別勾選所需要的組件,以下是樓主推薦方案,具體可根據個人需要進行選擇。

 

選擇所需的安裝項后,點擊“install XX packages”,其中XX代表已經勾選的項目數量。在選擇安裝的界面,一律勾選“Accept License”選項。最后點擊“install”執行安裝。

備注:因為都是聯網安裝,過程有點小漫長,請自備啤酒香煙花生礦泉水。如果因為網絡原因出現某些子項安裝失敗的,可以多嘗試幾次。如果仍舊不行,請嘗試科學上網。

 

 2.3 配置SDK的環境變量

大體步驟和上文中的配置JDK的環境變量類似,這里就不再一一贅述,只說明下需要配置的參數。

2.3.1 首先,確定sdk的根目錄。如下圖所示,則根目錄為“D:\SDK\android-sdk-windows”。其中有兩個非常重要的目錄,分別是tools和platform-tools.

2.3.2 在“環境變量”操作面板中,新建一個名為“ANDROID_HOME”的變量,值為SDK的根目錄。如下圖所示。

 

2.3.3 編輯系統變量Path項的值,在末尾追加兩個新值,分別是“%ANDROID_HOME%\tools”和“%ANDROID_HOME%\platform-tools”。編輯完畢后點擊“確定”。

 

2.3.4 驗證安卓SDK環境。打開cmd命令窗口,輸入 adb version 指令,如果打印了下圖信息則表示環境變量配置成功。

C:\Users\Administrator>adb version
Android Debug Bridge version 1.0.40
Version 4986621
Installed as D:\SDK\android-sdk-windows\platform-tools\adb.exe

 

三、Node.js

用來提供Appium服務端所依賴的運行環境,因為畢竟Appium服務端就是用node.js編寫的,沒它玩不轉。

3.1 當前版本:V10.15.3

3.2 官網下載地址:https://nodejs.org/zh-cn/

3.3 安裝方法:一路點“next”,遇到“accept”點了即可。

 

3.4 安裝完畢后,需要把node.exe程序所在的目錄添加到系統環境變量,操作步驟參見JDK和SDK的配置方法。簡而言之,找到node.exe程序所在目錄,例如在“D:\Programs\NodeJS”,那么添加系統變量“NODE_HOME”,值為“D:\Programs\NodeJS”,然后在系統變量Path的值末尾追加“%NODE_HOME%”即可。

 

3.5 檢查環境配置是否成功。在電腦任意目錄打開cmd,輸入 node -v 指令,如果打印以下結果則表示程序安裝OK,且環境變量配置成功。

C:\Users\Administrator>node -v
v10.15.3

 

四、Appium-Sever

Github工程地址:https://github.com/appium/appium-desktop/releases

4.1 安裝方法

第一種:使用npm命令行安裝(推薦)

打開cmd命令窗口,輸入指令 npm install -g appium ,等待安裝結束即可。輸入指令 appium -v ,如果打印如下結果則表示appium-server服務端安裝成功。

C:\Users\Administrator>appium -v
1.11.1

備注:建議使用此方式進行服務端程序的安裝,比較利於后期配合持續集成。

 

第二種:下載Appium-desktop桌面應用。

可以在Github工程中找到安裝包,下載啟動即可。

 

桌面應用啟動后的界面如下。

 

 

4.2 檢查當前系統的Appium環境依賴是否都已齊備

使用appium-doctor程序,可以快速全面檢測當前系統中所依賴資源的安裝情況,一目了然。

4.2.1 安裝appium-doctor

打開cmd命令窗口,執行npm安裝指令: npm install –g appium-doctor 即可。運行結果如下:

C:\Users\Administrator>npm install -g appium-doctor
C:\Users\Administrator\AppData\Roaming\npm\appium-doctor -> C:\Users\Administrat
or\AppData\Roaming\npm\node_modules\appium-doctor\appium-doctor.js
+ appium-doctor@1.9.0
added 319 packages from 279 contributors in 181.051s
                          

 

4.2.2 運行appium-doctor

在cmd命令窗口中輸入指令: appium-doctor ,如果打印如下結果“info AppiumDoctor ### Diagnostic for necessary dependencies completed, no fix needed”(第16行)則表明Appium服務端的依賴環境已安裝齊全。

 1 C:\Users\Administrator>appium-doctor
 2 info AppiumDoctor Appium Doctor v.1.9.0
 3 info AppiumDoctor ### Diagnostic for necessary dependencies starting ###
 4 info AppiumDoctor  ✔ The Node.js binary was found at: D:\Programs\NodeJS\node.E
 5 XE
 6 info AppiumDoctor  ✔ Node version is 10.15.3
 7 info AppiumDoctor  ✔ ANDROID_HOME is set to: D:\SDK\android-sdk-windows
 8 info AppiumDoctor  ✔ JAVA_HOME is set to: C:\Program Files\Java\jdk1.8.0_201
 9 info AppiumDoctor  ✔ adb exists at: D:\SDK\android-sdk-windows\platform-tools\a
10 db.exe
11 info AppiumDoctor  ✔ android exists at: D:\SDK\android-sdk-windows\tools\androi
12 d.bat
13 info AppiumDoctor  ✔ emulator exists at: D:\SDK\android-sdk-windows\tools\emula
14 tor.exe
15 info AppiumDoctor  ✔ Bin directory of %JAVA_HOME% is set
16 info AppiumDoctor ### Diagnostic for necessary dependencies completed, no fix ne
17 eded. ###
18 info AppiumDoctor
19 info AppiumDoctor ### Diagnostic for optional dependencies starting ###
20 WARN AppiumDoctor  ✖ Python required by node-gyp (used by heapdump) not found i
21 n PATH: C:\Program Files (x86)\Common Files\Oracle\Java\javapath;C:\windows\syst
22 em32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v
23 1.0\;C:\Program Files\Java\jdk1.8.0_201\bin;D:\SDK\android-sdk-windows\tools;D:\
24 SDK\android-sdk-windows\platform-tools;D:\Programs\NodeJS;C:\Users\Administrator
25 \AppData\Roaming\npm
26 WARN AppiumDoctor  ✖ opencv4nodejs cannot be found.
27 WARN AppiumDoctor  ✖ ffmpeg cannot be found
28 WARN AppiumDoctor  ✖ bundletool.jar cannot be found
29 info AppiumDoctor ### Diagnostic for optional dependencies completed, 4 fixes po
30 ssible. ###
31 info AppiumDoctor
32 info AppiumDoctor ### Optional Manual Fixes ###
33 info AppiumDoctor The configuration can install optionally. Please do the follow
34 ing manually:
35 WARN AppiumDoctor  ➜ Manually configure Python 2.x environment. node-gyp which
36 is NodeJS toolchain requires Python 2.x
37 WARN AppiumDoctor  ➜ Why opencv4nodejs is needed and how to install it: https:/
38 /github.com/appium/appium/blob/master/docs/en/writing-running-appium/image-compa
39 rison.md
40 WARN AppiumDoctor  ➜ ffmpeg is needed to record screen features. Please read ht
41 tps://www.ffmpeg.org/ to install it
42 WARN AppiumDoctor  ➜ bundletool.jar is used to handle Android App Bundle. Pleas
43 e read http://appium.io/docs/en/writing-running-appium/android/android-appbundle
44 / to install it
45 info AppiumDoctor
46 info AppiumDoctor ###
47 info AppiumDoctor
48 info AppiumDoctor Bye! Run appium-doctor again when all manual fixes have been a
49 pplied!
50 info AppiumDoctor

 


 

Appium客戶端

五、Python

5.1 當前版本:V3.7.2

5.2 官網下載地址:https://www.python.org/

5.3 安裝方法:啟動安裝程序,注意把Python添加到環境變量的選項勾選,建議自定義安裝路徑(默認的安裝路徑太深,后期找目錄不方便),其他按默認配置一步步確認即可。

 

5.4 檢查安裝是否成功。

打開cmd命令窗口,輸入指令: python ,如果成功安裝則會打印如下信息:

C:\Users\Administrator>python
Python 3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 23:09:28) [MSC v.1916 64 bit
(AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

 

六、Appium-Python-Client

6.1 當前版本:

6.2 安裝方法:在cmd命令窗口中執行pip命令即可: pip install Appium-Python-Client 

6.3 檢查安裝情況:如果打印結果中顯示“Successfully installed Appium-Python-Client-0.39”則表明安裝成功。

 

七、Pycharm

適合編輯Python腳本的IDE工具有很多,蘿卜白菜各有所愛。樓主個人覺得Pycharm的community社區版基本夠用了。

7.1 當前版本:pycharm-community-2018.3.5

7.2 官網下載地址:http://www.jetbrains.com/pycharm/download/#section=windows

7.3 安裝方法:可以佛系,啟動安裝程序后,一路點下一步即可。

 

八、設備

優先使用真機。

如果確實找不到合適的安卓手機作為測試機器的話,也可以使用安卓模擬器,一般夜神或者逍遙的比較常用一點。個人推薦使用逍遙,因為據說某神對webview不支持(測試混合APP中的H5頁面需要用到),具體樓主尚未嘗試,此項有待考證。

  • 夜神模擬器下載地址:https://www.yeshen.com/
  • 逍遙模擬器下載地址:http://www.xyaz.cn/

8.1 模擬器的簡單使用

8.1.1 開啟USB調試

開啟模擬器后,在跑腳本之前,一定要先開啟USB調試。

 

8.2.2 檢查設備連接情況

打開cmd命令窗口,輸入指令: adb devices ,設備成功連接的打印信息如下:

C:\Users\Administrator>adb devices
List of devices attached
127.0.0.1:21503 device

其中,“127.0.0.1:21503”為設備的udid編號,“device”表示設備狀態是已連接。如果設備列表為空,或者設備狀態是“offline”,則是連接失敗的情況,需要具體排查產生的原因。

 8.3.3 模擬器常見的設備連接失敗的處理方法

如果在設備連接過程中,確定設備已經開啟USB調試且正確連接到PC,但是仍舊使用adb devices指令查到設備列表為空,則有可能是已安裝的安卓SDK中的adb程序版本和模擬器自帶的adb程序版本不一致導致的。

解決辦法可能有很多種,這里暫介紹樓主親測實用的方案:

第一步:關閉正在運行的的模擬器

第二步:替換adb.exe程序。

逍遙模擬器:進入安裝目錄(默認為..\Microvirt\MEmu),找到adb.exe文件,執行刪除。然后進入SDK的安裝目錄(默認為..\android-sdk-windows\platform-tools),拷貝系統adb.exe到逍遙的原目錄即可。

夜神模擬器:進入安裝目錄,找到nox_adb.exe文件,執行刪除。然后進入SDK的安裝目錄(默認為..\android-sdk-windows\platform-tools),拷貝系統adb.exe到逍遙的原目錄,重命名為“nox_adb.exe”即可。

第三步:啟動模擬器。啟動完畢后,打開cmd命令窗口輸入 adb devices 再次檢查設備連接情況,一般就能正常看到已連接的虛擬設備信息了。

 

 

至此,可喜可賀,Appium大門已經向你敞開啦,可以愉快地玩耍啦~~~

 


 

本篇旨在提供入門級的小白指引,更多高階玩法敬請各位看官細細把玩~~~

本人不才,才疏學淺。還望海涵,懇請指正。

 


免責聲明!

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



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