单元测试Junit4

单元测试

单元测试即所谓的白盒测试,跟main方法差不多,不过更加的方便,更能提交效率

这里记录的是用idea进行单元测试,eclipse大概就是快捷键不一样了,其他都是一样的

我们这里用的是junit4进行单元测试

进行单元测试,一般都建立一个与src同级的test目录,用来放进行单元测试的类,用于跟业务代码的区分

用junit测试需要导入的jar

  1. junit-4.12.jar
  2. hamcrest-core-1.3.jar

具体的步骤如下:
0. 导入jar包

  1. 创建一个与src平级的tests目录

  2. 创建一个类,并实现一个功能函数

  3. 右键- go to - Test,选择 create new Test 或者 ctrl + shift + t ,选择create new Test

  4. 最上面的Testing Library 选择JUnit4,最下面的选择要测试的方法

  5. 在test中生成的类中,调用要测试的方法

  6. 运行测试方法,点击方法旁边的图标,如果运行出现绿色的条则该方法测试通过,有三种运行方法:

    1. run
    2. debug
    3. run wth coverage (会显示方法执行的详细信息)

同时运行多个测试类,可以使用测试套件:suite,使用的方式是创建一个空类,使用注解的方式,把要一起执行的测试类作为参数传入空类中,执行空类就会执行传入的测试类,使用方法如下:

package com.manager.junit;
import org.junit.runner.*;
import org.junit.runners.Suite;

@RunWith(Suite.class)
@Suite.SuiteClasses({JunitTest.class})
public class SuitTest {

}

报错:junit4的报错方式有两种:error 和 failure

error指的是被测试方法有错误

failure指的是被测试方法没有错误,但是执行结果不正确,导致测试方法失败,或者测试方法本身有错误

注解:
@Test 标注该方法是测试方法

@Test(param) 注解可以传入参数,常用的如excepted="异常的类名",timeout="int" 测试类执行的限制时间,超出时间也算是测试失败

@Ignore 一个类中存在多个测试方法,如果执行这个测试类,该注解可以让标注的方法跳过执行

@Ignore("String") 标注的方法会跳过执行,但是会打印出输入的字符串

@BeforeClass 在所有的测试方法执行前执行

@before 在每一个测试方法执行前执行一次

@after 在每一个测试方法执行完后执行一次

@AfterClass 在所有的测试方法执行完后执行

不积跬步无以至千里
原文地址:https://www.cnblogs.com/jinxiuze/p/8119211.html