@ExtendWith(SpringExtension.class)和@ExtendWith(MockitoExtension.class)有什么区别?

2022-09-02 05:24:04

我用mockito进行junit测试。但现在我正在使用spring-boot和JUnit 5。
这两个注释之间有什么区别?
我可以只用来嘲笑我的对象吗?@RunWith(MockitoJUnitRunner.class)@ExtendWith(SpringExtension.class)


答案 1

当涉及春季时

如果你想在你的测试中使用Spring测试框架功能,例如,那么你必须使用.它取代了已弃用的 JUnit4@MockBean@ExtendWith(SpringExtension.class)@RunWith(SpringJUnit4ClassRunner.class)

当不涉及春季时

例如,如果您只想让Mockito参与而不必涉及Spring,例如,当您只想使用/注释时,那么您想要使用,因为它不会加载一堆不需要的Spring内容。它取代了已弃用的 JUnit4 。@Mock@InjectMocks@ExtendWith(MockitoExtension.class)@RunWith(MockitoJUnitRunner.class)

要回答您的问题

是的,你可以只使用 ,但是如果你在测试中没有涉及Spring测试框架功能,那么你可能只想使用。@ExtendWith(SpringExtension.class)@ExtendWith(MockitoExtension.class)


答案 2

推荐