SpringBoot(SpringCloud) Junit Test 测试类指定使用的yml配置文件

    最近遇到了一个需求,需要在 JunitTest 中,解析excel,并导入到数据库。项目的系统已经微服务化了,拥有 poi 的 jar 包的微服务 和 拥有数据库访问API 的微服务不是同一个。微服务项目的 appplication.yml 拥有多个不同的 profile (application-dev.yml application-test.yml  等等),在自己写的 JunitTest 类中,需要显示的指定生效的 profile。

    话不多说,直接上代码。

@RunWith(SpringRunner.class)
/**  指定当前生效的配置文件( active profile),如果是 appplication-dev.yml 则 dev   **/
@ActiveProfiles("dev")

/** 指定  @SpringBootApplication  启动类 和 端口  **/
@SpringBootTest(classes = FileManagementServiceApplication.class, webEnvironment = SpringBootTest.WebEnvironment.RANDOM_PORT)
public class ExcelParseTest {

	private Logger logger = LoggerFactory.getLogger( ExcelParseTest.class );



	@Value("${logging.level.root}")
	private String level ;

	@LocalServerPort
	private String port;

	@Test
	public void myTest(){
		System.out.println("11111");
		System.out.println("\n level :"+  level +"\n");
		System.out.println("\n port :"+  port +"\n");

    }
}

运行效果,junit 测试类 成功的获取了 application-dev.yml 中配置得 日志级别 和 端口

2018-12-04 09:46:57,983 60777 INFO  [main] org.springframework.boot.context.embedded.tomcat.TomcatEmbeddedServletContainer - Tomcat started on port(s): 8814 (http)
2018-12-04 09:46:57,984 60778 INFO  [main] o.s.cloud.netflix.eureka.serviceregistry.EurekaAutoServiceRegistration - Updating port to 8814
2018-12-04 09:46:58,055 60849 INFO  [main] hzjtest.ExcelParseTest - Started ExcelParseTest in 57.618 seconds (JVM running for 63.995)
11111

 level :INFO


 port :8814

 

  • 9
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值