有没有办法模拟在方法本身中初始化的对象。例如
void myMethod(){
SampleClass sample = new SampleClass();
int count = sample.getProductCount(5L);
}
我想模拟像
这样的getProductCount方法when(sample.getProductCount(any(Long.class)).thenReturn(10)
但我找不到办法。有什么建议吗?
答案 0 :(得分:0)
我正在使用@Spy来模拟特定方法,
使用@Spy注释的字段可以在声明点显式初始化。
在你的情况下准备间谍:
<h:panelGroup rendered="#{contentDetails.location == 'NA'}">
<img src="#{request.contextPath}/#{operator}/content/#{param['c']}/#{contentDetails.cpCategory1}/#{contentDetails.title}.jpg" alt="#{contentDetails.category}" />
</h:panelGroup>
<h:panelGroup rendered="#{contentDetails.location != 'NA'}">
<img src="#{contentDetails.location}" alt="#{contentDetails.category}"/>
</h:panelGroup>
在测试中:
@Spy
private SampleClass sample = new SampleClass();
@BeforeMethod
public void initMocks() {
MockitoAnnotations.initMocks(this);
}