跑GMS注意事项

Posted by DoubleWay on October 22, 2019

GMS注意事项


手机端配置步骤:

  1. 默认语言设置为美国英语 : Language –> English(United States)
  2. 按照步骤结束开机向导(不要跳过)
  3. 连接翻墙wifi
  4. 屏幕亮屏时间设置为最长时长 : Display–>Sleep–>never/30m
  5. 锁屏设置为空 : Security–>Screen lock–>None / Screen lock–>none
  6. 把系统时区设置为美国-8时区 : Date&time–>Select time zone(-7/-8)–>Use 24-hour format–>(off,12-hour format)
  7. 打开开发者选项,把stay awake打开,把usb调试打开,关闭verify apps over USB(若已关闭,则不用管) : Developer options (on)–> Stay awake(on)–>USB debugging(on)

准备工作:

  • 在手机根目录下新建test文件夹,然后把media文件拷贝到test文件夹下(不要拷贝media下的TestVectorsIttiam文件夹) 拷贝脚本 :media1.4 ./copy_media.sh ./copy_image.sh
  • 跑vts跟gsi时需要烧谷歌image,因不同平台烧录方式不一样,等会具体项目我在邮件中备注方法
  • 如果没跑过cts 就直接run cts -s devices_id,devices_id通过adb devices查看
  • cd android-cts/tools目录,输入./cts-tradefed.终端显示 运行CTS工具,注意工具的版本
  • –skip-device-info 不收集设备信息,加快测试速度
  • –skip-preconditions 这个命令有用,是直接跳过前期的检查工作,直接强制运行相关的测试。特别是android 6.0后,CTS测试如果不加这个,会进行前期的wifi,网络,视频,location等等的检查。

常用命令:

  • l r (查询跑完的session id l d)

  • run cts -m module -t testCase (单条测试) run cts -m GtsAssistIntentTestCases -t com.google.android.assist.gts.AssistIntentBehaviorTest#noDisambig_onLongPressHome

  • run cts –exclude-filter/–include-filter module (包含或排除某个模块) run cts –exclude-filter GtsAssistIntentTestCases (排除 GtsAssistIntentTestCases) run cts –include-filter GtsAssistIntentTestCases (包含 GtsAssistIntentTestCases)

  • 8.1
    CTS:run cts –shard-count 3 -s jbbbjbbb -s hafajkakj -s jkaajak (使用多台跑的命令)
    GTS: run gts -s sjgkhks (使用单台跑的命令)
    VTS:run vts -s sjgkhks (使用单台跑的命令)
    GSI:run cts-on-gsi –shard-count 3 -s jbbbjbbb -s hafajkakj -s jkaajak (使用多台跑的命令)
    STS: run sts-engbuild -s sjgkhks (使用单台跑的命令)

  • retry命令:
    CTS:run cts -r session ID –shard-count 3 -s jbbbjbbb -s hafajkakj -s jkaajak (使用多台retry的命令)
    GTS: run retry -r session ID -s sjgkhks (使用单台retry的命令)
    VTS:run vts -r session ID -s sjgkhks (使用单台跑的命令)
    GSI:run cts-on-gsi -r session ID –shard-count 3 -s jbbbjbbb -s hafajkakj -s jkaajak (使用多台retry 的命令)
    STS: run sts-engbuild -r session ID -s sjgkhks (使用单台跑的命令)

  • 9.0
    CTS:run cts –shard-count 3 -s jbbbjbbb -s hafajkakj -s jkaajak (使用多台跑的命令)
    GTS: run gts -s sjgkhks (使用单台跑的命令)
    VTS:run vts -s sjgkhks (使用单台跑的命令)
    GSI:run cts-on-gsi –shard-count 3 -s jbbbjbbb -s hafajkakj -s jkaajak (使用多台跑的命令)
    STS: run sts-engbuild -s sjgkhks (使用单台跑的命令)

  • retry命令:
    CTS:run retry -r session ID –shard-count 3 -s jbbbjbbb -s hafajkakj -s jkaajak (使用多台retry的命令)
    GTS: run retry -r session ID -s sjgkhks (使用单台retry的命令)
    VTS:run vts -r session ID -s sjgkhks (使用单台跑的命令)
    GSI:run cts-on-gsi-retry -r session ID –shard-count 3 -s jbbbjbbb -s hafajkakj -s jkaajak (使用多台retry 的命令)
    STS: run sts-engbuild -r session ID -s sjgkhks (使用单台跑的命令)

Android 向谷歌申请白名单 跑白名单


Google实际上是通过该设备的fingerprint去添加whitelist,所以其实随便跑一条case都行

run cts -m CtsSystemCurrentApiSignatureTestCases -t android.signature.cts.api.SignatureTest#testSignature
run cts -m CtsSystemApiSignatureTestCases -t android.signature.cts.api.SignatureTest#testSignature -o