當(dāng)前位置:
首頁(yè) >
前端技术
> javascript
>内容正文
javascript
Bug整理——Spring boot 执行Junit Test时不加载Application中的参数的问题
生活随笔
收集整理的這篇文章主要介紹了
Bug整理——Spring boot 执行Junit Test时不加载Application中的参数的问题
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在我們的項(xiàng)目中,需要在Application中設(shè)置幾個(gè)系統(tǒng)參數(shù)才能正常打印日志,所以在Application.java中,我們是這么寫(xiě)的:
@EnableTransactionManagement @SpringBootApplication @EnableCasClient @ComponentScan(basePackages={"com.test"}) public class Application {public static void main(String[] args) throws Exception {System.setProperty("aaa","bbbb");SpringApplication.run(Application.class, args);} }需要設(shè)置一個(gè)aaa = bbb,但是在執(zhí)行test時(shí),每次get時(shí),卻發(fā)現(xiàn)是不正確的。后來(lái)經(jīng)過(guò)排查,在跑test時(shí),是不執(zhí)行這個(gè)main方法的,所以才不會(huì)設(shè)置上,所以開(kāi)始我是這么修復(fù)的:
???? @Test public void update(){System.setProperty("aaa","bbbb");//TODO 寫(xiě)自己的test邏輯 }發(fā)現(xiàn)還是不對(duì)!!!
然后又意識(shí)到其實(shí)這里的代碼只有執(zhí)行后才會(huì)生效,而我的getProperty的邏輯在config中,所以仍然獲取不到、
最后得出結(jié)論,需要在使用這個(gè)property參數(shù)之前設(shè)置。(好像廢話(huà)一樣....)
在configuration的代碼中加載是最好的,最先被執(zhí)行。
總結(jié)
以上是生活随笔為你收集整理的Bug整理——Spring boot 执行Junit Test时不加载Application中的参数的问题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Java中重写equals()方法时注意
- 下一篇: Bug整理——阿里Ons高版本引入后Sp