单元测试
什么是单元测试
单元测试是开发者编写的一小段代码,用于检验被测代码的一个很小的、很明确的功能是否正确。通常而言,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函数的行为。
构建单元测试
测试代码必须要做以下这几件事情:
- 准备测试所需要的各种条件(创建所有必须的对象,分配必要的资源等等)。
- 调用要测试的方法。
- 验证被测试方法的行为和期望是否一致
- 完成后清理各种资源
JUnit的各种断言
Junit提供了一些辅助函数,用于帮助你确定某个被测试函数是否工作正常。通常而言,我们把所有这些函数统称为断言。它让你可以确定:某条件是否为真;两个数是否相等,或者不等,或者其他一些情况。
assertEquals
|
|
这是使用得最多的断言形式。在上面的参数中,expected是你的期望值
(通常都是硬编码的),actual是被测试代码实际产生的值,message是~个 可选的消息,如果提供的话,将会在发生错误的时候报告这个消息。当然, 你完全可以不提供这个message参数,而只提供expected和value这两个值。
注意事项
书中的assertEquals方法已经不建议使用,建议使用assertArrayEquals方法