Android CTS兼容性測試

一、爲什麼需要兼容性測試(以下稱CTS)?

1.1、讓APP提供更好的用戶體驗。用戶可以選擇更多的適合自己設備的APP。讓APP更穩定。

1.2、讓開發者設計更高質量的APP。

1.3、通過CTS的設備可以運行Android market。

另外,CTS是免費的,而且很簡單。

二.CTS是開源的測試框架,使用它來測試你的設備是否具備兼容性。CTS主要包含兩個組件:

運行在PC上的測試框架組件。主要用來管理測試用例(test case)的執行。

運行在設備或模擬器上的測試用例。這些用例用JAVA寫成的APK文件。

三.操作流程

1、可以從源碼編譯CTS,也可以從網站下載編譯好的CTS  http://source.android.com/compatibility/downloads.html

2、安裝配置CTS,系統環境爲64位Linux,配置好jdk環境和Android SDK,將SDK路徑添加到android-cts\tools\cts-tradefed中(SDK_ROOT=/home/duyuan/adt-bundle-linux-x86/sdk)。

3、把設備連接到PC上。

4、運行CTS。CTS會把相應的測試用例(也就是一個APK文件)傳送到設備上並通過instrumentation運行,然後記錄運行結果,最後刪除測試用例。

所有的測試用例執行完畢後,可以參照測試結果重新調整或優化系統。然後繼續運行CTS測試。

5、測試通過以後,你可以把CTS生成的結果(就是result下面那個以測試時間命名的.zip文件)提交給[email protected]

四、目前的測試覆蓋面

目前,爲了確保兼容,測試用例覆蓋了下面的這些範圍

1、Signature

對每個Android產品,都有一些XML文件來描述所有的公開API。CTS包含了一個工具來檢測這些API簽名中包含的API是否都在系統中被支持。

2、Platform

測試SDK文檔中描述的平臺API,比如core libraries,Android Application Framework等。要求這些API可以提供:

正確的類、屬性、方法簽名、方法行爲、錯誤參數處理方式

3、Dalvik VM

專門針對Dalvik Vm的測試。

4、Platform Data Model

平臺通過ContentProvider提供給開發者使用的數據,比如:Contacts,Browser,Settings等。

5、Platform Intents

平臺提供的用於核心功能的Intent。

6、Platform permission

平臺提供的一些重要APP權限

7、Platform Resources

simple values,drawables,nine-patch,animations,layouts,styles and themes,loading alternate resources等

五、CTS命令

run cts --plan + <plan name> 運行某個plan,查看當前支持的plan,運行l p,實際上所有的plan存放在android-cts/repository/plans;
run cts --package/-p 運行某一個測試包;
run cts --class/-c [--method/-m] 運行某一個測試類或測試方法;
run cts --continue-session session_ID 繼續運行之前沒有完成的CTS測試,要知道它的session_ID;
run cts [options] --serial/s device_ID 在某個串號的設備上進行CTS測試,對應多個機器的時候,通過adb devices能夠查看當前連接的所有設備的串號;
run cts [options] --shards number_of_shards 在多個設備上同時運行CTS測試,如run cts --plan CTS --shards 2,在兩個設備上同時運行;
run cts --help/--help-all 展示更多幫助
查看列表:
查看行爲是l/list,接不同的參數顯示對應信息。
d/devices 當前連接的設備,效果同adb devices,不過信息更詳細,還有設備電量信息;
packages 當前CTS plan的所有測試包;
p/plan 當前所支持的CTS plan有哪些;
i/invocations 當前CTS的運行狀態;
c/commands 展示出用戶輸入過的命令;
r/results 展示以往的測試結果

六、注意事項

1、設備連接至WiFi

2、設備切換至英文語言

3、包住能夠訪問www.google.com


PS:測試將會持續12小時左右,生成測試報告,保存在results下。

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