Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unit testing CI服务器上的测试和覆盖步骤之间的差异_Unit Testing_Continuous Integration_Code Coverage - Fatal编程技术网

Unit testing CI服务器上的测试和覆盖步骤之间的差异

Unit testing CI服务器上的测试和覆盖步骤之间的差异,unit-testing,continuous-integration,code-coverage,Unit Testing,Continuous Integration,Code Coverage,当我运行我的覆盖范围试图迫使我们的团队应用专用的阈值标准时,我们只是开始设置阈值。 我的问题是,是否需要单独的测试和覆盖步骤?在我看来,他们在做完全相同的事情?我在考虑将这两个步骤加入到测试覆盖率中,这有意义吗 单独运行测试和覆盖率的一个原因是,测量覆盖率需要更改程序以支持收集覆盖率信息 在Java中,Jacoco和Cobertura都将修改类文件的字节码,以添加指令来记录覆盖率。在C++中,使用GCOV来测量覆盖率,您可以编译具有不同标志的二进制文件到用于创建释放二进制文件的二进制文件。 因此

当我运行我的
覆盖范围
试图迫使我们的团队应用专用的阈值标准时,我们只是开始设置
阈值
。 我的问题是,是否需要单独的
测试
覆盖
步骤?在我看来,他们在做完全相同的事情?我在考虑将这两个步骤加入到测试覆盖率中,这有意义吗


单独运行测试和覆盖率的一个原因是,测量覆盖率需要更改程序以支持收集覆盖率信息

在Java中,Jacoco和Cobertura都将修改类文件的字节码,以添加指令来记录覆盖率。在C++中,使用GCOV来测量覆盖率,您可以编译具有不同标志的二进制文件到用于创建释放二进制文件的二进制文件。 因此,对发布工件运行测试以获得对发布工件行为正确的信心是有意义的。然后,在单独的运行中针对插入指令的工件测量覆盖率


当然,可以假设启用覆盖的工件在功能上等同于发布工件。因此,不需要运行两次测试。这取决于您(和您的公司)对风险的态度,您可以决定运行测试两次(有覆盖和无覆盖),或者一次启用覆盖。

感谢您的解释,一定会让您了解这个主题谢谢。