Android 15 GTS测试自动化脚本方案

针对Android 15 GTS-Interactive测试的一键自动化脚本实现方案,结合GTS测试工具、ADB命令和自动化框架设计:


一、脚本设计思路

  1. 核心工具:基于cts-tradefed框架执行GTS测试命令(参考网页7的GTS指令)。
  2. 环境初始化:通过ADB命令自动配置设备(如开发者模式、语言设置、安装依赖APK)。
  3. 媒体文件预置:使用官方提供的copy_media.sh脚本提前推送测试媒体文件(需从CTS媒体包中获取)。
  4. 测试执行与重试:支持全量测试、模块重试、失败用例重跑(通过--retry参数)。

二、脚本实现示例

#!/bin/bash

# 1. 设备初始化配置
adb root
adb remount
adb shell settings put global development_settings_enabled 1
adb shell settings put global adb_enabled 1
adb shell settings put global stay_on_while_plugged_in 3
adb shell settings put secure sleep_timeout 86400000  # 保持屏幕常亮

# 设置语言和时区
adb shell "setprop persist.sys.language en"
adb shell "setprop persist.sys.country US"
adb shell "setprop persist.sys.timezone America/Chicago"

# 安装测试依赖APK(需提前下载)
adb install CtsDelegatingAccessibilityService.apk
adb install CtsDeviceAdmin.apk

# 2. 推送媒体文件(需下载CTS媒体包)
cd android-cts-media-1.0/
./copy_media.sh all  # 根据设备分辨率调整参数,如1280x720

# 3. 启动GTS测试
cd /path/to/android-gts-12_R2/tools
./gts-tradefed <<EOF
run gts --plan GTS-Interactive-12_R2 --shard-count 3 --disable-reboot  # 禁止测试中自动重启
exit
EOF

# 4. 失败用例重试
./gts-tradefed <<EOF
run retry --retry 1 --plan GTS-Interactive-12_R2  # 重试最近一次失败的Session
exit
EOF

# 5. 生成测试报告(结果默认保存在repository/results/目录)
latest_session=$(ls -t repository/results/ | head -1)
cp -r repository/results/$latest_session ./gts_report
echo "测试报告已生成:gts_report/testResult.xml"

三、关键参数说明

  1. 分片测试--shard-count 3表示分3个进程并行测试,缩短时间。
  2. 禁用重启--disable-reboot防止测试过程中设备意外重启导致中断。
  3. 重试机制run retry --retry 1自动重试最近一次失败的测试会话。
  4. 环境配置:通过ADB命令设置开发者选项、语言、时区等,避免手动操作。

四、优化建议

  1. 多设备支持:通过-s <设备序列号>指定多设备并行测试(需调整分片数)。
  2. 结果解析:集成Python脚本解析testResult.xml,自动提取失败用例并生成摘要。
  3. 错误监控:添加ADB日志捕获(adb logcat -f gts_log.txt),便于调试测试失败原因。
  4. 容器化部署:使用Docker封装测试环境(如Ubuntu 14.04 + JDK 8),避免系统依赖问题。

五、注意事项

  1. 网络要求:确保设备能访问Google服务器(如GPS辅助数据需连接supl.google.com:7276)。
  2. 版本匹配:GTS测试包需与Android 15版本严格对应(参考网页7的月度版本表)。
  3. 设备兼容性:需使用User版本系统镜像,且通过Google认证成为合作伙伴。

如需完整脚本或更详细的参数调整,可参考Google官方文档或CTS/GTS测试指南。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值