1. 程式人生 > >Android CTS(相容性測試)整個流程

Android CTS(相容性測試)整個流程

為了保證開發的應用在所有相容Android的裝置上正常執行,並保證一致的使用者體驗,Google制定了CTSCompatibility Test Suite)來確保裝置執行的Android系統全面相容Android規範,Google也提供了一份相容性標準文件(Compatibility Definition Document, CDD)。

在進行CTS之前,需要先從google官網下載相關檔案,需要自卑梯子翻牆。下載連結:

http://source.android.com/compatibility/downloads.html。目前最新的版本是Android5.1的版本,主要包含ARM和X86架構的,如果你的裝置這兩種架構的都包含,那麼都需要測試一下。由於手頭的機器是Android4.4的版本,因此下載了Android4.4的CTS進行測試。


大部分是基於Junit和儀表盤技術編寫的。還擴充套件了自動化測試過程,可以自動執行用例,自動收集和彙總測試結果。CTS採用XML配置檔案的方式將這些測試用例分組成多個測試計劃(plan),第三方也可以建立自己的plan。

CTS測試執之前要做的準備工作如下:

1. 下載相容性測試用例包,並解壓,解壓後的檔名命名為“android-cts”

2. 重置手機(恢復出廠設定)。

3. 去掉谷歌賬戶。

4. 設定手機語言為英語:Setting->Language&input->language->English(UnitedStates)

5. 插入SIM卡和外接SD

卡(SD卡需要格式化:Settings->Storage->EraseSD card->Erase SD card->Erase Everything)。

6. 插入USB,連線手機到電腦,可以用adb devices檢查,是否正確連線。

7. 開啟wifi,並連線到可用wifi

8. 開啟藍芽,無須配對。

9. 保證手機無操作30分鐘後LCDoff:Settings->Display->Sleep->30 minutes.

10. 去掉螢幕鎖:Settings->Security->ScreenLock的值是“None”.

11. 開啟Settings->Locationservices->“Google location services”, ”GPS satellites”, ”Location &Google search”.

12. 開啟Settings->Accessibility->Developeroptions->USB debugging(USB除錯).

13. 開啟Settings->Accessibility->Developeroptions->Stay Awake(保持喚醒).

14. 開啟Settings->Accessibility->Developeroptions->Allow mock location(允許模擬位置).

15. 通過Settings->Speechsynthesis->Install voice data安裝“Text To Speech”檔案(com.svox.langpack.installer-1.apk,假如android-cts/repository/testcases/中沒有此檔案,就省去這一步。

16. 如果需要執行可訪問性方面的相容性測試,則安裝“CtsDelegatingAccessibilityService.apk”adbinstall –r */android-cts/repository/testcases/CtsDelegatingAccessibilityService.apk),並將Settings->Accessibility->DelegatingAccessibility Service選項開啟。

17. 如果需要執行裝置管理方面的相容性測試,則安裝“CtsDeviceAdmin.apk” (adb install –r*/android-cts/repository/testcases/ CtsDeviceAdmin.apk),並將Setting->Security->DevicesAdministrators->android.devicesadmin.cts.CtsDevicesAdmin等選項開啟。

TestCase裡面包含很多的測試用例,可以全部測試,也可以只測試部分。


做完了前面的準備工作之後,就可以開始CTS測試了。測試之前,先把Android SDKadb的路徑加入系統的環境變數中,然後鍵入:

#adbdevices

檢視已識別已經連線的裝置。


進入到“android-cts/tools”目錄,接著執行

#./cts-tradefed

接著執行測試裝置解碼方面的測試用例:

#runcts --class android.media.cts.DecoderTest


可以發現紅色箭頭所指的部分測試用例已經通過,有些命令不熟悉的話可以鍵入help。當該單元下的測試用例都完成以後,可以鍵入:

#cts-tf> l r

查詢測試結果,如下圖所示:


檢視android-cts/repository/results/目錄,可以發現生成的XML檔案:

把testResult.xml檔案拖入Safari瀏覽器中,可以很方便的檢視測試結果: