Spoon-配合 Robotium 多設備分發測試,生成測試結果

Spoon-配合 Robotium 多設備分發測試,生成測試結果

Robotium生成報告的方法
1、 改寫InstrumentationTestRunner,替代原有的,測試過程中會把測試結果寫在定義的目錄--------網上有教程,但是我沒有試驗過
2、 jenkins有自帶的junit插件可以生成報告--------沒試驗成功
3、 使用命令行發送測試命令,然後收集返回的結果,根據模板生成網頁,恩,各種自定義的功能比如說統計,失敗重跑都可以做--------我做過,勞心勞力,不會做頁面還特醜。
恩,直到後來一位前同事給我介紹了這個工具,覺得是初用Robotium又不熟悉怎麼生成報告的同學的福音,用法簡單,效果顯著,居家必備。
下面介紹一個用來介紹一個與robotium結合得特別好的用來多設備運行,並且生成網頁報告的工具------spoon

先上github地址:
https://github.com/square/spoon
主頁:
http://square.github.io/spoon/
sample地址:
http://square.github.io/spoon/sample/index.html(可能很慢)

打不開以上網址的福利:
源代碼zip:
http://pan.baidu.com/s/1kTolyvX
runner jar:
http://pan.baidu.com/s/1jGIFEF8
client jar:
http://pan.baidu.com/s/1jG20AZ8

介紹:
spoon-runner
提供測試apk和被測apk後,spoon-runner可以同時在多臺機器上運行測試apk包含的tests,tests運行結束後,spoon會對所有的結果和圖片進行處理,並且生成一個靜態的html文件(其實有很多html文件)
生成的結果html大概是這樣的:


spoon-client
需要導入到robotium的測試工程中,它提供了截圖的方法,通過這個方法,可以將圖片生成到結果html中


使用方法:
1 spoon-client
需要將spoon-client jar導入到你的測試工程中,就像到robotium.jar包那樣導入工程。
spoon-client jar可使用的方法有以下(該方法的第二個參數爲自定義文件名):

Spoon.screenshot(activity, "initial_state");/* Normal test code... */Spoon.screenshot(activity, "after_login");

就是這樣將你需要截圖的地方嵌入這個方法,並寫描述
2 spoon-runner
這是個在電腦上可運行的jar文件,就是用它來驅動測試並完成各種數據收集的工作的。它需要你提前將已經簽名好的測試apk和被測apk文件。
以下示例一個最基礎的啓動方式

java -jar spoon-runner-1.0.0-jar-with-dependencies.jar --apk example-app.apk --test-apk example-tests.apk

它還提供這些更高級的設置(比如改變生成結果的地址):

Options:
    --apk               Application APK
    --fail-on-failure   Non-zero exit code on failure
    --output            Output path 
    --sdk               Path to Android SDK
    --test-apk          Test application APK
    --title             Execution title
    --class-name        Test class name to run (fully-qualified)
    --method-name       Test method name to run (must also use --class-name)
    --no-animations     Disable animated gif generation
    --size              Only run test methods annotated by testSize (small, medium, large)
    --adb-timeout       Set maximum execution time per test in seconds (10min default)

還有一些類似maven的設置,請直接去github參照。

它有個很好玩的是,可以對截圖進行順序動態顯示,好像是生成了GIF,很直觀。
不過好像沒有做統計相關的功能,恩,還有失敗重跑這樣的。不過我覺得初期可以用用,至少報告可以好看點。


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