如何验证非模拟方法被调用?

jav*_*999 1 java unit-testing verify mockito method-call

我想测试我的方法在无法模拟的同一类中调用了另一个方法。

例:

public void methodToTest(){

//other stuff to test that can be mocked
someClassICanMock.doSomething();

//method within same class that cannot be mocked
methodFromSameClassIWantToVerify();

}
Run Code Online (Sandbox Code Playgroud)

我如何使用a verify来检查我的测试方法methodFromSameClassIWantToVerify();?

编辑:不是重复的,因为我专门指的是如何使用Mockito对此进行测试。

kuh*_*yan 5

像这样,

MyClass c = new MyClass(); 
someClassICanMock  m = mock(someClassICanMock.class);
doNothing().when(m).doSomething();
MyClass s = spy(c);
s.methodToTest();
verify(s , times(1)).methodFromSameClassIWantToVerify();
Run Code Online (Sandbox Code Playgroud)