appium教程教程(一)
appium教程教程(一)
appium的介紹
- Appium是一個開源工具,您可以使用它在iOS和Android平臺上自動化移動本地、移動web和移動混合應用程式。“移動原生應用”是指那些使用iOS或Android
sdk編寫的應用。“行動網路應用”是通過移動瀏覽器訪問的網路應用(Appium支援iOS上的Safari和Android上的Chrome)。“移動混合應用程式”在“webview”周圍有一個本地的包裝器,它是一個本地控制元件,可以與web內容進行互動。例如,像Phonegap這樣的專案可以很容易地使用web技術構建應用程式,然後將這些應用程式繫結到一個本地包裝器中——這些都是混合應用程式。
重要的是,Appium是“跨平臺的”:它允許您使用相同的API編寫針對多個平臺(iOS、Android)的測試。這使得iOS和Android測試套件之間能夠實現大量或全部的程式碼重用。
我們可以從上面的介紹裡獲得這樣的一些資訊:
- 1,appium是開源的移動端自動化測試框架;
- 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是開源的。
相關文章
- Kafka教程(一)Kafka入門教程Kafka
- webpack教程(一)Web
- elasticsearch教程一Elasticsearch
- Seastar 教程(一)AST
- git 教程一Git
- Tensorflow教程(一)
- MongoTemplate 教程系列(一)Go
- [教程]一份簡單易懂的 TensorFlow 教程
- iOS自動化測試工具Appium在mac上安裝和使用教程iOSAPPMac
- OSSEC 學習教程一
- Tensorflow教程(前一)
- cmake使用教程(一)-起步
- Scala入門教程 (一)
- 一些動畫教程動畫
- Python Flask教程(一)PythonFlask
- ECMAScript6 教程(一)
- ollyDbg教程之一
- NSIS 入門教程 (一)
- winscp教程,winscp教程,使用教程
- vuex 漸進式教程(一)Vue
- python教程(一)·簡介Python
- java 爬蟲大型教程(一)Java爬蟲
- Docker(一):Docker入門教程Docker
- Kotlin教程(一)基礎Kotlin
- Kotlin 進階教程(一)Kotlin
- Kotlin基礎教程(一)Kotlin
- Flutter教程(一) Flutter簡介Flutter
- iOS 11開發教程(一)iOS
- UI Recorder 安裝教程(一)UI
- Django CMS教程一:安裝Django
- Homebrew進階使用教程(一)
- CSS實用教程(一)(轉)CSS
- Idea+Git+GitHub圖文教程,一篇教程幫你搞定IdeaGithub
- golang web框架——gin使用教程(一)GolangWeb框架
- 【譯】Rust巨集:教程與示例(一)Rust
- 一個不錯的Fortran教程
- 小白學習Vue(一)Vue教程Vue
- 【第一篇】- Git 教程Git