我有一個spring boot非web應用程序。@SpringBootApplication註解在JUnit測試中的效果
我已經爲我的應用程序添加了一些集成測試,可以很好地工作。
我的主課有@SpringBootApplication
註解,我的集成測試課用@RunWith(SpringRunner.class)
和@SpringBootTest
註解。
如果我改變我的主類註釋@Configuration
和@ComponentScan
和@EnableAutoConfiguration
更加明確,我的測試類給一個編譯時錯誤說,它不能檢測正在使用的課程之一,並迫使我添加更多的信息。
所以我必須改變註釋如下@RunWith(SpringRunner.class)
和@SpringBootTest(classes = EligibilityJobRunner.class)
。
我讀過@SpringBootApplication
是上述三個註釋的方便註釋,那麼爲什麼這個區別呢?非常感謝。
似乎在運行時的工作如果我添加@ SpringBootConfiguration而不是純@Configuration。但是由於某種原因,Intellij仍然顯示編譯時錯誤。 – NewQueries
IntelliJ的錯誤跟蹤器上有一個開放票證,可以更好地與Spring Boot集成,並且它仍在porgress中:https://youtrack.jetbrains.com/issue/IDEA-139669。我建議你也提到這個問題。 – Behrang