测试代码的理想时间表是什么?

时间:2009-07-07 08:36:53

标签: unit-testing language-agnostic testing

我目前正在处理关键的每月应付帐款报告。我刚刚写的这份报告将成为我的客户的基础,他将向他的供应商支付多少钱。到目前为止,我花了大约5个小时来构建自动化测试,到目前为止发现零错误。你觉得我已经花了太多时间测试吗?什么应该是测试的理想时间框架?

6 个答案:

答案 0 :(得分:3)

在编写函数规范后,编写测试代码时不需要花费“确切”数量的数字。既然你已经创建了几个测试用例,并且到目前为止遇到了最小/零错误,我会说你走在正确的轨道上。

当您添加更多代码或重构现有代码时,这些测试用例将充当“安全网”。

答案 1 :(得分:1)

我确实记得看到一些统计信息映射了测试不同项目的时间百分比。它大致在总开发时间的30%到50%之间变化,较小的项目占较小的百分比。这也符合我的经验。

此致

答案 2 :(得分:1)

理想情况下,您应该花尽可能少的时间编写测试,这意味着您的代码应该可以通过简单直接的单元测试来测试,并且您可以通过尝试减少代码的Cyclomatic complexity来实现这一目标。

因此,请尽量专注于编写需要尽可能少的单元测试的代码,简单干净的圆锥体,具有低的Cyclomatic复杂性。

编写测试或代码所花费的时间没有标准的时间比例,唯一的衡量标准是测试覆盖率,如果您的代码很简单,您的单元测试也会很简单,因此需要的时间更少,因此时间更短用完写单元测试将用完。

答案 3 :(得分:1)

开始测试代码变得非常重要之前。

我通常会在添加功能后立即开始测试功能。

答案 4 :(得分:1)

我尽量不用自动测试以外的任何东西来测试我的代码。当我构建我的功能时,不是在构建它时手动尝试,而是通过测试来尝试。这样就不会有你做过的任何工作了,之后你就有了测试。

之后我添加测试,因为我发现了错误,或者偶尔会覆盖我认为可能由粗心的维护者添加的错误。这个想法是为了帮助你而进行测试,而不是妨碍你!

答案 5 :(得分:1)

没有固定的时间用于测试。这有点像问“写任何功能多久合适?”这实际上取决于所写物品的复杂程度以及表面积的宽度。用户使用您的工具越多,您应该测试的越多。

测试任何面向最终用户的东西应该是两种: 1)自动化测试。回归测试,单元测试等 2)手动测试。等到你大部分时间都完成了,然后尝试按用户的意愿击中所有角落。您不会涵盖自动化测试中的所有内容,也可能不会注意到那里的副作用,因此您需要在发货前注意它。

不是决定花多少时间进行测试,而是决定您认为需要测试的内容并花费任何时间。