覆盖率作为衡量测试质量的重要指标。由于目前的覆盖率都是基于文件存储的,最终只能输出多次调用后的整体覆盖率,而不能反应某次调用的真实情况,而这才是我们最需要的(流量打标)。
1. 支持流量打标,可查看单条用例的覆盖率,不同测试途径(手工,自动化,流量回放)的覆盖率
2. 支持多语言:目前支持Java,PHP
3. 支持不同分支commit的方法合并(解决jacoco中一行改动,整个类需要重新覆盖的问题)
4. 支持二方包覆盖率报告(开发写的sdk)
5. 结合代码静态解析技术,支持查看接口维度的覆盖率
6. 支持增量、全量覆盖率
项目分三个部分:
1. agent: 利用字节码技术,动态插装,实现执行数据上报
2. 服务端:负责数据的存储,以及覆盖率的计算,以及调用接口及调用链路的解析
3. 前端: 负责执行记录的渲染
我主要负责agent和服务端部分