위키득계정 ↗
기술

Trompeloeil

Trompeloeil기술
분류
C플러스플러스 모킹
배포 형태
헤더 전용
특징
스레드 안전성 지원
기능 예
호출 조건 횟수 순서
Trompeloeil은 C플러스플러스용 헤더 전용 모킹 프레임워크다. 예상하는 호출과 허용하지 않는 호출, 반환값과 호출 순서 등을 테스트 조건으로 표현한다.

예상 상호작용 표현

모의 메서드를 만들고 어떤 인자에 어떤 동작을 할지 정의한다. 특정 호출을 요구하거나 금지하고 반환값과 부수 효과를 구성할 수 있다. 검사 대상의 결과값뿐 아니라 의존성과의 상호작용을 살펴보는 방식이다.

순서와 횟수

허용되는 호출 횟수와 여러 호출 사이의 순서를 표현할 수 있다. 모든 호출 순서를 불필요하게 고정하면 구현의 작은 변경에도 테스트가 깨질 수 있다. 실제 인터페이스 계약에 필요한 조건만 남기는 것이 유지 관리에 도움이 된다.

다른 프레임워크와 연결

테스트 프레임워크와 통합해 모킹 실패를 보고할 수 있다. 스레드 안전성 지원이 실제 동시 실행 코드의 모든 경쟁 조건을 검증한다는 뜻은 아니다. 대역의 기대 조건과 실제 구성 요소의 동작을 구분하고 필요한 통합 검사를 함께 수행한다.

관련 문서

GoogleTest / Catch2 / Doctest Cpp / Fake Function Framework