使用 PowerMock

问题描述

我必须在 JUnit 中模拟静态方法,这是代码的和平:

final AmazonElasticMapReduce emr = AmazonElasticMapReduceClientBuilder
            .standard()
            .withCredentials(credentialsProvider)
            .defaultClient();

这是我的测试方法的样子:

@Generated("GeneralPatterns")
@RunWith(powermockrunner.class)
@PrepareForTest({
    AmazonElasticMapReduceClientBuilder.class
})
public class ClasstoTest {
    ...

    @Before
    public void setup() {
        MockitoAnnotations.initMocks(this);
    }

    @Test
    public void testJobToEMR() {
        ...

        AmazonElasticMapReduce mockedamazonEMR = mock(AmazonElasticMapReduce.class);
        mockStatic(AmazonElasticMapReduceClientBuilder.class);
        AddJobFlowStepsRequest mockedRequest = mock(AddJobFlowStepsRequest.class);

        verify(mockedamazonEMR).addJobFlowSteps(mockedRequest);
    }
}

问题是,构建成功,但在我使用 @RunWith(powermockrunner.class) 时没有填充测试结果。我正在使用 surfire-reports 报告测试结果。

有什么想法吗?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)