首先,我不认为这是重复 of 其他问题 on 单元测试。我所寻求的帮助是向一个由程序员、分析师、经理和测试人员组成的团队阐述其价值。通过自动测试,我不认为我需要区分单元测试(例如JUnit)、BDD (例如JBehave、Fitness)和UI (Selenium,Watir),因为我认为它们都提供了相似的价值(但可以自由地写出不同意的答案:)
下面是我确定的列表,我正在寻找有助于扩展或改进的答案:
发布于 2011-06-30 15:39:59
我的一些想法:
发布于 2011-06-30 12:31:18
有一点是有一定价值的:自动化测试可以连续运行,比如在重建或类似的过程中每小时一次。这样做会迫使程序员在几个小时或几天内迅速打开错误的代码,从而使上下文切换更加容易。持续测试的第二个好处是它迫使您将测试保持在工作状态;没有什么比花费测试周期的第一周修复所有过期测试更乏味的了。如果您可以自动化它们,那么您可以随时运行它们&通过定期运行它们,您可以在测试中捕获bug或快速编写代码。
发布于 2011-06-30 23:55:09
测试费用
一旦编写了自动测试,计算机就可以以几焦耳的代价运行它。等效的手动测试要求薪资上的人员编写一份指令列表。
试验可靠性
每次都可以信任计算机忠实地执行相同的测试过程。人容易犯错误而变得懒惰。
计算机的测试故障模式也更加明显--它崩溃了(测试报告停止出现),它有一个小错误导致了一个错误的测试结果(再次运行一个确定性的测试,结果不同)。如果一个人错过了一步,并检查了"OK",我们怎么知道呢?
试验耐久性
自动化测试必须是一个具体的工件(例如,一段代码)才能运行,并且自然包含在其他软件开发构件--源存储库中。手工测试可以由测试人员在一张便笺纸上进行,但永远不会正式化。企业更有可能需要适当的流程来确保这种情况不会发生。
测试值
计算机可以编程,以一致的,容易分析的形式输出测试结果。该人员要么正在进行数据输入以生成相同的内容,要么正在记录需要分析人员、开发人员或经理消化的免费格式注释。
https://softwareengineering.stackexchange.com/questions/90015
复制相似问题