Answers:
只需@PrepareForTest({Class1.class,Class2.class})
为多个班级做。
@RunWith(PowerMockRunner.class)
在课堂上切换到PowerMockRunner
@Rule public PowerMockRule rule = new PowerMockRule();
@PrepareForTest(Class1::class, Class2::class))
@PrepareOnlyThisForTest
代替@PrepareForTest
。后者还修改了超类,这通常是不需要的。
@Test
@PrepareForTest({Class1.class, Class2.class})
public final void handleScript() throws Exception {
PowerMockito.mockStatic(Class1.class);
PowerMockito.mockStatic(Class2.class);
等等...
PowerMock 1.6.5
使用的问题@PrepareForTest
(仅对我而言适用于类级别)
在具有powermock / junit的Java中,根据需要 使用@PrepareForTest({})
与数组({}
)一样多的静态类。
@RunWith(PowerMockRunner.class)
@PrepareForTest({XmlConverterA.class, XmlConverterB.class})
class TransfersServiceExceptionSpec {
}
我在scala / junit中使用了powermock,因为scalatest没有与powermock集成。
@RunWith(classOf[PowerMockRunner])
@PrepareForTest(Array(classOf[XmlConverterA], classOf[XmlConverterB]))
class TransfersServiceExceptionSpec {
@Test
def test() {
}
}