【Android】CTS测试
【寫在前面】
網(wǎng)上資料梳理,侵刪煩請(qǐng)聯(lián)系。或有表達(dá)錯(cuò)誤,歡迎指出糾正。
【參考引用】
https://blog.csdn.net/sgzy001/article/details/14648081
CTS測(cè)試
- CTS
- CTS是什么
- CTS測(cè)試過程
- CTS測(cè)試
- 全包測(cè)試
- 單包測(cè)試
- 測(cè)試問題
- fail項(xiàng)修改
- 常見報(bào)錯(cuò)
CTS
CTS是什么
為了保證開發(fā)的應(yīng)用在所有兼容Android的設(shè)備上正常運(yùn)行,并保證一致的用戶體驗(yàn),Google制定了CTS(Compatibility Test Suite)來確保設(shè)備運(yùn)行的Android系統(tǒng)全面兼容Android規(guī)范,Google也提供了一份兼容性標(biāo)準(zhǔn)文檔(Compatibility Definition Document, CDD)。
CTS測(cè)試過程
cts一般采用全包測(cè)試(測(cè)一半,效果高)命令。
①連接手機(jī),測(cè)試時(shí)不能黑屏;(adb devices查看已識(shí)別和連接設(shè)備)
②進(jìn)入:Desktop/CTS/CTS10R3(版本自選)/android-cts
③該目錄下右鍵open in Terminal:
/android-cts# ./tools/cts-tradefed
④出現(xiàn)cts-tf > :復(fù)制全包測(cè)試(測(cè)一半,效果高)命令
整個(gè)測(cè)試時(shí)間會(huì)很長(zhǎng),甚至持續(xù)一周。
⑤測(cè)試結(jié)束后
Desktop/CTS/CTS10R3(版本自選)/android-cts/results里會(huì)自動(dòng)生成所有文檔,進(jìn)入當(dāng)前文檔可查看test_result結(jié)果。
Desktop/CTS/CTS10R3(版本自選)/android-cts/logs進(jìn)入生成的對(duì)應(yīng)文檔,打開device_logcat_setup_***查看日志,據(jù)此查看具體錯(cuò)誤。
注:測(cè)試環(huán)境執(zhí)行測(cè)試命令后,若出現(xiàn)安裝,則始終允許并安裝,直到開始出現(xiàn)passed。
CTS測(cè)試
全包測(cè)試
run cts -m CtsCameraTestCases -a arm64-v8a --skip-preconditions --skip-system-status-check com.android.compatibility.common.tradefed.targetprep.NetworkConnectivityChecker run cts -m CtsCameraTestCases -a armeabi-v7a --skip-preconditions --skip-system-status-check com.android.compatibility.common.tradefed.targetprep.NetworkConnectivityChecker單包測(cè)試
將failed項(xiàng)單獨(dú)進(jìn)行測(cè)試。
run cts -m CtsCameraTestCases -t android.hardware.camera2.cts.MultiViewTest#testDualCameraPreview -a arm64-v8a --skip-system-status-check com.android.compatibility.common.tradefed.targetprep.NetworkConnectivityChecker其中,android.hardware.camera2.cts.MultiViewTest#testDualCameraPreview為failed項(xiàng),可進(jìn)行更改。
測(cè)試問題
①輸入命令無反應(yīng)
直接執(zhí)行:
②單包自測(cè)cts,failed項(xiàng)與success項(xiàng)一直為0
run cts -m CtsCameraTestCases -t android.hardware.camera2.cts.StillCaptureTest#testJpegExif[1] -a arm64-v8afail項(xiàng)修改
修改cts的bug不是修改cts testcase的代碼。
過cts的目的是為了讓系統(tǒng)可以兼容更多的app,當(dāng)cts某條case fail時(shí),說明系統(tǒng)存在問題,需要修改系統(tǒng)代碼去讓cts pass。
修改cts bug時(shí),通過查看android-cts/results目錄下的testResult.xml文件,找到fail原因,一般testResult.xml文件中會(huì)標(biāo)示出fail的test class 所在行。
查找關(guān)鍵詞 Test result=“fail”
camera參數(shù)配置檢查:
adb shell dumpsys media.camera -v 1 > xxx.log檢查camera參數(shù)與報(bào)錯(cuò)參數(shù)是否一致。
常見報(bào)錯(cuò)
①android.hardware.camera2.cts.RecordingTest#xxxxx
報(bào)錯(cuò)類似:
解決方法:
第一種修改media profiles對(duì)應(yīng)Camera,對(duì)應(yīng)fail項(xiàng)size的frameRate和drvier輸出的幀率一致;
第二種修改drvier對(duì)應(yīng)video size的幀率和media profiles一致。
另:media profiles的文件在手機(jī)中的位置(可以直接修改push驗(yàn)證,也可以確認(rèn)修改是否正確生效):/vendor/etc/media_profiles_V1_0.xml
總結(jié)
以上是生活随笔為你收集整理的【Android】CTS测试的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: matlab的多线程操作
- 下一篇: Android4.4 往短信收件箱中插入