Junit单元测试

来源:互联网 发布:转运四方 知乎 编辑:程序博客网 时间:2024/06/06 02:06

1.导包

        <dependency>            <groupId>junit</groupId>            <artifactId>junit</artifactId>            <version>4.12</version>        </dependency>

2.一般测试
定义测试类,在测试方法加入@Test注解。

public class TestData {    @Test    public void testValueSet() throws Exception {        //测试代码    }}

如果引入了spring-boot-starter-test这个包,判定测试结果会比较容易,因为这个包内有hamcrest-core-1.3.jar、hamcrest-library-1.3.jar封装了很多断言种类。直接静态引入就可以使用。

import static org.junit.Assert.*;import static org.hamcrest.Matchers.*;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>assertThat(T actual, Matcher<? super T> matcher);assertTrue(boolean condition);.... ...

@BeforeClass 在测试方法、测试类之前运行,@AfterClass是在之后运行,只运行一次。绑定方法只能是以public static void开头。而@After和@Before是在每个方法运行前都会执行。

3.maven如何给单元测试传参数
mvn clean install -Dname=XXX
Java通过System.getProperty(“name”);即可取到。

4.单元测试调用私有方法、操作成员变量等(反射机制)

Class service = MyClass.class;Field field = service.getDeclaredField("Field Name");field.setAccessible(true);//访问私有方法或变量的关键field.set(instance, new);//在实例instance内改变字段的值>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>Method targetMethod = service.getDeclaredMethod("Method Name", String.class, ValidatorModel.class);//方法名、参数类型...targetMethod.setAccessible(true);
原创粉丝点击