应该使用AssertNull或AssertNotNull

时间:2011-08-19 15:04:49

标签: java junit

这是一个非常愚蠢的问题,但我第一次进行单元测试: 假设我有一个像obj这样的对象变量,如果这个obj是Null,我希望我的单元测试失败。 所以对于断言,我应该说AssertNull还是AssertNotNull?我对他们的名字感到困惑。

4 个答案:

答案 0 :(得分:118)

使用assertNotNull(obj)assert表示must be

答案 1 :(得分:10)

AssertNotNull()方法的意思是“传递的参数不能是null”:如果它为null,则测试用例失败。
AssertNull()方法的意思是“传递的参数必须为null”:如果它不为null,则测试用例失败。

String str1 = null;
String str2 = "hello";              

// Success.
AssertNotNull(str2);

// Fail.
AssertNotNull(str1);

// Success.
AssertNull(str1);

// Fail.
AssertNull(str2);

答案 2 :(得分:5)

assertNotNull断言该对象不为null。如果它为null,则测试失败,因此您需要它。

答案 3 :(得分:0)

我只想补充一点,如果您想编写特殊文本(如果它为null,则比您这样写

  Assert.assertNotNull("The object you enter return null", str1)