`

junit学习(三)——junit测试失败的两种情况

阅读更多

junit测试失败的两种情况:一个是Failure,一个是Error

先上测试代码:

package com.wjl.junit;

import static org.junit.Assert.*;

import org.junit.Test;
/**
 * Junit_demo_3
 * 实验测试失败两种情况
 * **/
public class ErrorAndFailureTest {
	@Test
	public void testAdd() {
		assertEquals(5,new Calculate().add(3, 3));
		//预期值为5,计算出来的是6
	}

	@Test
	public void testDivide() {
		assertEquals(2,new Calculate().divide(6, 0));
		//0不能作为除数
	}
}

当Junit Test第一个方法testAdd时将会出现第一种情况,即Failure:

这是因为我给定的与其结果为5而实际的计算结果为6,两个结果不一致导致的。也就是当程序输出的结果与我们预期的不一样时就会出现Failure。

 

另一种情况:当Junit Test 执行第二个方法testDivide时将会出现Error:

这是因为0不能作为除数,而我却让0作为除数且没有进行任何异常的捕获。也就是当代码本身出现错误时会出现Error。

 

总结

1、Failures一般由单元测试使用的断言方法判断失败所引起的,这表示测试方法发现了问题,就是说程序输出的结果与我们预期的不一样。
2、Errors是由代码异常引起的,它可以产生于测试代码本身的错误,也可以是被测试代码中的一个隐藏bug
3、测试用例不是用来证明你是对的,而是用来证明你没有错。

 

最后,感谢老师的分享!

  • 大小: 112.9 KB
  • 大小: 99 KB
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics