@ActiveProfiles(profiles = "test") 在测试类上面指定profiles,能够改变当前spring 的profile,来达到多环境的测试spring
打包测试:多个测试用例类,我不能每一个类都点击进去,而后慢慢执行,SpringBoot提供了打包测试的方式:咱们用一个类,把全部的测试类整理进去,而后直接运行这个类,全部的测试类都会执行。 我这里建了两个测试类,分别是EntFileTest,EntFileTest2,如今我打包进TestSuits,让他们一次运行:bash
import org.junit.runner.RunWith;
import org.junit.runners.Suite;
@RunWith(Suite.class)
@Suite.SuiteClasses({EntFileTest.class,EntFileTest2.class})
public class AllTest {
//不用写代码,只须要注解便可
}
复制代码
指定测试类而且测试方法失败时继续执行maven
mvn -X clean test -Dmaven.test.failure.ignore=true -D test=AllTest
复制代码
例子:测试
@RunWith(SpringRunner.class)
@SpringBootTest
@Transactional//开启事物
@ActiveProfiles(profiles = "stg1")//指定环境配置
public class MyServiceTest {
@Rollback(false)//不回滚
@Test
public void testGetData(){
}
}
复制代码
@RunWith: 该注解标签是Junit提供的,用来讲明此测试类的运行者,这里用了SpringRunner,它实际上继承了 SpringJUnit4ClassRunner类,而 SpringJUnit4ClassRunner这个类是一个针对Junit 运行环境的自定义扩展,用来标准化在Springboot环境下Junit4.x的测试用例 @SpringBootTest 为 springApplication建立上下文并支持SpringBoot特性ui