[英]Use of Mocking with Spring
我在 Spring 和 mockito 中使用 junit。當我們使用 Spring 時,我們必須加載 spring 配置文件。但是通過這樣做,我們獲得了所有真實對象。mockito 在這種情況下扮演什么角色?
如果我在使用 mockito 的測試用例中使用這個 @ContextConfiguration(locations = {"classpath:/application-context.xml"}) ,我將從 applicationContext.xml 獲取對象,這些對象將是真實的對象。
如何在這里使用 mockito
您不必使用 Spring 對代碼進行單元測試。 您可以使用 Mockito @InjectMocks
將依賴項注入被測類中。
如果您想使用 Spring 進行單元測試,您可以使用 Spring 中的@ContextConfiguration
注釋,並在適當的情況下使用@ContextConfiguration
在測試本身中定義配置。 例如:
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration
@TestPropertySource(locations = "classpath:test.properties")
public class SimpleServiceTest {
@Autowired
private SimpleService simpleService;
@Test
public void testMethod(){
....
simpleService.testMethod();
....
}
@Configuration
public static class Config {
@Bean
public SimpleService getSimpleService() {
return new SimpleService();
}
@Bean
public MockedService getMockedService() {
return Mockito.mock(MockedService.class);
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.