InjectMocks更深层次

时间:2018-03-07 07:38:16

标签: spring-boot mockito autowired

欢迎任何有关更好标题的建议。

我有一些豆子如下:

public class ClassA {

    @Autowired
    ClassB b;
...
}

public class ClassB {

    @Autowired
    ClassC c;
...
}

我想编写一个测试并模拟ClassB中的ClassC实例。我们该怎么做?

一个有效的例子:

@RunWith(SpringRunner.class)
@SpringBootTest(webEnvironment = WebEnvironment.RANDOM_PORT)
 public class ClassATest {

    @InjectMocks
    ClassA a;

    @InjectMocks
    ClassB b;

    @Mock
    ClassC c;
...
    @Before
    public void setup() {
        MockitoAnnotations.initMocks(this);
        a.setB(b);
    }
}

有更好的方法吗?

感谢。

0 个答案:

没有答案