我的问题涉及 Mockito、JUnit 和 Spring Test。
假设我在应用程序中有以下依赖关系图:
SystemUnderTest --> Service1 --> Service2 --> ServiceN
我可以模拟 ServiceN
即使它不是被测系统 (SystemUnderTest
) 的直接依赖项,而是传递依赖项 (只有 Service1
是上面的直接依赖项)?
所有这些,假设 Service1
和 Service2
本身没有被模拟(spy()
除外)。
最佳答案
是的,可以使用 MockBean
注释。
@RunWith(SpringRunner.class)
@SpringBootTest
public class MockBeanIntegrationTest {
@MockBean
private SomeService someService;
@Before
public void setupMock() {
when(someService.getResult())
.thenReturn("success");
}
}
关于java - 如果不是直接依赖项,我可以模拟对被测系统的依赖项吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42626130/