简介腾讯WeTest平台在项目测试过程中为企业和开发者提供了很多便利,帮助发现产品潜在问题。接下来,本文将分享一些使用WeTest进行测试和提高效率的小经验,希望对大家有所帮助。本文作者为腾讯IEG成长协同部测试开发工程师连令干。多年系统测试经验,在自动化、全链路压测等特殊测试领域有一定经验。1.自动化兼容性测试UI自动化是提高测试效率的重要手段。像poco和appium都是常用的自动化框架,相关资料很多。这里就不多说了,主要分享一下在实际操作过程中可能遇到的一些问题。.1.1真通过与假通过每次自动化兼容性测试后,WeTest平台都会返回相应的测试报告,涵盖测试过程中的详细信息,如设备日志、截图、性能数据等,以供进一步的结果分析。概览数据涵盖了该设备维度的测试结果,包括通过的设备数量和不合格的设备数量。device维度的失败定义为兼容性问题,比如Crash、ANR等,测试的时候有时候脚本可能执行不完全,最后会判断为passed,属于假pass并影响最终的统计结果。每次提交数十或数百个模型进行兼容性测试。对所有通过的模型一一打开验证,时间成本太高,那么有没有什么方案可以帮助我们快速找出那些没有真正执行过脚本的呢?装备呢?基于一个不太严谨的假设,同一个UI自动化脚本的执行,理论上整个过程时间在不同机型上是差不多的(如果有wait_until_something_appear等操作,运行时间会因机型而异),而WeTestscreenshots的时间间隔基本固定。可以粗略地认为,每个模型完整执行过程中产生的截图数量波动较小。我们只需要检查偏差较大的测试用例。1.2.airtest可以访问节点,脚本执行报poco没有检测到ui控制节点。在使用poco的自动化测试过程中,有时会发现airtest可以定位到的节点,但是在执行过程中会报nodenotfound的错误。这是因为Poco的ui树没有及时刷新。建议适当增加休眠间隔,等待ui节点树刷新。1.3.部分机型存在权限弹窗问题部分机型弹窗也可能会造成一些误传问题,所以如果提交具体机型进行测试,测试app有权限申请,需要注意是否会出现权限弹出窗口。由于弹窗没有id可以快速定位,所以这里采用轮询节点的方式。在开始测试用例之前,通过轮询ui节点和匹配“allow”或“deny”的关键字,找到对应的元素并点击。2.自动化日志测试日志上报是产品数据分析的基石。在产品运行过程中,会在很多节点上报信息。一项一项的核对,无论是从上报环节核对,还是从入库数据核对,都是一个费时费力的过程,人工操作和检查结果是一项复杂的工作,容易出现疏漏。因此,我们将UI自动化功能测试与日志测试相结合,构建了基于蓝盾流水线和WeTest的日志自动化测试模块。由于上报的点状日志较多,我们需要准确抓取该操作产生的日志,并作为关键词在db中进行搜索。这里我们使用打印本地文件的方式,保存执行过程的状态和定位本次搜索的关键字,以供后续操作验证和搜索。如何将自动化执行过程的数据传递给验证模块,考虑以下方案:1、通过mq(redis、kafka等),实现数据传递给查询验证模块;2.启动另一个服务接收数据,通过接口Call传输数据;3、验证模块与日志测试脚本耦合;4.本地日志记录,通过日志文件传递信息。基于不同功能模块的解耦维护和开发成本的考虑,我们最终选择了最原始的文件存储形式。这种方式也方便在查题的时候从WeTest中找到关键信息。WeTest兼容性测试支持拷贝文件到开发机,在endTest.sh文件中添加:cpXXX.log$UPLOADDIR/配合流水线运行。3、数据驱动覆盖率提升全量提交测试会导致任务周期长,公有云设备难免有等待时间,每次全量提交也可能给产品带来额外的测试成本。我们需要思考,每增加一个测试模型,能为我们的流量带来多大的覆盖?哪些车型占比更高、更重要?现有的WeTest测试模型库是否满足我们自有产品的模型覆盖?那么,我们能否通过现网的用户分布,叠加一些机型和系统分布情况,进行更准确的兼容性测试呢?首先,腾讯WeTest平台上的兼容机型涵盖了市场主流的顶配机型,但安卓系统的长尾效应特别大,产品的用户收入决定了它使用的机型,通过打点上报的数据,我们得到了我们产品用户模型的流量分布图,并与现有的外网top500基准模型进行了对比。利用以上数据,我们根据产品流量top50、100、300、500与WeTest的模型进行交集,得到如下比例图。有了上述模型数据,在测试过程中可以进行更详细的测试验证:1.兼容性测试补充了WeTest在产品流程中已有的模型,提高了兼容性测试的覆盖率。2、针对不同的测试场景,选择不同的测试机组,缩小测试范围,更快出结果。3、可以有针对性地购买测试机,补充一些WeTest平台没有的机型,提高测试过程中用户机型的覆盖率。以上就是在产品测试中使用WeTest提升测试效率和覆盖率的小实践。欢迎洽谈~如有业务需求,详情请咨询客服。至周五9:30-18:30)关于腾讯WeTest腾讯WeTest是腾讯官方推出的一站式品质开放平台。十余年质量管理经验,致力于质量标准建设和产品质量提升。腾讯WeTest为移动开发者提供兼容性测试、云真机、性能测试、安全防护等优秀的研发工具,为100多个行业提供解决方案,覆盖产品研发各个阶段的测试需求开发运营,经历上千款产品。.金牌专家团队通过5大维度41项指标,高度保障您的产品质量。关注腾讯WeTest,了解更多热门测试产品:WeTest腾讯质量开放平台-您的质量卫士专家
