Android自己主動化測試——CTS測試

來源:互聯網
上載者:User

標籤:

 

一、為什麼須要相容性測試(下面稱CTS)?

1.1、讓APP提供更好的使用者體驗。使用者能夠選擇很多其它的適合自己裝置的APP。讓APP更穩定。

1.2、讓開發人員設計更高品質的APP。

1.3、通過CTS的裝置能夠執行Android market。

另外,CTS是免費的,並且非常easy。

二.CTS是開源的測試架構,使用它來測試你的裝置是否具備相容性。CTS主要包括兩個組件:

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

執行在裝置或模擬器上的測試用例。這些用例用JAVA寫成的APK檔案。

三、工作流程

1、能夠從原始碼編譯CTS,也能夠從網站下載編譯好的CTS

2、安裝配置CTS。

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搭建(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檔案(預設就是,直接雙擊)就能夠查看所用的測試報告了。

 

七:網址

http://hi.baidu.com/jugege/blog/item/dcb6edf3f88e8d43352accb0.html

Android自己主動化測試——CTS測試

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.