近段时间,开展了关于测试工作的数字化建设,其实还是借鉴很多大厂提供的好的实践,分享给大家
- 一级数据:TestCycle 进度、Bug 解决情况、测试覆盖率(基于黑盒的测试覆盖率)
- 二级数据:Pipeline 是否均通过、Bug 解决情况、Bug 验证情况、近期 Bug 收敛趋势
- 三级数据:单元测试覆盖率、API 用例覆盖率、UI 用例覆盖率、Sonar 中 Bugs 数量、代码重复率、圈复杂度
使用场景:
- 当我要进行项目最后结论时,我会看
- TestCycle 是否都测试完成
- Bug 是否都解决
- 测试覆盖率是否达标
- 当我要看一个项目的阶段状况以判断是否健康或者测试深度是否足够时,我会看
- Bug 总数(和历史对比的 Bug 总数)
- Bug 解决情况(解决速度)
- Bug 验收情况(验收速度)
- 近期 Bug 收敛趋势
- CI(Pipeline)通过率
- 当我要时刻判断测试深度以及质量建设时,我会看
- 单元测试覆盖率
- API 测试覆盖率
- UI 测试覆盖率
- Sonar 大盘中的各种数据
推荐工具:
- Sonar + Jacoco
- 达到效果:
- 明确代码层面质量
- 明确单元测试覆盖率
- 明确黑盒测试覆盖率(需要注意一套 Sonar、一个工程只能度量一个测试覆盖率,要么单元级别,要么黑盒,所以要解决这个问题,就用两套 Sonar 或者 1 套 Sonar 每个工程 2 个)
- Jira(配合 Jira 的 Zephyr 插件,可以管理测试用例,创建 TestCycle)
- 达到效果:
- 当这些能结合到一起时,你懂的,可分析的点和深度太棒了
- 自研的自动化平台
- 达到效果:
- 数据度量,各种自动化率,如果我们通过其他手段来度量,那么工具级别的自动化建设也是可行的
Demo Show
↙↙↙阅读原文可查看相关链接,并与作者交流