简介
JUnit 是一个用于Java 编程语言的 单元测试 框架和 回归测试 框架。
JUnit的特点:
- 开放的资源框架
- 提供注释来识别测试方法
- 提供断言来测试预期结果
- 提供测试运行来运行测试。
- 运行速度快,优雅简洁
- 可以自动运行并且检查自身结果并提供即时反馈
断言是JUnit中主要的功能,在JUnit中所有的断言都包含在 Assert 类中。
Assert类中主要方法如下:
方法名方法描述assertEquals断言传入的预期值与实际值是相等的assertNotEquals断言传入的预期值与实际值是不相等的assertArrayEquals断言传入的预期数组与实际数组是相等的assertNull断言传入的对象是为空assertNotNull断言传入的对象是不为空assertTrue断言条件为真assertFalse断言条件为假assertSame断言两个对象引用同一个对象,相当于“==”assertNotSame断言两个对象引用不同的对象,相当于“!=”assertThat断言实际值是否满足指定的条件注意:上面的方法都为Assert的静态方法,通过Assert.xxx
调用,如果需要直接调用,需要加上 import static org.junit.Assert.*;
在JUnit中通过@BeforeClass
、@Before
、@Test
、@After
和@AfterClass
注解来确定执行顺序。
@beforeClass()
注解的方法首先执行,并且只执行一次。@afterClass()
注解的方法最后执行,并且只执行一次。@before()
注解的方法针对每一个测试用例执行,但是是在执行测试用例之前。@after()
注解的方法针对每一个测试用例执行,但是是在执行测试用例之后。@Test
在 before() 方法和 after() 方法之间,执行每一个测试用例。执行顺序根据代码位置来决定
示例如下:
@BeforeClass
public static void beforeClass() {
System.out.println("in before class");
}
//execute only once, in the end
@AfterClass
public static void afterClass() {
System.out.println("in after class");
}
//execute for each test, before executing test
@Before
public void before() {
System.out.println("in before");
}
//execute for each test, after executing test
@After
public void after() {
System.out.println("in after");
}
//test case 1
@Test
public void testCase1() {
System.out.println("in test case 1");
}
//test case 2
@Test
public void testCase2() {
System.out.println("in test case 2");
}
结果如图:
下面是我们要测试的加密程序
public class Encryption {
/**
* 加密程序,算法是将字符串反转,如 abc 会转为为 cba
* @param content
* @return
*/
public static String encryption(String content){
if (content == null)throw new NullPointerException();
if (content.length()
关注
打赏
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?