工作階段設定
Appium 有一組擴充 API,讓您可以在特定工作階段中調整給定工作階段的參數。這些參數稱為「設定」,類似於 功能,但功能一旦工作階段開始後無法調整,而設定可以在工作階段過程中調整任意次數。
設定概念有 3 個重點
- 設定是可變的;可以在工作階段中使用設定 API 進行變更
- 設定僅與設定的工作階段相關。通常會針對每個新工作階段重設,但根據驅動程式,有些設定可能會在工作階段之間持續存在
- 設定僅調整 Appium 伺服器在測試自動化期間的行為。不會影響測試中的裝置或應用程式
設定範例為 UiAutomator2 驅動程式辨識的 ignoreUnimportantViews
設定。可以指示驅動程式忽略它認為不相關的檢視階層中的元素。將此設定變更為 true
可以讓測試執行得更快。但如果稍後在同一個工作階段中想要存取會受此設定忽略的元素,您隨時可以將它變更回 false
。
設定透過下列 API 端點實作
指令 | 方法/路徑 |
參數 | 說明 | 傳回 |
---|---|---|---|---|
更新設定 |
POST /session/:id/appium/settings |
settings (Record<string, any> ) |
更新提供的設定值 | null |
取得設定 |
GET /session/:id/appium/settings |
傳回目前的設定 | settings (Record<string, any> ) |
settings
物件必須是一組金鑰和值,其中金鑰是設定名稱,而值是該設定的任何文件化有效值。
資訊
設定是驅動程式特定的,因此請參閱驅動程式的文件以取得支援設定的清單
透過功能初始化設定¶
如果您想以非預設狀態的設定啟動 Appium 會話,您可以透過包含適當值的 appium:settings[<name>]
形式的功能來執行此操作。因此,要從會話一開始就開啟上面提到的 ignoreUnimportantViews
設定,您會建構一組功能,其中包含下列 JSON 表示
此外,從 Appium 2.1 開始,可以在單一 appium:settings
功能值中提供多個設定
當然,透過功能初始化設定並不會阻止您稍後透過設定 API 變更設定。若要深入了解如何在特定用戶端程式庫中使用設定 API,請參閱該用戶端的說明文件。