EagleBear2002 的博客

这里必须根绝一切犹豫,这里任何怯懦都无济于事

自动化测试-08-移动应用众包测试

背景

众包:利用群体力量来完成传统方法中成本高昂或耗时的大规模任务,是 Howe Jeff 于 2006 年在美国《连线》杂志上首次提出的一种商业模式。

众包测试流程

  • 申请上传:用户将自己的应用程序上传到众测平台,并指定相应的测试任务和酬劳信息。
  • 任务选择和环境设置:众测人员自由选择他们想要完成的任务。选择后测试人员从平台上下载应用程序进行测试。
  • 提交报告:众测人员根据选择的待测应用,对测试到的缺陷提交缺陷报告。
  • 生成最终测试报告:平台收集补充信息,生成最终的缺陷报告,包括:一般信息、设备信息、操作路径等。
  • 报告验证:客户将验证所有最终的缺陷报告,并决定如何酬劳每个提交报告的众包测试人员。

协作式众包测试

完成测试任务过程中进行信息共享与任务分配,用户在本系统中既承担测 试任务也承担审核任务,充分利用用户协作,完成目标任务。

  • 信息共享:用户在提交报告时进行实时相似报告推荐,避免重复报告提交。
  • 任务分配:审核页面推荐待审核的报告列表,测试页面推荐待测页面。
  • 协作方式:点赞点踩操作:利用用户的交叉审核,验证报告有效性。
  • 一键 Fork:Fork 他人结果后进行修改,利用多人协作提升报告质量。

众测报告质量优化

众测报告信息:

  • 缺陷截图
  • 文本描述:缺陷行为描述、复现步骤、期望行为
  • 测试环境信息

众测报告聚合

大量的测试报告——较多的重复数据:

  • 懒惰和缺乏经验的用户。
  • 测试报告搜索功能较差。
  • 偶然的重复——由于网络等原因不小心提交了多次。
  • 给开发者增加了许多工作量。
  • 不同的信息可以使开发者对 Bug 有一个更全面的了解。

解决方案:

  • Aggregator:对所有的测试报告做聚类,将相同的或相似的测试报告聚为同类。
  • Summarizer:对每一类测试报告做整合,将其中的相关信息以可视化的方式最大化的呈现给开发者。

众测报告排序

深度众测报告排序

众测报告半监督聚类

众测报告一致性检测

  • 众测工人能力与专业性参差不齐
  • 众测报告质量参差不齐
  • 众测报告质量的底线——截图与文本的一致性
  • 一阶段方法(多模态深度学习模型)的不足
  • 二阶段方法——现分类后检测