Mockito를 사용하여 클래스의 특정 메서드를 모의하는 방법
소프트웨어 테스팅에서 모의를 사용하면 종속성 또는 종속성의 동작을 시뮬레이션할 수 있습니다. 직접 인스턴스화하고 싶지 않은 클래스. Mockito는 메서드를 모의하고 상호 작용을 확인할 수 있는 Java 모킹 프레임워크입니다.
구체적으로, 클래스의 특정 메서드를 모의하고 다른 메서드는 그대로 두려는 시나리오가 발생할 수 있습니다. 이러한 접근 방식을 부분 조롱이라고 합니다. Mockito를 사용하여 이를 달성할 수 있는 방법은 다음과 같습니다.
// Mock the Stock class with partial mocking Stock stock = mock(Stock.class); // Mock specific methods when(stock.getPrice()).thenReturn(100.00); when(stock.getQuantity()).thenReturn(200); // Leave 'getValue()' unmocked // It will execute the actual Stock.getValue() calculation when(stock.getValue()).thenCallRealMethod();
이 방법으로 getPrice() 및 getQuantity() 메소드만 모의되고 getValue()는 원래 코드를 실행합니다.
추가로 CALLS_REAL_METHODS 인수를 다음과 함께 사용할 수 있습니다. Mockito.mock():
Stock MOCK_STOCK = Mockito.mock(Stock.class, CALLS_REAL_METHODS);
이것은 스텁되지 않은 호출을 실제 구현에 위임합니다.
그러나 귀하의 예에서는 getPrice() 및 getQuantity()만 조롱한다는 점에 유의하는 것이 중요합니다. getValue() 구현은 실제 반환 값에 따라 달라지기 때문에 올바르게 작동하지 않습니다. 대신 모의 광고를 완전히 피하는 것이 좋습니다.
// Without mocks Stock stock = new Stock(100.00, 200); double value = stock.getValue();
위 내용은 Mockito를 사용하여 클래스에서 부분적으로 메서드를 모의하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!