目前,我的测试课有以下内容:

@RunWith(Parameterized.class)
@RunWith(PowerMockRunner.class)

public class TestApp extends TestGroovy {

...

}


我对字符串连接中的多个输入使用“参数化”。通常,这是我用于大多数测试单元的模板。但是,现在我需要将PowerMock'ed类添加到测试单元中,并且必须添加@RunWith(PowerMockRunner.class)行。我显然不能有多个@RunWiths,那有什么替代方法?测试本身如下:

@Test
public void testCheckedApproved() throws Exception{
    PowerMockito.mockStatic(TRDIUtils.class);
    PowerMockito.when(TRDIUtils.strToInteger(newValueIn)).thenReturn(0);

    evaluate();
    Mockito.verify(dsIn, Mockito.times(1)).setItemDate(1,"XX_APPROV_DATE",new DateTime());
    Mockito.verify(dsIn, Mockito.times(1)).setItemString(1,"XX_APPROV_USER", dl.getSession().getUserId());
}

最佳答案

正如评论中已经发布的那样,使用PowerMockRunnerDelegate对我有用:

@RunWith(PowerMockRunner.class)
@PowerMockRunnerDelegate(Parameterized.class)


你可以试试看吗?

关于java - PowerMockRunner的替代@RunWith吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/49863526/

10-09 23:05