TIL

Day64

jackpods 2023. 4. 10. 23:57

"테스트 이중"은 테스트를 용이하게 하기 위해 프로덕션 시스템 구성 요소를 대체하는 개체 또는 절차를 참조하기 위해 소프트웨어 테스트에서 사용되는 용어입니다. 모의, 스텁, 가짜 및 스파이를 포함하여 다양한 유형의 테스트 복식이 있습니다.

 

"mock"은 테스트 중에 다른 개체가 개체와 상호 작용하는 방식을 확인하기 위해 개체의 동작을 시뮬레이트하는 일종의 테스트 더블입니다. Mock은 종종 데이터베이스나 웹 서비스와 같은 외부 구성 요소에 의존하는 시스템의 특정 부분을 격리하고 테스트하는 데 사용됩니다.

 

"RestControllers"는 HTTP 요청 및 응답을 처리하는 데 사용되는 Spring MVC 프레임워크의 클래스 유형입니다. 일반적으로 리소스를 조작하기 위해 HTTP 메서드(GET, POST, PUT, DELETE)를 사용하는 RESTful 웹 서비스를 구현하는 데 사용됩니다. RestController는 모의 객체를 사용하여 테스트하여 HTTP 요청을 시뮬레이트하고 응답을 확인할 수 있습니다.

 

"Java bean"은 공용 getter 및 setter 메소드가 있는 개인 필드를 갖는 것과 같은 특정 규칙을 준수하는 클래스입니다. Java Bean은 종종 Spring과 같은 MVC 프레임워크에서 데이터 전송 객체(DTO) 또는 모델 객체로 사용됩니다. 다양한 조건에서 올바르게 작동하는지 확인하기 위해 스텁 또는 모의와 같은 다양한 테스트 더블을 사용하여 쉽게 테스트할 수 있습니다.

 

"Spring bean"은 Spring 프레임워크의 IoC(Inversion of Control) 컨테이너에 의해 관리되는 객체 유형입니다. 스프링 빈은 일반적으로 종속성 주입을 사용하여 생성 및 구성되므로 유연한 모듈식 애플리케이션 설계가 가능합니다. 스프링 빈은 모의 개체를 사용하여 쉽게 테스트하여 종속성을 시뮬레이션하고 해당 동작을 확인할 수 있습니다.

 

일반적으로 모의, 스텁, 페이크와 같은 테스트 더블을 사용하는 것은 효과적인 소프트웨어 테스트에 필수적입니다. 이를 통해 개발자는 제어된 환경에서 시스템의 개별 구성 요소를 격리하고 테스트할 수 있습니다. 이렇게 하면 시스템이 다양한 조건에서 예상대로 작동하고 시스템이 프로덕션으로 출시되기 전에 모든 버그나 오류를 포착하고 수정하는 데 도움이 됩니다.