android CTS 介紹

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

1、爲何須要兼容性測試(如下稱CTS)?html

1.一、讓APP提供更好的用戶體驗。用戶能夠選擇更多的適合本身設備的APP。讓APP更穩定。java

1.二、讓開發者設計更高質量的APP。linux

1.三、經過CTS的設備能夠運行Android market。android

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

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

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

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

3、工做流程工具

一、能夠從源碼編譯CTS,也能夠從網站下載編譯好的CTS測試

二、安裝配置CTS。

三、把設備鏈接到PC上。

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

全部的測試用例執行完畢後,能夠參照測試結果從新調整或優化系統。而後繼續運行CTS測試。

五、測試經過之後,你能夠把CTS生成的結果(就是result下面那個以測試時間命名的.zip文件)提交給cts@android.com。

4、目前的測試覆蓋面

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

一、Signature

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

二、Platform

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

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

三、Dalvik VM

專門針對Dalvik Vm的測試。

四、Platform Data Model

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

五、Platform Intents

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

六、Platform permission

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

七、Platform Resources

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

5、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

 

6、查看測試報告

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

相關文章
相關標籤/搜索