撰寫測試 (JS)
若要在 JavaScript (Node.js) 中撰寫 Appium 測試,我們需要選擇一個與 Appium 相容的用戶端程式庫。維護得最好的程式庫,也是 Appium 團隊建議使用的,是 WebdriverIO,因此我們使用它。由於我們已經安裝 Appium,我們知道我們的 Node 和 NPM 需求已經滿足。因此,只要在電腦上的某個地方建立一個新的專案目錄,然後在其中初始化一個新的 Node.js 專案
提示中輸入的內容並不重要,只要最後得到一個有效的 package.json
即可。
現在,透過 NPM 安裝 webdriverio
套件
完成後,你的 package.json
檔案應包含類似下列的區段
現在是時候輸入測試本身了。建立一個名為 test.js
的新檔案,內容如下
test.js
const {remote} = require('webdriverio');
const capabilities = {
platformName: 'Android',
'appium:automationName': 'UiAutomator2',
'appium:deviceName': 'Android',
'appium:appPackage': 'com.android.settings',
'appium:appActivity': '.Settings',
};
const wdOpts = {
hostname: process.env.APPIUM_HOST || 'localhost',
port: parseInt(process.env.APPIUM_PORT, 10) || 4723,
logLevel: 'info',
capabilities,
};
async function runTest() {
const driver = await remote(wdOpts);
try {
const batteryItem = await driver.$('//*[@text="Battery"]');
await batteryItem.click();
} finally {
await driver.pause(1000);
await driver.deleteSession();
}
}
runTest().catch(console.error);
注意
本指南的範圍不包括對 WebdriverIO 用戶端程式庫或這裡發生的一切進行完整的說明,因此我們現在將暫時不詳細說明程式碼本身。你可能需要特別閱讀 Appium 功能,以及熟悉優秀的 WebdriverIO 文件,以更全面地了解你看到的各種 API 命令及其用途。
注意
範例程式碼可從 GitHub Appium 存放庫 取得。
基本上,此程式碼執行下列動作
- 定義一組「功能」(參數)傳送至 Appium 伺服器,以便 Appium 知道你想要自動化哪種類型的東西。
- 在內建的 Android 設定應用程式上啟動 Appium 會話。
- 尋找「電池」清單項目並按一下它。
- 暫停片刻,純粹為了視覺效果。
- 結束 Appium 會話。
就是這樣!讓我們試試看。在執行測試之前,請確保你在另一個終端機會話中執行 Appium 伺服器,否則你會收到無法連線的錯誤訊息。然後,你可以執行指令碼
如果一切順利,你會看到設定應用程式開啟並導覽至「電池」檢視,然後應用程式再關閉。
恭喜你,你已經開始你的 Appium 之旅!繼續閱讀一些 後續步驟 以探索。