Bas*_*stl 5 java unit-testing clover
我目前正在评估三叶草,并想知道如何最好地使用它.首先,我想了解它在概念上是如何运作的.
1)仪器是什么意思?测试调用是否附加到实现的语句中?
2)这是怎么做到的?这些测试实际上是用一些花哨的执行上下文(类似于JRebel)执行的吗?还是更像静态分析?
3)在"三叶草运行"之后,一些数据库被保存到磁盘,并在此基础上生成报告吗?DB格式是否可访问?我的意思是我可以在其上启动我自己的分析,例如使用我自己的报告工具吗?数据库包含哪些信息?我能看到测试和实现之间的映射吗?
4)是否有其他工具可以找到测试和实现之间的映射?不只是数字,而是测试,实际上涵盖了一行代码......
谢谢,巴斯特尔.
这是怎么做到的?这些测试实际上是用一些花哨的执行上下文(类似于JRebel)执行的吗?还是更像静态分析?
在Clover的代码检测期间,它检测哪些方法是测试方法(默认情况下它识别JUnit3/4和TestNG).这些方法获得额外的仪器指令.简而言之,进入测试方法通常会实例化专用覆盖记录器,该记录器专门测量该测试的覆盖范围.有关Clover中每种测试记录策略的更多信息:
在"三叶草运行"之后,一些数据库被保存到磁盘,并在此基础上生成报告吗?
Clover数据库(clover.db)包含有关代码结构(包,文件,类,方法,语句,分支)的信息,还包含有关测试方法的信息.还有单独的覆盖记录文件(在运行时产生),其包含关于给定代码元素的"命中"数量的信息.Clover支持全局覆盖(即整个运行)以及每个测试覆盖(即来自单个测试的覆盖).
更多信息在这里:
DB格式是否可访问?
API仍处于开发阶段(https://jira.atlassian.com/browse/CLOV-1375),但有可能获得基本信息.看到:
有关数据库模型和代码示例的更多详细信息.
但问题是:你真的需要手动读取这个数据库吗?你写道:
我能看到测试和实现之间的映射吗?
这样的映射已经由Clover提供 - 例如,在HTML报告中,如果单击源行,它将弹出一个测试方法列表.
PS:我是Atlassian的Clover开发人员,如果您有任何疑问,请随时与我联系.
| 归档时间: |
|
| 查看次数: |
6927 次 |
| 最近记录: |