用Java进行单元测试 - 它是什么?

Eug*_*neP 19 java junit unit-testing

你能用几句话解释一下:

  1. 为什么我们需要它/为什么它们让我们的生活更轻松?
  2. 如何进行单元测试[Java中的简单示例]?
  3. 什么时候我们不需要它们/类型的项目我们可以退出单元测试?
  4. 有用的链接

Kim*_*m L 13

  1. 因为这证明了应用程序实际上是按预期工作的.您还会发现回归错误更容易.测试变得更容易,因为您不必手动完成所有可能的应用程序状态.最后,即使您手动测试了代码,您也很可能会发现甚至不知道存在的错误.

  2. 谷歌为junit

  3. 如上所述,应始终编写单元测试,这是您证明应用程序按预期工作的证据.有些东西不能或可能难以测试,例如图形用户界面.这并不意味着不应该测试GUI,它只意味着你应该使用其他工具.

  4. 见第2点.

  • "这是你的证明,该应用程序按预期工作".这是一种非常常见的误解.他们所证明的只是一个特定的"单位"按预期工作(而非申请).当集成许多单元时,仍然存在集成错误的范围,其中多个单元的行为不是预期的,尽管单个单元具有100%的成功.这并不是说单元测试本身并不是非常有用. (4认同)
  • 除了"google it"之外的好答案 (2认同)

Her*_*ans 13

为什么我们需要它/为什么它们让我们的生活更轻松?

  • 它允许您检查您正在测试的代码片段的预期行为,作为它必须满足的合同.
  • 它还允许您安全地重新分解代码而不会破坏它的功能(合同).
  • 它允许您通过在纠正错误后实施单元测试来确保错误修复保持不变.
  • 它可以作为编写分离代码的一种方法(如果在编写代码时考虑到了测试).

如何进行单元测试[Java中的简单示例]?

有关详细信息,请查看JUnit网站和JUnit cookbook.编写JUnit测试用例并不多.实际上,提出好的测试用例肯定比实际实现更难.

什么时候我们不需要它们/类型的项目我们可以退出单元测试?

不要尝试测试类中的每个方法,而是专注于测试类的功能.例如豆,你不会为getter和setter编写测试...

链接

JUnit - 单元测试

EclEmma - 测试覆盖率工具

链接文本 - 维基百科链接到单元测试