JUnit 테스트를 작성 중이며 Mockito도 사용하고 있습니다. 메소드를 호출하여 두 번째 메소드를 호출합니다. 타임스. 나는 두 번째 방법이 내 단위 테스트 중에 호출되는 것을 원하지 않지만, 그것이 무엇이 었는지를 알고 싶다.유닛 테스트 중에 메서드 호출이 시도되었지만 실제로 호출하지 않는다는 것을 모의합니다.
public class MyClass {
public void myMethod() {
int a = [do some logic]
int b = [do some logic];
doSomething(a, b);
a = [do some logic];
b = [do some logic];
doSomething(a, b);
}
public void doSomething(int a, int b) {
// code that I do not want to be executed during a unit test
}
}
이제 단위 테스트 :
@Test
public void test() {
MyClass myClass = new MyClass();
myClass.myMethod();
verify(myClass).doSomething(17, 33);
verify(myClass).doSomething(9, 18);
}
내가 Mockito에 새로운 오전 중 A) 해봐요을 방지하는 것이 가능하다면 나도 몰라 테스트 할 내 코드는 다음과 같이 보입니다()가 실행되지 않고 B) & b 인수의 값을 확인하십시오. 나는 "Mockito가 당신을 도울 수 없다"또는 "기술적으로 가능한 것이 아닙니다"와 같은 대답을 기꺼이 받아 들일 것입니다. 이런 종류의 것을 조롱하는 방법이 없다면, 직접적으로 테스트 할 수있는 메소드로 리팩토링하는 것을 고려해 볼 수도 있지만,이 간단한 예제보다 코드가 복잡하고 온라인으로 코드를 게시 할 수 없습니다. .
당신은 유용이 질문에 대한 답을 찾을 수 있습니다 에 http : // 유래. com/questions/1087339/using-mockito-to-test-abstract-classes – tjdett