appium教程教程(一)

Mr_旺先生發表於2020-12-09

appium教程教程(一)

appium的介紹

  1. Appium是一個開源工具,您可以使用它在iOS和Android平臺上自動化移動本地、移動web和移動混合應用程式。“移動原生應用”是指那些使用iOS或Android
    sdk編寫的應用。“行動網路應用”是通過移動瀏覽器訪問的網路應用(Appium支援iOS上的Safari和Android上的Chrome)。“移動混合應用程式”在“webview”周圍有一個本地的包裝器,它是一個本地控制元件,可以與web內容進行互動。例如,像Phonegap這樣的專案可以很容易地使用web技術構建應用程式,然後將這些應用程式繫結到一個本地包裝器中——這些都是混合應用程式。
    重要的是,Appium是“跨平臺的”:它允許您使用相同的API編寫針對多個平臺(iOS、Android)的測試。這使得iOS和Android測試套件之間能夠實現大量或全部的程式碼重用。

我們可以從上面的介紹裡獲得這樣的一些資訊:

  1. 1,appium是開源的移動端自動化測試框架;
  2. 2,appium可以測試原生的、混合的、以及移動端的web專案;
    3,appium可以測試ios,android應用(當然了,還有firefox os);
    4,appium是跨平臺的,可以用在osx,windows以及linux桌面系統上;

鴉片哲學

Appium根據以下四個原則概述的理念來滿足移動自動化需求:

  • 1,您無需重新編譯或以任何方式對其進行修改即可使其自動化。
    2,您不應該被鎖定在特定的語言或框架中來編寫和執行測試。
    3,當涉及到自動化API時,移動自動化框架不應重新發明輪子。
    4,移動端自動化測試都是是開源的;

Appium設計

那麼,Appium專案的結構如何體現這一理念?我們通過使用內部提供的供應商提供的自動化框架來滿足要求#1。這樣,我們無需在您的應用程式中使用任何特定於Appium或第三方的程式碼或框架進行編譯。這意味著您正在測試要交付的同一應用程式。我們使用的供應商提供的框架是:

iOS 9.3及更高版本:Apple的XCUITest
iOS 9.3及更低版本:Apple的UIAutomation
Android 4.3以上版本:Google的UiAutomator / UiAutomator2
Windows:Microsoft的WinAppDriver
通過將供應商提供的框架包裝在一個API(WebDriver API)中,我們滿足了第二個要求。WebDriver(又名“ Selenium WebDriver”)指定客戶端-伺服器協議(稱為JSON Wire Protocol)。給定這種客戶端-伺服器體系結構,可以使用以任何語言編寫的客戶端將適當的HTTP請求傳送到伺服器。已經有使用每種流行程式語言編寫的客戶端。這也意味著您可以自由使用所需的任何測試執行器和測試框架。客戶端庫只是HTTP客戶端,可以根據需要將其混合到您的程式碼中。換句話說,Appium&WebDriver客戶端在技術上不是“測試框架”,而是“自動化庫”。您可以按照自己喜歡的任何方式管理測試環境!

我們以相同的方式滿足要求:WebDriver已成為自動化Web瀏覽器的事實上的標準,並且是W3C工作草案。為什麼移動裝置完全不同?相反,我們已 使用對移動自動化有用的額外API方法擴充套件了該協議。

很明顯,要求是給定的-您正在閱讀此書,因為Appium是開源的。

相關文章