如何使用Mockito模拟记录

xlpyo6sf  于 2023-01-17  发布在  其他
关注(0)|答案(1)|浏览(202)

我在模仿一个

@Test
    public void testRecord() {
        record Rec(){}
        Mockito.mock(Rec.class);
    }

但它给出了误差

org.mockito.exceptions.base.MockitoException:
    Cannot mock/spy class Rec
    Mockito cannot mock/spy because :
     - final class
        at ...

当然这是有道理的。

7gyucuyw

7gyucuyw1#

正如错误消息所示,您不能使用默认的Mockito来模拟final类。
但是社区提出了mockito-inline,这是一个扩展,带来了一些实验性的特性,比如模拟最终的类和方法或者静态方法。
只需将此添加到您的pom.xml中,并正常使用Mockito。

<dependency>
    <groupId>org.mockito</groupId>
    <artifactId>mockito-inline</artifactId>
    <scope>test</scope>
</dependency>

对于Gradle:

testImplementation 'org.mockito:mockito-inline:4.11.0'

相关问题