2017-05-25 99 views

回答

3

是的。 Actually it is default behavior。鏈接指向Spring Framework文檔,Spring Boot使用該文檔。

順便說一句,上下文在默認情況下也被重用,當使用@ContextConfiguration時也是如此。

+1

也許這是一個好主意,指向vicusbass文檔? https://docs.spring.io/spring-boot/docs/current/reference/html/boot-features-testing.html#boot-features-testing-spring-boot-applications –

+0

@SeanCarroll,是的。沒有這樣做,但分心,忘了回來。答案現在已更新。謝謝。 – luboskrnac

+0

你說得對。我在測試類上有'@ DirtiesContext',我誤解了它的作用。我將它移到了任何地方(無論如何都是在類設置中清理),測試運行速度提高了3分鐘,這就是30% – vicusbass

1
@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT) 

上面的註解說明了整個上下文被加載,並且在整個測試中使用了相同的上下文。這意味着它只加載一次。

Spring Boot提供@SpringBootTest註釋,當您需要Spring Boot功能時,它可以用作標準spring-test @ContextConfiguration註釋的替代方法。註釋的工作原理是通過在您的測試中使用SpringApplication創建ApplicationContext

+0

這就是我的測試配置。但是,我有'@ DirtiesContext'註釋,這就是重新啓動每個測試類的所有內容。 '@DirtiesContext(classMode = DirtiesContext.ClassMode.AFTER_CLASS)' 我在調查是否可以刪除它,但到目前爲止我看到表中有些問題 – vicusbass

相關問題