PowerMockを使用してクラスから静的メソッドをモックする方法を知っています。
しかし、JUnitとPowerMockを使用して、テストクラスの複数のクラスの静的メソッドをモックしたいと思います。
誰かが私にこれを行うことが可能であり、それを行う方法を教えてもらえますか?
@PrepareForTest({Class1.class,Class2.class})
複数のクラスに対して行うだけです。
@Test
@PrepareForTest({Class1.class, Class2.class})
public final void handleScript() throws Exception {
PowerMockito.mockStatic(Class1.class);
PowerMockito.mockStatic(Class2.class);
等...
kotlinを使用している場合、構文は次のとおりです。
@PrepareForTest(ClassA::class, ClassB::class)
powermock / junitを 使用するJavaでは@PrepareForTest({})
、配列()と同じ数の静的クラスで使用します{}
。
@RunWith(PowerMockRunner.class)
@PrepareForTest({XmlConverterA.class, XmlConverterB.class})
class TransfersServiceExceptionSpec {
}
scalatestにはpowermockとの統合がないため、scala/junitでpowermockを使用しました。
@RunWith(classOf[PowerMockRunner])
@PrepareForTest(Array(classOf[XmlConverterA], classOf[XmlConverterB]))
class TransfersServiceExceptionSpec {
@Test
def test() {
}
}