Android CTS --am命令

        在CTS测试中,需要对某些case进行单独测试,或者对fail项进行验证,在linux环境下进行单项CTS验证略显繁琐,可以利用am命令方便快捷。

1.外部环境配置

        手机:满足CTS测试要求,例如保持常亮(stay awake)等。

        APK:测试相关类型的testcase的apk,在CTS 的测试包中包含的。以Camera测试为例,在android-cts-13_r2-linux_x86-arm\android-cts\testcases\CtsCameraTestCases\arm64 下存在CtsCameraTestCases.apk,将该apk安装到设备上。

adb install -r CtsCameraTestCases.apk

         并且需要打开apk的全部权限,可以通过命令开启权限,或者通过设备中设置手动打开权限。以camera 测试CtsCameraTestCases.apk为例。

adb shell pm grant android.camera.cts android.permission.CAMERA

2.测试命令

        测试单个case可以使用am命令,速度更快。

        首先通过 pm list instrumentation 命令查看测试apk的测试用例。

fd306ff9a7f14b3391d15e8ba5d48d1c.png

 am instrument -w -r -e newRunListenerMode true -e class android.media.cts.CameraProfileTest android.media.cts/androidx.test.runner.AndroidJUnitRunner

         am命令可以测试某个module或者module中的某个case,使用"#"在module后添加case名即可。

am instrument -w -r -e newRunListenerMode true -e class android.hardware.camera2.cts.RobustnessTest#testVerifyMandatoryOutputCombinationTables android.camera.cts/androidx.test.runner.AndroidJUnitRunner
 

 

3.结果

b20f85db1531425689417eb9c7fc465e.png

 4.写在最后

        通过am命令可以看出,使用am命令对于单条case来说更快捷,更方便,也可以单独测试某个module的结果。

         对于研发人员来说,fix cts bug使用am命令来内部测试比使用android CTS套件更方便快捷。

猜你喜欢

转载自blog.csdn.net/qrx941017/article/details/128979000