appium 入門

Appium 是一個開源的跨平臺測試自動化工具,適用於本機,混合和移動 Web 應用程式,在模擬器(iOS, FirefoxOS),模擬器(Android)和真實裝置(iOS, Android, FirefoxOS)上進行測試。

為什麼選擇 Appium?

  1. 由於在所有平臺上使用標準自動化 API,你無需以任何方式重新編譯應用程式或對其進行修改。
  2. 由於在所有平臺上使用標準自動化 API,你無需以任何方式重新編譯應用程式或對其進行修改。你可以使用任何與 WebDriver 相容的語言(例如 JavaObjective-C ,帶有 Node.js 的 JavaScript( 承諾,回撥生成器風格),PHP, PythonRubyC# ,Clojure 或 Perl ) 使用你喜歡的開發工具編寫測試。使用 Selenium WebDriver API 和特定於語言的客戶端庫。
  3. 你可以使用任何測試框架。

投資 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 的平臺。