惩戒单用PowerMockito

问题描述 投票:7回答:3

为了测试我编写的私有方法之一,我需要模拟一个Singleton。

测试的几种方法与PowerMockito后:

PowerMockito.mockStatic(UtilDatabaseSoldeAutoCdeCommon.class);
Mockito.when(UtilDatabaseSoldeAutoCdeCommon.getInstance()).thenReturn(mockDatabase);

我从来没有嘲笑这一类。因此,在他们每个人的,我对数据库的访问我无法测试我的方法。

UtilDatabaseSoldeAutoCdeCommon被定义为这样的:

public class UtilDatabaseSoldeAutoCdeCommon extends AbstractUtilDatabase {

private static UtilDatabaseSoldeAutoCdeCommon instance;

private UtilDatabaseSoldeAutoCdeCommon() {
    super();
}

public static UtilDatabaseSoldeAutoCdeCommon getInstance() {
    if(instance == null) {
        instance = new UtilDatabaseSoldeAutoCdeCommon();
    }
    return instance;
}

...
}

我调试powermockito时,它调用的getInstance(),但每次调用构造函数,它崩溃,因为它试图加载配置文件(该文件不存在)。

我精确该配置文件被定义为抽象父类UTI数据库Enrichissement的恒定和在构造函数中使用。

我怎么能测试这个部分?

java testing mockito junit4 powermock
3个回答
0
投票

PrepareForTest你嘲笑单身类

© www.soinside.com 2019 - 2024. All rights reserved.