如何模仿“这个”

时间:2013-09-25 05:12:49

标签: java junit powermock

当我测试一个类的构造函数时,会出现如下句子:

 SAPPublisherSvc server = new SAPPublisherSvc(sdkApp, this, curInt, factory, tidHandler);

我想使用PowerMock.expectNew(),但我可以填写什么来代替参数this

2 个答案:

答案 0 :(得分:1)

我已经解决了这个问题,这是你应该做的:

PowerMock.expectNew(SAPPublisherSvc.class,EasyMock.same(app),EasyMock.isA(ServiceComponent.class) ,EasyMock.same(curInt),EasyMock.same(factory),EasyMock.same(tidHandler)).andReturn(server);

答案 1 :(得分:0)

this是表示innermost "enclosing" object的关键字。换句话说,您当前所在的对象。

由于它只是一个对象引用(为此目的,如变量或字段),如果要创建此对象类的实例的模拟,只需使用:

createMock(this.getClass());