-1

여기 내 테스트 클래스입니다 ..Mockito ... 봄 테스트

@RunWith(SpringJUnit4ClassRunner.class) 
    @ContextConfiguration(loader=AnnotationConfigContextLoader.class) 
    public Testclass { 
    @Autowired 
    private VClasss vclass; 
     ..... 
     ..... 

    @Before 
    public void setup() { 
     //mockito.when.(vClass.isvalid()).thenReturn(true); 

    } 
    @After 
    public void verify({ 
    Mockito.verify(vCLass, VerificationModeFactory.times(1)).isValid(); 
    Mockito.reset(); 
    } 


    @Test 
    public void test1() { 
    //set up test which will call the mock isValid method 

    } 

    @Test 
    public void test1() { 
    //set up test which will call the mock isValid method 
    } 


    @Configuration 
    static class configurationForTest { 
    @Bean 
    public VClass vClass() { 
     return mockito.mock(VClass.class); 
    } 
    } 

내 질문에 내가이를 설정할 때 올바른 isValid 한 번 불렀다되어 있는지 확인으로, 첫 번째 테스트는, 그러나 두 번째를 전달하는 것입니다 이제 isValid가 두 번 호출되었는지 묻는 불평을 확인하는 데 실패합니다. 각 테스트마다 호출 수를 재설정하기 위해 mockito의 재설정 메소드를 예상했습니다.

아무도 제안이 없습니까?

답변

2

모의 초기화를 통과하지 마십시오. 행은

Mockito.reset(vClass); 
+0

이어야합니다. 개별 메소드의 개수를 재설정 할 수 있습니까? 당신이 제공 한 라인으로 전체 모의가 재설정됩니다. – svlada

+1

AFAIK, 아니요. 모의 재설정은 이미 냄새입니다. 개별 메소드를 재설정하는 것이 더 냄새가 날 것입니다. –