我想从以下类中继承jasperreports
方法调用:
public class JRPdfExporter extends JRAbstractExporter<PdfReportConfiguration, PdfExporterConfiguration, OutputStreamExporterOutput, JRPdfExporterContext> {
在我的测试中,我有:
JRExporter jrPdfExporter = spy(new JRPdfExporter());
doNothing().when(jrPdfExporter).exportReport();
但似乎我的假设在这里被忽略了。在exportReport()
方法调用期间,我仍然得到NullPointerException。
我们如何解决这个问题?
编辑:
我测试的班级Exporter
初始化如下:
protected JRExporter getPdfExporter()
{
JRExporter exporter = new JRPdfExporter();
exporter.setParameter(
// several params setting
return exporter;
}
然后它会这样调用:
exporter.exportReport();
我尝试使用PowerMockito,但它也没有帮助:
JRPdfExporter jrPdfExporter = PowerMockito.mock(JRPdfExporter.class);
PowerMockito.whenNew(JRPdfExporter.class).withNoArguments().thenReturn(jrPdfExporter);
PowerMockito.doNothing().when(jrPdfExporter).exportReport();