猿问

方法 A 中的 Junit Mocking/Stubing 方法 B(非参数化方法 A)

我遇到了一个无法模拟/存根方法的场景。


Class A{

   B b = new B();

   method aa(){

   ... call to method bb in class B

 }

}

Class B{

   method bb(){

     ......

   }

}

我想模拟 B 类的方法 bb。由于 A 类的方法 aa 没有传递 b 的构造函数,我不确定如何模拟它的行为。


我试过嘲笑 B


A a = new A();

B b_mock = Mockito.mock(B.class);

when(b_mock.bb).thenReturn(..something);

a.aa();

但是在测试方法 aa 时它仍然在方法 bb 中,这是有道理的,因为 A 和 b_mock 之间没有关系。我不确定如何在 A 和 B 之间建立连接。


我试过@InjectMock,它也不起作用,我试图避免使用powerMock。我不确定这是否可以实现。


提前致谢!


慕田峪4524236
浏览 187回答 1
1回答
随时随地看视频慕课网APP

相关分类

Java
我要回答