2016-12-12 25 views
0

クラスコンストラクタを初めてPowerMockitoでモックしようとしていますが、動作しません。現在のコード:PowerMockitoでコンストラクタをモックする方法

public class Bar { 
    public String getText() { 
     return "Fail"; 
    } 
} 

public class Foo { 
    public String getValue(){ 
     Bar bar= new Bar(); 
     return bar.getText(); 
    } 

} 

@RunWith(PowerMockRunner.class) 
@PrepareForTest(Bar.class) 
public class FooTest { 
    private Foo foo; 
    @Mock 
    private Bar mockBar; 

    @Before 
    public void setUp() throws Exception { 
     MockitoAnnotations.initMocks(this); 
     PowerMockito.whenNew(Bar.class).withNoArguments().thenReturn(mockBar); 
     foo= new Foo(); 
    } 

    @Test 
    public void testGetValue() throws Exception { 
     when(mockBar.getText()).thenReturn("Success"); 
     assertEquals("Success",foo.getValue()); 

    } 
} 

戻り値が "Fail"なのでテストに失敗しました。私の問題はどこですか?

答えて

1

オーケーは、あなたが

@PrepareForTest(Foo.class) 

代わりの

@PrepareForTest(Bar.class) 
に呼び出す必要があり、その答えを見つけました
関連する問題