一、爲什麼需要兼容性測試(以下稱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命令
六、注意事項
1、設備連接至WiFi
2、設備切換至英文語言
3、包住能夠訪問www.google.com
PS:測試將會持續12小時左右,生成測試報告,保存在results下。