Junit单元测试
- 概述:Junit是java语言编写的第三方测试框架(工具类)
- 作用:用来做单元测试——针对某个普通方法,可以像main()方法一样独立运行,它专门用于测试某个方法。
Junit的使用步骤
- 1.在模块下创建lib⽂件夹,把Junit的jar包复制到lib⽂件夹中
-
2. 选中 Junit 的 jar 包 , 右键选中 add as Library, 把 JUnit4 的 jar包添加到classPath 中
-
3. 在测试⽅法上⾯写上 @Test 注解
-
4. 执⾏测试⽅法
public class Person {
@Test
public void test1(){
System.out.println("Person test1 ⽅法执⾏了....");
}
@Test
public void test2(){
System.out.println("Person test2 ⽅法执⾏了....");
}
}
执行测试方法
-
1. 选中⽅法名 ---> 右键 ---> 选中执⾏ 只执⾏选中的测试⽅法
-
2. 选中类名 -----> 右键 ---> 选中执⾏ 执⾏该类中所有的测试方法
-
3. 选中模块 ---- -> 右键 ---> 选中 all tests 执⾏ 执⾏该模块中所有的测试⽅法
-
如何查看测试结果
- 绿⾊:表示测试通过
- 红⾊:表示测试失败,有问题
Junit单元测试的注意事项
- 测试方法的权限修饰符一定是public
- 测试方法的返回值类型一定是void
- 测试方法一定没有参数
- 测试方法一定灭有参数
Junit其他注解
-
@Before :⽤来修饰⽅法,该⽅法会在每⼀个测试⽅法执⾏之前执⾏⼀次。
-
@After :⽤来修饰⽅法,该⽅法会在每⼀个测试⽅法执⾏之后执⾏⼀次。
-
@BeforeClass :⽤来静态修饰⽅法,该⽅法会在所有测试⽅法之前执⾏⼀次,⽽且只执⾏⼀次。
-
@AfterClass :⽤来静态修饰⽅法,该⽅法会在所有测试⽅法之后执⾏⼀次,⽽且只执⾏⼀次。
public class Test {
//Junit单元测试
@org.junit.Test
public void test1(){
System.out.println("Test test1 方法执行了。。。");
}
@org.junit.Test
public void test2() {
System.out.println("Test test2 方法执行了。。。");
}
//@Before:用来修饰方法,该方法会在每一个测试方法执行之前执行一次
//@After:⽤来修饰⽅法,该⽅法会在每⼀个测试⽅法执⾏之后执⾏⼀次。
//@BeforeClass:⽤来静态修饰⽅法,该⽅法会在所有测试⽅法之前执⾏⼀次,⽽且只执⾏⼀次
//@AfterClass:⽤来静态修饰⽅法,该⽅法会在所有测试⽅法之后执⾏⼀次,⽽且只执⾏⼀次。
@Before
public void b1(){
System.out.println("b1方法执行了");
}
@After
public void a1() {
System.out.println("a1方法执行了");
}
@BeforeClass
public static void b2(){
System.out.println("b2方法执行了");
}
@AfterClass
public static void a2(){
System.out.println("a2方法执行了");
}
}
Junit断言
断言:预先判断某个条件是否成立,如果条件不成立则直接报错 。使用Assert类中的assertEquals()方法
案例:
public class Test01 {
//Junit断言
/*
* 断⾔:预先判断某个条件是否成⽴,如果条件不成⽴,则直接报错。 使⽤Assert类中的assertEq
* */
@Test
public void addTest(){
//测试
int add = add(3,6);
Assert.assertEquals(18,add);
}
public int add(int a,int b) {
int sum = a*b;
return sum;
}
}