IOS、Android自動化測試框架Appium概述

http://www.2cto.com/Article/201308/233525.html

Appium

Appium是一個開源、跨平臺的測試框架,可以用來測試原生及混合的移動端應用。Appium支持IOS、Android及FirefoxOS平臺。Appium使用WebDriver的json wire協議,來驅動Apple系統的UIAutomation庫、Android系統的UIAutomator框架。Appium對IOS系統的支持得益於Dan Cuellar’s對於IOS自動化的研究。Appium也集成了Selendroid,來支持老android版本。

使用Appium進行自動化測試有兩個好處:
1. Appium在不同平臺中使用了標準的自動化APIs,所以在跨平臺時,不需要重新編譯或者修改自己的應用。
2. Appium支持Selenium WebDriver支持的所有語言,如java、Object-C、JavaScript、Php、Python、Ruby、C#、Clojure,或者Perl語言,更可以使用Selenium WebDriver的Api。Appium支持任何一種測試框架。如果只使用Apple的UIAutomation,我們只能用javascript來編寫測試用例,而且只能用Instruction來運行測試用例。同樣,如果只使用Google的UIAutomation,我們就只能用java來編寫測試用例。Appium實現了真正的跨平臺自動化測試。

Requirements

總體:

  • IOS自動化測試需要Mac os操作系統
    • Mac OS X 10.7或者更高版本,推薦10.8.4版本
  • Android自動化測試可以在Mac、Linux上進行。對於Windows平臺的支持還在beta階段
  • 需要安裝node和npm(node版本高於0.8)

IOS自動化:

  • Mac Xcode
  • Apple開發者工具(iphone模擬器sdk,及命令行工具)
    Android自動化:
  • Android SDK API版本 >= 17,即android版本高於4.2

快速入門

方案1: 使用Appium.app

  • 下載appium.app dmg
  • 在Apple系統上安裝appium.app,就可以直接運行自己的case

方案2: 使用node從命令行運行appium

  • 安裝node及npm
  • 下面命令是在linux系統中安裝appium
    mkdir appium-test && cd appium-test
    npm install -g appium  # might have to do this with sudo
    sudo authorize_ios # enable developer use of iOS sim
    npm install wd
    curl -O https://raw.github.com/appium/appium/master/sample-code/examples/node/simplest.js
    appium &
    node simplest.js  
    

    下面是一些不同語言編寫的appium的測試用例
    Example Tests: Node.js | Python | PHP | Ruby | Java

問題解決

如果使用過程遇到問題,可以參考這裏,這裏包含了一些常見錯誤的解決方法,也包含appium組織的聯繫方法。

使用appium編寫測試用例

Appium支持Selenium WebDriver json wire 協議(部分支持,非全部)

appium定位元素的方法也和webdriver類似,但是也僅支持webdriver中的部分方法,詳細信息見這裏.

Appium也爲json wire協議提供了一些拓展,來支持智能手機的手勢動作,如tap(輕擊)、flick,swipe,更多信息點擊這裏

Appium也支持在混合的app中,自動化測試web views,參見這裏

Appium 同時支持Android和IOS平臺:

Appium全部文檔,點擊https://github.com/appium/appium/tree/master/docs。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章