0
我對Spring Boot很陌生,試圖學習如何在Spring Boot中完成測試。我閱讀了有助於集成測試應用程序的@SpringBootTest批註。我想知道如何在春季啓動時進行單元測試。單元測試是否需要指定@SpringBootTest批註或僅用於集成測試?是否有特定的註釋用於單元測試?春季啓動中的單元測試
任何指針將不勝感激。提前致謝!
編輯: SpringBootTest註釋僅用於集成測試嗎?我在Spring文檔中找到以下代碼示例:
@RunWith(SpringRunner.class)
@SpringBootTest
@AutoConfigureMockMvc
public class HelloControllerTest {
@Autowired
private MockMvc mvc;
@Test
public void getHello() throws Exception {
mvc.perform(MockMvcRequestBuilders.get("/").accept(MediaType.APPLICATION_JSON))
.andExpect(status().isOk())
.andExpect(content().string(equalTo("Greetings from Spring Boot!")));
}
}
這是一個單元還是集成測試?我的猜測是它不是一個集成測試,因爲它使用了MockMvc。是對的嗎?如果是這樣,這是否意味着@SpringBootTest註釋可以用於不是完整的集成測試的測試?
你不需要任何特殊的單元測試。只需使用'new'來創建你的組件。 –
正如@JBNizet所說,你不需要任何特別的東西來在Spring Boot應用程序中對你的類進行單元測試。只需編寫代碼並運行測試類,就像您不使用Spring Boot一樣。 **但是,如果您想知道如何測試HTTP調用到您的端點**(這將是一個集成測試,而不是單元測試),我可以提供幫助;只是在你的帖子中這麼說。 – walen
感謝您的回覆,我知道Spring Boot提供了非常先進的集成測試功能。我知道Spring Boot提供了一個分片測試功能,可以對應用程序的各個組件進行測試。例如。 WebMvcTest註釋可用於測試控制器部分。這可以考慮單元測試嗎? – Reshma