是JDK断言必须使用?

时间:2015-09-04 05:33:44

标签: unit-testing

我读了一本书说“使用assert测试内部代码是有意义的。例如:

private String welcome(String name) {
  assert name!=null && !name.isEmpty() : "name must be specified";
  return "Hello, " + name;
}

” 然后这本书介绍了联合测试。我想知道是否有必要使用assert甚至联合测试? 谢谢。

1 个答案:

答案 0 :(得分:0)

单元测试根据某些状态和您提供的参数验证部分代码的行为。

在运行时,任何可能的值(正确类型)都可以传递给您的方法,这就是您每次执行assert的原因。如果您希望编程在收到不受支持的参数时终止执行,那么assert对此有用。

你可能还想看看抛出一个IllegalArgumentException,因为这具体描述了出了什么问题。