参数异常应该是单元测试的吗?

The*_*DER 5 unit-testing design-by-contract exception

我知道这个问题与以前发布的其他问题非常相似,但我想以适当的方式讨论这个话题.

你认为"明显的"例外应该进行单元测试吗?

明显的异常我的意思是例如由于空参数或空字符串或负数而导致的异常,在我们单元的业务逻辑使我们明白这些异常将始终在我们的方法的开头被抛出之前操作.

换句话说,我说的是违反类合同最简单部分后应该抛出的异常.

谢谢您的意见.

Ron*_*onU 8

绝对.你称之为"显而易见",但记住验证前置条件并没有什么明显之处.事实上,我在职业生涯中看到的大多数代码都没有采取这一明显的措施来防止以后的混乱.

虽然你在为公共消费,重用等编写的库代码中看到了很多,但是记住将这些检查放入自己的代码中似乎经常被大多数开发人员忽略.在测试驱动的环境中,为这些条件进行测试会迫使开发人员正确验证其公共方法的输入参数.

让我们公平......任何机会我都可以写另一个测试并看到绿色的酒吧,我很高兴.:)


Grz*_*nio 1

我通常会包含这些测试。它实际上是开始开发的好地方,因为如果您使用 TDD,您可以进行最简单的测试来开始编写生产代码,如果您不使用 TDD,您也可以很好地通过测试:)