Android CTS


1.什么是CTS

  CTS是google制定的兼容性測試包(Compatibility Test Suite),只有通過CTS測試的設備才有可能獲得Android的商標和享受Android Market的權限。其目的是用來規范Android設備開發商防止廠商對Android的改動影響其SDK API的兼容性,確保設備運行的Android系統全面兼容Android規范,即第三方應用程序安裝到該廠商的機器上都能正常運行,給用戶帶來更好的體驗。Google還提供了一份兼容性標准文檔(Compatibility Definition Document, CDD)來作為參考。CTS會自動化運行同時也會測試硬件(比如藍牙,WIFI),跑完之后會出一份詳細的報告,告訴你哪些地方沒通過。我們實際使用CTS的過程中,很可能需要根據特定的要求,來定制自己的TestPlan。這時就需要自己編譯CTS。

2.獲取CTS包

我們有兩種方式可以獲取CTS包。

(1)從源碼編譯:

在Android系統源代碼目錄下運行 make cts 即可以得到CTS包,生成文件在out/host/linux-x86/cts/android-cts/ 目錄下 

(2)從google官方下載編譯好了的CTS包:

下載地址為:http://source.Android.com/compatibility/downloads.html。

其中testcases中為測試用例,主要是一些APK,tools目錄下為主機工具

3. 使用CTS

(1)運行CTS腳本

腳本位於android-cts/tools/下,cd進入此目錄,然后執行腳本

./cts-tradefed 

(2)執行CTS測試

CTS的case位於:Android_Source_Code/cts/tests/tests/。注意,測試CTS的時候,設備不能處於休眠狀態,可以在:設置 ⇒ 開發 ⇒ 將保持喚醒狀態勾中,這樣在USB連接狀態下,設備不會處於休眠狀態。

1.執行整個CTS測試:run cts –plan CTS。花費較多時間,建議晚上測試。

2.測試一個包:run cts -p <包名>。參數-p是指測試的是一個package。例如要測試android.view.cts包下的所有case,執行命令:

run cts -p android.view.cts

3.測試一個類:run cts -c <類名>。類名前需要加上包的名字,參數-c是指測試的是一個class。例如要測試android.view.cts包下的WindowTest類,執行命令:

run cts -c android.view.cts.WindowTest

4.測試一個類中的case:run cts -c <類名> -m <case名>。case名是指類下的method名,參數-m是指測試的是一個method。接上例,要測試android.view.cts包下的WindowTest類中的方法testDecorView,執行命令:

run cts -c android.view.cts.WindowTest -m testDecorView

5.查看幫助:

run cts –help

4.查看測試報告及log

CTS測試開始時,系統會在android-cts/repository/results下,以測試開始的日期和時間命名,生成一個文件夾。測試完成后,系統會在該文件夾下,生成一個xml格式的測試報告,供開發人員查看。

log的保存與result一樣,也是以測試開始的日期和時間命名,保存在android-cts/repository/logs下。

 

 

參考資料:

http://blog.csdn.net/yunnywu/article/details/7978877


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM