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

本文介绍了JUnit测试中可能出现的两种失败情况:Failure和Error。Failure通常由于断言失败,即程序输出与预期结果不符;而Error则源于代码异常,如运行时错误或隐藏的bug。测试用例的主要目的是确保代码无误,而非验证正确性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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、测试用例不是用来证明你是对的,而是用来证明你没有错。

 

最后,感谢老师的分享!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值