在使用腳本編譯和測試 Android 時,使用默認的 testrunner 不會輸出文件類型的單元測試報告,每次只能分析 logcat 的無法直觀的看到單元測試結果和報告,這給編寫自動化腳本帶來了不少麻煩,雖然可以自己動手編寫支持 junit 測試報告輸出的 TestRunner,但是比較麻煩。除此之外,有一個 android-junit-report.jar 的開源包可以拿來使用,使用方法也很簡單,輸出的單元測試報告也可以為多種報告分析工具分析。具體使用方法如下:
這裡假設 Android APP 的包名為 com.xxx.xxx 方法 1: 使用 Eclipse IDE 方式 1. 下載 android-junit-report.jar 並將其導入到 Android 測試項目的 libs 中 2. 打開 Android 測試項目的 AndroidManifest.xml 文件,找到
修改為
3. 運行 Junit 測試 4. 使用 ADB 方式獲取單元測試報告
adb pull /data/data/com.xxx.xxx/files/junit-report.xml
方法 2: 使用 ant 方式 1. 下載 android-junit-report.jar 並將其導入到 Android 測試項目的 libs 中 2. 編輯 ant.properties 文件,增加以下內容
test.runner=com.zutubi.android.junitreport.JUnitReportTestRunner
3. 運行單元測試
ant clean debug install test
4. 使用 ADB 方式獲取單元測試報告
adb pull /data/data/com.xxx.xxx/files/junit-report.xml
方法 3: 使用 Ant Build 方式 1. 下載 android-junit-report.jar 並將其導入到 Android 測試項目的 libs 中 2. 編輯 ant.properties 文件,增加以下內容
test.runner=com.zutubi.android.junitreport.JUnitReportTestRunner
3. 在 Build.xml 中增加以下 target 內容
下載 XML 測試報告...
4. 運行單元測試
ant clean debug install test fetch-test-report
參考: http://zutubi.com/source/projects/android-junit-report/documentation/ http://www.dotblogs.com.tw/yuanchien/archive/2010/11/24/add-emma-for-unit-testing.aspx