在Powermock中,有方法whenNew
。
我是Jmockit的新手。我正在将应用程序从Powermock迁移到Jmockit。
能否请您告诉我Jmockit中whenNew
的等效项或如何在Jmockit中实现?我真的需要解决这个问题才能前进。
该场景是new RestTemplate()
在类中的不同方法中本地使用...通过whenNew
,我们可以分配模拟的resttemplate值,但我不会努力模拟相同的值。有什么建议吗?
答案 0 :(得分:1)
对于您来说,我认为您要尝试的是模拟RestTemplate新实例的构建。
您应该看一下JMockit的文档,因为它确实做得很好,并且在那里已经回答了很多问题(在您的情况下,here)。
@Test
public void test(@Mocked RestTemplate restTemplateMock) {
new Expectations() {{
new RestTemplate(); result = restTemplateMock;
restTemplateMock.method(); result = "something";
}};
// Code under test:
new RestTemplate().method(); // will return "something"
}
根据需要传递的参数使用必要的构造函数,我认为这对您有帮助。