appium 入門
Appium 是一個開源的跨平臺測試自動化工具,適用於本機,混合和移動 Web 應用程式,在模擬器(iOS, FirefoxOS),模擬器(Android)和真實裝置(iOS, Android, FirefoxOS)上進行測試。
為什麼選擇 Appium?
- 由於在所有平臺上使用標準自動化 API,你無需以任何方式重新編譯應用程式或對其進行修改。
- 由於在所有平臺上使用標準自動化 API,你無需以任何方式重新編譯應用程式或對其進行修改。你可以使用任何與 WebDriver 相容的語言(例如 Java , Objective-C ,帶有 Node.js 的 JavaScript( 承諾,回撥或生成器風格),PHP, Python , Ruby , C# ,Clojure 或 Perl ) 使用你喜歡的開發工具編寫測試。使用 Selenium WebDriver API 和特定於語言的客戶端庫。
- 你可以使用任何測試框架。
投資 WebDriver 協議意味著你打算採用單一,免費且開放的測試協議,這已成為事實上的標準。不要將自己鎖定在專有堆疊中。
如果你在沒有 Appium 的情況下使用 Apple 的 UIAutomation 庫,你只能使用 JavaScript 編寫測試,並且你只能通過 Instruments 應用程式執行測試。同樣,使用 Google 的 UiAutomator,你只能用 Java 編寫測試。Appium 開闢了真正的跨平臺原生移動自動化的可能性。
這個怎麼運作
Appium 驅動各種原生自動化框架,並提供基於 Selenium 的 WebDriver JSON 有線協議的 API。
Appium 推出 Apple 的 UIAutomation 庫,用於 iOS 10 之前的版本,該版本基於 Dan Cuellar 在 iOS Auto 上的工作。隨著 UIAutomation 庫的棄用,所有 iOS 10 和未來版本都由 XCUITest 框架驅動。
Android 支援使用 UiAutomator 框架用於較新的平臺,而 Selendroid 用於較舊的 Android 平臺。
FirefoxOS 支援利用 Marionette ,這是一個與 WebDriver 相容的自動化驅動程式,用於自動化基於 Gecko 的平臺。