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 单元测试的效益研究_Unit Testing - Fatal编程技术网

Unit testing 单元测试的效益研究

Unit testing 单元测试的效益研究,unit-testing,Unit Testing,下午好。 是否有关于自动化(单元和集成)测试的好处的研究。 我试图向我的同事证明它是有用的,而且会继续下去 给公司带来利润,但在争论中我会 我想参考一下研究结果。在我以前的一位雇主那里,我们自己进行了这样的研究。然而,它并没有发表,但结果清楚地表明单元测试是有益的——从这个意义上说,考虑到整个开发周期,单元测试的成本超过了自身的成本。然而,参与研究的人员在单元测试方面受过培训,经验丰富,并渴望不断改进。这意味着,它们是以一种合理的方式应用单元测试的新方法(包括处理依赖关系等),更重要的是,它们是

下午好。 是否有关于自动化(单元和集成)测试的好处的研究。 我试图向我的同事证明它是有用的,而且会继续下去 给公司带来利润,但在争论中我会
我想参考一下研究结果。

在我以前的一位雇主那里,我们自己进行了这样的研究。然而,它并没有发表,但结果清楚地表明单元测试是有益的——从这个意义上说,考虑到整个开发周期,单元测试的成本超过了自身的成本。然而,参与研究的人员在单元测试方面受过培训,经验丰富,并渴望不断改进。这意味着,它们是以一种合理的方式应用单元测试的新方法(包括处理依赖关系等),更重要的是,它们是单元测试没有意义的新方法。也没有正式的覆盖目标,因此没有压力将单元测试应用到没有意义的领域

在测量成本和收益时,我们尽力做到中立,并考虑所有的努力,包括编写和运行测试的时间和分析结果、可重构的重构时间、训练时间、讨论时间(询问同事如何对某些功能进行单元测试)、在SUT改变时测试的维护时间等。在优点方面,我们记录了由于进行单元测试而在早期发现的bug数量

然而,我们看到,无论单元测试是否正确,它都会产生巨大的影响。这意味着,您可以在不带来预期缺陷减少的情况下,以增加开发工作的方式应用它。例如,在不同的组织单元中,开发团队被迫应用单元测试。然而,他们在对代码进行了大量调试之后才进行了单元测试。毫不奇怪,他们发现通过单元测试,他们不会发现预期的那么多bug。梅萨罗斯在上一次会议上也很好地讨论了“正确行事”的重要性

我们的研究结果表明,如果由熟练且有动机“正确地做”的人进行单元测试,那么单元测试是有益的,其中正确地做包括“非教条主义地”。如果执行单元测试的人仅仅是因为被迫,可能是因为正式的覆盖率目标,那么您可能会发现单元测试是没有好处的。

Compare(dupe?):