你应该知道一点JUnit测试框架

本文介绍了JUnit测试框架中重要的注解,包括@Before、@After、@BeforeClass和@AfterClass的执行顺序,并通过实例展示了如何进行单元测试。同时,文章讲解了断言的概念,它是测试中用于验证预期结果的重要手段。
摘要由CSDN通过智能技术生成

JUnit测试,即单元测试,学会它的简单使用,这是作为一个Java后端程序员应该有的职业素养。

JUnit测试中要注意的几个注解

在JUnit测试中,你需要注意以下几个注解。
在这里插入图片描述
为了给大家演示JUnit测试中以上注解的使用,我首先定义出一个Person类。

package cn.liayun.juint;

public class Person {
	
	public void run() {
		System.out.println("run!!");
	}
	
	public void eat() {
		System.out.println("eat!!");
	}
}

接下来,再定义一个Person类的测试类:

package cn.liayun.juint;

import org.JUnit.After;
import org.JUnit.Before;
import org.JUnit.Test;

//Person类的测试类
public class PersonTest {
	
	private Person p;
	
	@Before
	public void before() {//方法名是什么无所谓
		System.out.println("before"); // 测试方法之前,提前初始化一些资源
		p = new Person(); 
	}
	
	@Test
	public void testRun() {
		p.run();
	}
	
	@Test
	public void testEat() {
		p.eat();
	}
	
	@After
	public void after() {//方法名是什么无所谓
		System.out.println("after"); // 测试方法完了之后需要释放一些资源
		p = null;
	}

}

小伙伴们,那该如何进行测试呢?很简单的,选中需要测试的方法或将光标移到其上,右键→Run As→Juint Test即可,如下:
在这里插入图片描述
此时若在Juint视图中显示绿条(如下图),即代表测试通过,若显示为红条,即代表测试不通过。
在这里插入图片描述
那么,如果要运行该类中所有的测试方法,又该怎么办呢?可选中该类或将光标移到其上,右键→Run As→Juint Test即可。运行结果为,
在这里插入图片描述
从上面的运行结果来看,@Before注解在跑每一个测试用例的时候都会执行一次@Before部分的代码,同理,@After注解对于每一个测试用例都要执行一次。
我们再来观察以下代码,与上面的代码有何区别?

package cn.liayun.juint;

import org.JUnit.AfterClass;
import org.JUnit.BeforeClass;
import org.JUnit.Test;

//Person类的测试类
public class PersonTest2 {
	
	@BeforeClass
	public static void beforeClass() {//该方法在类加载的时候运行
		System.out.println("beforeClass");
	}
	
	@Test
	public void testRun() {
		Person p = new Person();
		p.run();
	}
	
	@Test
	public void testEat() {
		Person p = new Person();
		p.eat();
	}
	
	@AfterClass
	public static void afterClass() {
		System.out.println("afterClass");
	}
	
}

大家可以试着运行该类中所有的测试方法,那么结果就是:
在这里插入图片描述
从上面的运行结果来看,@Beforeclass注解在类中只会被执行一次,@Afterclass注解在所有测试用例执行完才执行一次。
知道了在JUnit测试中需要注意的几个注解之后,可以得出结论:

  1. 一个JUnit4的单元测试用例执行顺序为:
    在这里插入图片描述
  2. 每一个测试方法的调用顺序为:
    在这里插入图片描述

断言

首先简单介绍一下断言,用大白话说,断言就是判断某个东西是否是你想要的。
为了演示断言,修改Person类的描述为:

package cn.liayun.juint;

public class Person {
	
	public String run() {
		System.out.println("run!!");
		return "1";
	}
	
	public void eat() {
		System.out.println("eat!!");
	}
}

接下来,再定义一个Person类的测试类:
在这里插入图片描述
当然,断言的方法还有很多很多,如:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李阿昀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值