如何在@springboottest中创建可重用的@mockbean定义?

13z8s7eq  于 2021-07-13  发布在  Java
关注(0)|答案(0)|浏览(204)

我有一个 @SpringBootTest 具有相当复杂的模拟定义设置和模拟返回值的类。
问题:我可以外化吗 @MockBean 设置到一个自己的类中,这样我就可以在多个类中重用模拟配置(旁注:我不想在这里寻找继承!)。

@SpringBootTest
public class ServiceTest extends DefaultTest {
    @Autowired
    private ServiceController controller;

    @MockBean
    private Service1 s1;

    @MockBean
    private Service2 s2;

    @MockBean
    private Service3 s3;

    //assume more complex mock definitions
    @BeforeEach
    public void mock() {
        when(s1.invoke()).thenReturn(result1);
        when(s2.invoke()).thenReturn(result2);
        when(s3.invoke()).thenReturn(result3);
    }

    @Test
    public void test() {
        //...
    }
}

暂无答案!

目前还没有任何答案,快来回答吧!

相关问题