怎么用PowerMock来Mock单例

JavaPeak 2014-09-17 08:08:02
大家好:
我在做单元测试的时候,遇到了调用其他模块的一个单例的方法,想用PowerMock mock一下这个类,预计单例类方法的返回至,但一直不成功,请各位大神帮忙看一下:
单例类:
public class DealData {
private DealData() {
}
public static DealData instance = new DealData();
public static DealData getInstance() {
return instance;
}
public String deal(String input) {
return null;
}
}
业务调用类:
public class DealService {
public String dealData(String input) {
return input + DealData.getInstance().deal("OK");
}
}
测试类:
@Test
public void testDealData1() {
DealData dealData = PowerMock.createMock(DealData.class);
EasyMock.expect(dealData.deal("OK")).andReturn("world");
PowerMock.replayAll();
DealService dealService = new DealService();
String result = dealService.dealData("Hello");
assertEquals("HelloWorld", result);
}
无论怎么Mock,都说单例类的deal方法返回为null
请大家帮忙看一下,谢谢
...全文
292 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧