標籤:mod 基礎 _id 開啟 開始 middle 認證 全世界 admin
什麼是CTS測試?瞭解這個問題前,我們先來搜尋瞭解一遍“Google GMS 認證”。GMS全稱為GoogleMobile Service,即Google行動服務。說白了GMS其實就是一系列Google的應用集合。GoogleGMS認證(Google Mobile Services Test Certification )是Google公司為了確保全世界的硬體廠商設計和生產安卓為基礎的各種智能硬體產品的相容性、穩定性,以及這些硬體與安卓各種內建的各種軟體APP產品和服務的相容性、穩定性方面的測試和認證。
Google GMS 認證需要測試一些啥呢?CTS,GTS,CTSVerifier,AFW.....
CTS: 英文為 CompatibilityTest Suite,中文意思是相容性測試,裝置需要通過 Android 的相容性測試(CTS),以確保在 Android 上開發的程式在裝置上都能運行。
一、環境搭建
配置環境變數:
JDK 1.8
SDK(目的:adb aapt環境配置)
測試所需資源:(下載被測裝置對應版本的CTS套件)
CTS測試包: Android 6.0 R20 Compatibility Test Suite (CTS) - x86
CTS驗證程式: Android 6.0 R20 Verifier
CTS媒體庫: CTS Media 1.3
Android 6.0 裝置(以android6.0為例)
註:雖然windows下也能進行CTS測試,但是問題會比較多(有些不支援在window下操作)。最好還是在linux或mac下進行測試。
二、測試前準備(android裝置設定)
1、裝置恢復出廠預設值: 設定>備份和重設>恢復出廠預設值
2、裝置的語言設定為英語(美國): 設定>語言&輸入>語言
3、開啟位置資訊: 設定>位置資訊
4、串連WiFi:設定>無線
5、螢幕鎖設定為無: 設定>安全設定>螢幕>無
6、確保時間設定12小時格式: 設定>日期&時間
7、開啟USB調試: 設定>開發人員選項> USB調試 。
8、選擇:設定>開發人員選項>保持亮屏
//9、選擇:設定>開發人員選項>允許類比位置
注意: 這類比位置設定只適用於Android 5.x和4.4.x。
//10、啟動瀏覽器並關閉任何啟動/設定螢幕。
11、使用USB線串連電腦
/* **12、在裝置上安裝和配置輔助應用程式。
注意: CTS版本2.1 R2通過4.2 R4,設定你的裝置(或模擬器)啟動並執行可達性測試:
adb install -r android-cts/repository/testcases/CtsDelegatingAccessibilityService.apk
在裝置上 Settings > Accessibility > Accessibility > Delegating Accessibility Service
注意: CTS版本7.0之前,裝置上聲明 android.software.device_admin 運行,設定你的裝置 測試裝置管理使用:
adb install -r android-cts/repository/testcases/CtsDeviceAdmin.apk
在設定>安全>選擇裝置管理員,使兩個 android.deviceadmin.cts.CtsDeviceAdminReceiver * 裝置管理員。
確保 android.deviceadmin.cts.CtsDeviceAdminDeactivatedReceiver 和任何其他預緊裝置管理員仍然禁用。*/
13、CTS媒體檔案複製到裝置中:
注意: 2.3 CTS R12以後 ,如果裝置可使用視訊轉碼器,CTS媒體檔案必須複製到裝置。
三、運行CTS測試
Linux系統下的操作:
下載媒體檔案並解壓。
1、改變檔案許可權: chmod u + x copy_media.sh
2、運行 copy_media.sh 複製所有檔案,多個裝置時 copy_media.sh - s <specific device>
3、進入android-cts/tools目錄,運行指令碼cts-tradefed
window下的操作為:
1、解壓android-cts-media-1.3
2、將android-cts-media-1.3目錄下的bbb_full,bbb_short複製到裝置的/sdcard/test/目錄下(沒有就建立一個test檔案夾)
3、解壓android-cts-6.0_r20-linux_x86-x86
4、在android-cts-6.0_r20-linux_x86-x86目錄下,在android-cts同目錄下建立一個run.bat檔案
5、將以下代碼複製到run.bat檔案中。註:最後一行的類,需要到\android-cts\tools\cts-tradefed檔案中查看
@echo offset CTS_ROOT=%~dp0set JAR_DIR=%CTS_ROOT%android-cts\toolsset JAR_PATH=%JAR_DIR%\cts-tradefed.jar;%JAR_DIR%\tradefed-prebuilt.jar;%JAR_DIR%\hosttestlib.jarjava -cp %JAR_PATH% -DCTS_ROOT=%CTS_ROOT% com.android.cts.tradefed.command.CtsConsole
6.雙擊運行run.bat檔案即可
四、CTS基本命令
**如果把所有CTS測試的case都跑一遍,可以直接輸入如下命令
run cts --plan CTS
**如果測試GTS,可以直接輸入如下命令
run gts --plan GTS (之前是:run xts --plan XTS)
**如果只測試CTS中的部分case,只需要輸入如下命令即可
run cts -p [packgeName] #測試指定包下的所有case
run cts -c [className] -m [methodName] #單測method一case
分類 |
命令 |
說明 |
Host |
help |
基本命令協助說明 |
help all |
全部命令協助說明 |
exit |
退出控制台 |
Run |
run cts --plan test_plan_name |
運行指定計劃 |
run cts --package/-p |
運行指定包 |
run cts --class/-c [--method/-m] |
運行指定方法 |
run cts --continue-session session_ID |
繼續運行指定回話ID |
run cts [options] --serial/-s device_ID |
運行指定裝置 |
run cts [options] --shardsnumber_of_shards |
運行多個裝置 |
run cts --help/--help-all |
運行協助 |
List |
l/list d/devices |
列出串連的裝置 |
l/list packages |
列出所有測試包 |
l/list p/plans |
列出所有測試計劃 |
l/list r/results |
列出已經儲存的結果 |
五、CTS測試結果
CTS測試的結果在android-cts/repository/results目錄下以開始測試時間為名的目錄下的testResults.xml檔案中。
CTS測試的記錄檔在android-cts/repository/logs目錄下的zip檔案中
可查看android官網:
》》》下載
》》》設定
》》》運行CTS
Android CTS Test