迁移问题从Junit 4到Junit 5
发布时间:2020-12-15 08:27:28 所属栏目:Java 来源:网络整理
导读:我正在将我的代码库从junit4迁移到junit5.我在我的testcase中使用了mockito.Below是我用于依赖的不同版本. junit.jupiter.version5.2.0/junit.jupiter.versionjunit.platform.version1.2.0/junit.platform.versionorg.mockito.version1.10.19/org.mockito.ve
我正在将我的代码库从junit4迁移到junit5.我在我的testcase中使用了mockito.Below是我用于依赖的不同版本.
<junit.jupiter.version>5.2.0</junit.jupiter.version> <junit.platform.version>1.2.0</junit.platform.version> <org.mockito.version>1.10.19</org.mockito.version> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-junit-jupiter</artifactId> <version>2.19.0</version> <scope>test</scope> </dependency> 我使用注释@RunWith(MockitoJUnitRunner.class)来运行我的mockito代码.用@ExtendWith(MockitoExtension.class)替换它 但是,当我运行测试用例时,我得到以下错误.任何解决此问题的建议.我怀疑是否有任何依赖版本问题导致此问题. java.lang.NoClassDefFoundError: org/mockito/quality/Strictness at java.lang.Class.getDeclaredConstructors0(Native Method) at java.lang.Class.privateGetDeclaredConstructors(Class.java:2671) at java.lang.Class.getConstructor0(Class.java:3075) at java.lang.Class.getDeclaredConstructor(Class.java:2178) at.. 谢谢 解决方法
JUnit5 MockitoExtension使用org.mockito.quality.Strictness,因此为了使用MockitoExtension,您需要使用包含org.mockito.quality.Strictness的mockito-core版本. mockito-core:1.10.19不包含该类,因为该类是在Mockito 2.x中添加的.因此,为了使用MockitoExtension,您至少需要使用版本2.x的mockito-core.
Mockito文档没有明确说明,但我怀疑期望你将使用相同的Mockito版本用于mockito-core和mockito-junit-jupiter. 以下依赖项将允许您成功使用JUnit5 MockitoExtension: <org.mockito.version>2.19.0</org.mockito.version> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <version>${org.mockito.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-junit-jupiter</artifactId> <version>${org.mockito.version}</version> <scope>test</scope> </dependency> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容