記PowerMockito whenNew的一個坑

被測試類:

class A {
    public void handle() {
        B b = new B();
    }
}

測試handle方法,而我不想真正去執行new B()操作,那麼可以使用PowerMockito.whenNew:

@RunWith(PowerMockRunner.class)
@PrepareForTest({A.class})//此處寫被測試類,而不是whenNew的類
public class ATest extends PowerMockTestCase {
    @Test
    public void testHandle() {
        B b = PowerMockito.mock(B.class);
        PowerMockito.whenNew(B.class).withNoArguments().thenReturn(b);
    }
}

@PrepareForTest後面應該加上被測試的類,而不是要whenNew的類,被這個坑過兩次了,特此記錄下。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章