android CTS 介紹


【轉】http://blog.csdn.net/pugongying1988/article/details/6976091

一、為什么需要兼容性測試(以下稱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

2、安裝配置CTS。

3、把設備連接到PC上。

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

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

5、測試通過以后,你可以把CTS生成的結果(就是result下面那個以測試時間命名的.zip文件)提交給cts@android.com。

四、目前的測試覆蓋面

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

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搭建(Unbutu/Linux平台)

1.   下載CTS包http://source.android.com/compatibility/downloads.html

2.   在手機或者模擬器上安裝CtsDelegatingAccessibilityService.apk非必需

(1)$sudo ./adb install -r /home/tester/cts/android-cts/repository/testcases

/CtsDelegatingAccessibil

ityService.apk

(2)手機或模擬器設置Settings > Accessibility > Accessibility > Delegating Accessibility Service

3.   進入android/out/host/linux-x86/cts /android-cts/repository/tools目錄下,修改startcts腳本文件。將腳本中的SDK_ROOT該成自己的android SDK路徑.

$cd home/tester /cts/android-cts/repository/tools $vim startcts修改腳本中出現的第一個SDK_ROOT,如"SDK_ROOT=/home/tester/cts/android-sdk- linux_86"。

4.   執行startcts腳本。在執行CTS測試計划時(執行一段時間后,大於5分鍾)會出現沒有足夠權限啟動devices,使用$sudo ./startcts可解決該問題。

(Windows下配置好sdk和android開發環境后,可以直接通過java命令來執行cts測試:java -Xmx512M -cp D:\android-cts\tools\cts.jar;D:\android-cts\tools\hosttestlib.jar;D:\android-cts\tools\junit.jar;C:\Android\android-sdk\tools\lib\ddmlib.jar com.android.cts.TestHost D:\android-cts\repository\host_config.xml

如果使用的是android-cts-2.2_r4-x86.zip,-cp選項中需要多一個D:\android-cts\tools\lib\CtsTestAnnotationsHostLib.jar,可參考startcts腳本。)

5.   出現如下提示符表示啟動cts並連接設備成功。(紅色部分未deviceID,視設備號而定)

Android CTS version 2.3_r4

Device(emulator-5544) connected

cts_host > cts_host >

6.   在“cts_host >”提示符下輸入命令,以下為幾個常用的命令

help查看所有

exit退出

ls -p列出所有的測試包

ls --plan列出所有的測試方案

start --plan plan_name運行一個測試方案,如:start --plan CTS

start --plan plan_name --package package_name運行一個特定的測試包,如:start --plan CTS --package android.bluetooth


六、查看測試報告

運行測試時,在CTS運行界面能看到測試報告與運行狀況。測試完成后可在android-cts/repository/results/下生成詳 細的測試報告和一些附加信息,其中用日期和時間命名的文件夾下為所有的測試結果,同時文件夾也會被打成一個對應的.zip包方便提交。用瀏覽器打 開.xml文件(默認就是,直接雙擊)就可以查看所用的測試報告了。


免責聲明!

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



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