CTS问题分析

CTS是什么

为了保证开发的应用在所有兼容Android的设备上正常运行,并保证一致的用户体验,Google制定了CTS(Compatibility Test Suite)来确保设备运行的Android系统全面兼容Android规范,Google也提供了一份兼容性标准文档(Compatibility Definition Document, CDD)。

CTS测试过程(开发可不关注)

CTS一般采用全包测试(测一半,效果高)命令。
①连接手机,测试时不能黑屏;(adb devices查看已识别和连接设备)
②进入:xxxx/CTS/CTS10R3(版本自选)/android-cts
③该目录下右键open in Terminal:/android-cts# ./tools/cts-tradefed
④出现cts-tf > :复制全包测试(测一半,效果高)命令整个测试时间可能会很长,甚至持续一周。
⑤测试结束后
XXXX/CTS/CTS10R3(版本自选)/android-cts/results里会自动生成所有文档,进入当前文档可查看test_result结果。
xxxxx/CTS/CTS10R3(版本自选)/android-cts/logs进入生成的对应文档,打开device_logcat_setup_***查看日志,据此查看具体错误。

CTS测试类型

全包测试/单包测试

CTS应用领域处理策略

CTS问题较明确的,直接转对应模块分析,如Camera/NFC等,对不明确的需进一步详细分析。

案例分析

----TS-BUG-105320

1.已知信息

TS-BUG-105320【Q7503】【BYRAN00_102.0.1.14_20220715_19】【CTS】【新出现】【必现】
CtsSensorTestCases模块下android.hardware.cts.SensorTest#testSensorOperations试fail
【网络环境】:连接海外网
【硬件信息】:V3-A配置
【预置条件】:/
【操作步骤】:在CTS11_r8套件上面执行
run cts -m CtsSensorTestCases -t android.hardware.cts.SensorTest#testSensorOperations
【预期结果】:pass
【实际结果】:fail
【问题出现时间】:20022/07/26                
【恢复手段】:无法恢复
【对比机测试结果】:/
【旧版本验证结果】:首版本测试
【log】:见附件

在这里插入图片描述

2.分析过程

  1. 解压CtsSensorTestCases.zip,在标识①目录的查找bugreport的压缩包,

    进行解压得到③bugreport-xxxx手机版本及型号-xxxxx时间.txt 文件

    这个里边记录了整个CTS测试全量的行为log,其中就有测试用例失败的异常堆栈

在这里插入图片描述

在这里插入图片描述

  1. 根据关键字(E TestRunner|testSensorOperations)直接找到对应堆栈,这里就较清晰的看出问题点:

在这里插入图片描述

  1. 结合CTS测试用例测试结果,可以确定问题点为Assert的值不正确

    异常类型:junit.framework.AssertionFailedError:
    Expected: <null> 
    but was: {Sensor name="icm4x6xx Gyroscope Non-wakeup", vendor="TDK-Invensense", version=263, 
    type=4, maxRange=34.90656, resolutio
    

在这里插入图片描述

在这里插入图片描述

  1. 在OpenGrok源码上找到对应的类接口,根据堆栈信息以及打印的log进行定位具体代码块,进行修复解决。

    1. 本问题中,根据异常堆栈问题点出在调用接口testSensorOperations,对应的类 SensorTest.java:178 行,
             assertNull(sensor)这个输出的信息不对,
       期望输出:null
       实际输出:sensor对象的详细信息,故需要在此处进行修复,
       解决方案:对该类接口的调用,不输出详细sensor信息即可
       Expected: <null> 
       but was: {Sensor name="icm4x6xx Gyroscope Non-wakeup", vendor="TDK-Invensense", 
       version=263, type=4, maxRange=34.90656, resolutio
    
    

在这里插入图片描述

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值