Open BananMoon opened 1 month ago
@Spy
save(String s)
findById(Long id)
@ExtendWith(MockitoExtension.class)
given()
@SpyBean
@Spy 기능을 하며, 기존에 사용되는 스프링 Bean 대신 주입되는 역할의 애노테이션.
Mock Bean을 주입할 수 있다.
이미 존재하는 Bean을 SpyBean으로 Wrapping한 형태라고 생각할 수 있다.
필수 조건 :
@SpringBootTest
@Transactional @SpringBootTest @ExtendWith(MockitoExtension.class) class ReservationBuyOrderServiceIntegrationTest { @Autowired private ReservationBuyOrderServiceImpl reservationBuyOrderService; @MockBean private MarketStatusService marketStatusService; @MockBean private MyServiceImpl myService; @SpyBean private ReservationOrderInfoRepository reservationOrderInfoRepository; @Autowired private OrderTradingRepository orderTradingRepository; @MockBean private OpenApiProperties openApiProperties; @MockBean private OpenApiRequest openApiRequest; // 생략 }
테스트 코드 작성 시 기억해두자!
@Spy
save(String s)
메서드에는 동작을 지정하고 싶지만,findById(Long id)
에는 동작을 지정하고 싶지 않을 때 사용할 수 있다.@ExtendWith(MockitoExtension.class)
과 함께 사용.given()
을 통해 동작을 지정한다.@SpyBean
@Spy
기능을 하며, 기존에 사용되는 스프링 Bean 대신 주입되는 역할의 애노테이션.Mock Bean을 주입할 수 있다.
이미 존재하는 Bean을 SpyBean으로 Wrapping한 형태라고 생각할 수 있다.
필수 조건 :
@ExtendWith(MockitoExtension.class)
과 함께 사용.@SpringBootTest
와 함께 사용.적용한 소스코드 (통합 테스트)