今天我們學習如何使用Appium Inspector來建立測試指令碼。
啟動Appium服務:
- 插上Android手機到電腦,確認使用adb devices可正確顯示;
- 開啟Appium Server GUI,如下圖保持Address和Port為預設值;
- 如果不想使用上篇文章中配置的JAVA_HOME和ANDROID_HOME,可點選Edit Configuration修改;
- 點選Start Server按鈕,啟動服務並進入以下介面;
- 開啟Appium Inspector,進入如下主頁面。Appiumn也提供了一個Web版的Inspector,可用Chrome訪問這裡。;
- 按圖示分別在Host、Port和Path文字框中,輸入127.0.0.1、4723和/wd/hub;
- 在Desired Capabilities(期望能力)中,增加一行platform為Android。如需更多能力條件去篩選手機,可參考這裡輸入更多內容;
- 點選Start Session按鈕,可成功連線到Server端控制的指定能力的手機;
- 圖中頂部為工具欄,主介面分為3列,分別為手機螢幕、App原始檔和所選控制元件的描述。
錄製測試指令碼:
從這裡下載測試Android安裝包到本地,執行以下命令進行安裝;
adb install eyes-android-hello-world.apk
- 點選頂部工具欄中的Start Recording按鈕(眼睛形狀的圖示),開始錄製指令碼;
- 在Appium Inspector左側手機桌面中,選中剛才安裝的App圖示,在右側點選Tap按鈕;
- 手機開啟App視窗,進入以下介面,右上區域顯示了為剛才點選操作自動生成的指令碼;
- 在上圖中,選中第一個多選框所在的行,再次在右側點選Tap按鈕;
- 第一個多選框被選中,右上新增一行指令碼;
- 在上圖中,選中CLICK ME!圖片按鈕,再次在右側點選Tap按鈕;
- 頁面中顯示一個圖片,右上新增一行指令碼;
- 點選頂部工具欄中的暫停按鈕,停止錄製;
- 右上下拉選單中選擇Java-JUnit,讓後點選Copy code to clipboard按鈕複製程式碼;
得到以下Java形式的Appium自動化測試指令碼,這裡我們加入註釋對步驟做簡單說明。
// 使用XPath選擇器,查詢App桌面圖示。 MobileElement el1 = (MobileElement) driver.findElementByXPath("//android.widget.ImageView[@content-desc=\"ApplitoolsHelloWorld\"]"); // 點選圖示,啟動App。 el1.click(); // 使用Id選擇器,查詢指定的控制元件。 MobileElement el2 = (MobileElement) driver.findElementById("com.applitools.helloworld.android:id/random_number_check_box"); // 點選控制元件 el2.click(); // 使用Id選擇器,查詢指定的控制元件。 MobileElement el3 = (MobileElement) driver.findElementById("com.applitools.helloworld.android:id/click_me_btn"); // 點選控制元件 el3.click();
下一篇文章中,我們將學習如何把錄製的指令碼包裝成Java測試類,實現完整的自動化測試。