【笔记】JunitTest的Failure和Error

博客中的部分字句引自慕课网的《JUnit-Java单元测试必备工具》公开课程。


JunitTest结果有Runs,Errors和Failures三个显示状态。

其中Runs显示的是运行的测试用例数量,这里不再说明。

Error是由异常引起的,它可以产生与测试代码本身的错误,也可以是被测试代码中的一个隐藏的bug。

Failure一般由单元测试使用的断言方法判断失败所引起的,这就表示测试点发现了问题,就是说程序输出的结果和我们预期的不一样。

如下两段代码:

@Test
public void testAdd() {
	assertEquals(5, new Calculate().add(3, 3));
}

@Test
public void testDivide() {
	assertEquals(3, new Calculate().divide(6, 0));
其中,Calculate类中的add方法实现了两个参数相加,返回相加结果的功能,divide方法实现了两个参数相除,返回相除结果的功能。

第一个测试方法testAdd会产生Failures的状态,代码本身没有错误,但是测试运行的结果和我们预期的值不同。

(预期值是5,测试使用3+3)

第二个测试方法testDivide会产生Errors的状态,原因是在编译代码阶段抛出了“java.lang.ArithmeticException: / by zero”的异常。
测试结果如下图

【笔记】JunitTest的Failure和Error_第1张图片






【笔记】JunitTest的Failure和Error_第2张图片

你可能感兴趣的:(JAVA)