繁体   English   中英

即使我使用 powermockito 模拟课程,“Mockito 无法模拟此类”错误

[英]"Mockito cannot mock this class" error even if I am using powermockito to mock the class

我有最后一节课

public final class A {
    private static final Set<String> B = methodA();

    private static Set<String> methodA() {
        //does some processing and 
        //returns a set 
    }

    public static boolean methodB() {
        //does some processing and 
        //returns a boolean 
    }
}

被测类是B类,这个类调用的是最终A类的静态方法

public class B {
    public boolean methodC() {
       if(methodB()) {
         C.methodD();
       }
    }
}

C班又是最后一班

public final class C {

    public static void methodD() {
        //does some processing
    }
}

我正在像这样嘲笑最后的 A 班

public class TestB {

    public void testMethodC() {
        PowerMockito.mock(A.class); 
    }
}

该案例在 C 类的 methodD 中失败。
我收到此错误Mockito 无法模拟此类:A。

你需要一些注释:

@RunWith(PowerMockRunner.class)
@PrepareForTest({A.class})
public class TestB {

    public void testMethodC() {
        PowerMockito.mock(A.class); 
    }
}

我的依赖:

<dependency>
    <groupId>org.powermock</groupId>
    <artifactId>powermock-api-mockito2</artifactId>
    <version>2.0.2</version>
    <scope>test</scope>
</dependency>
<dependency>
    <groupId>org.powermock</groupId>
    <artifactId>powermock-module-junit4</artifactId>
    <version>2.0.2</version>
    <scope>test</scope>
</dependency>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM