을 던지는되지 않으며,의는, SomeException 내 테스트 케이스에서 형의 RuntimeException왜 mockito dothrow 내가 무효 메소드가 예외
SomeException extends RuntimeException
이다 "SomeClass"
public void someMethod(SomeArg arg) throws SomeException{
에 말할 수, 나는 쓰기 :
SomeArg someArg =new SomeArg();
someArg .setId(1234);
Mockito.doThrow(new SomeException()). when(someClass).someMethod(someArg);
그리고 예외
012을 기대@Test(expected=SomeException .class)
하지만 놀랍게도 예외는 발생하지 않습니다. 내가 물건을 놓친거야? 코멘트에서
흠, 내가 toString이 적절하지 않거나 경우가있는 것으로 나타났습니다 무엇 : "SomeClass"는 조롱하는 경우
는, 당신은 당신이 테스트의 라인에게 세트를 추가 있는지 확인해야 equals 메소드에 대한 인수가 충분하지 않아 Mockito가 예외를 발생시키지 않습니다. 첫 번째 경우 toString은 NPTR을 던지고 있었고 다른 사용 사례에서는 평등성이 충분하지 않아 정보를 얻을 수 없었습니다 (ID 중 하나가 누락되었습니다). 왜이 문제로 인해 mockito의 동작이 실패합니까? 이 물건들에 대해 평등이나 어떤 조작이 실패했다면, 나는 이해할 수있었습니다.하지만 나는 방금 철저히 모키토를 시작했습니다. – cpandey05
그래서 결국 문제를 해결할 수 있었습니까? SomeArg 구현을 게시 할 수 있습니까? – macias
예, Mockito는 적절하게 추적을 제공하지 않았습니다 .. tostring 및 equals는 예외를 던지고있었습니다. 예외적으로 mockito가 적절하게 전파하지 못했습니다. 예외로 말하면 추적은 누락되었습니다. 아래의 모듈에서 NPTR을 수정하면 해결되었습니다. – cpandey05