위키득계정 ↗
기술

FakeItEasy

FakeItEasy기술
분류
대역 객체 및 모킹 라이브러리
적용 환경
.NET
지원 언어
C#과 Visual Basic
주요 기능
호출 설정과 검증
FakeItEasy는 .NET 시험에서 의존 객체의 대역을 만드는 라이브러리다. 호출에 대한 반환값을 설정하고 대상 코드가 기대한 상호작용을 수행했는지 확인한다.

대역 객체의 사용

외부 의존성을 직접 실행하는 대신 동작을 제어할 수 있는 객체를 전달한다. 같은 대역도 반환값을 제공하는 데 쓰는지 호출을 검증하는 데 쓰는지에 따라 역할이 달라진다. 도구는 모두를 fake로 다루고 사용 방식에 의미를 둔다.

설정과 실행

특정 호출에 돌려줄 값을 정한 뒤 시험 대상 코드가 대역을 사용하도록 한다. 이를 통해 의존성이 정해진 결과를 줄 때 대상 코드가 어떻게 행동하는지 확인할 수 있다. 실제 의존 구현이 같은 결과를 주는지는 별도의 통합 시험에서 다룬다.

상호작용의 검증

반환된 상태뿐 아니라 필요한 호출이 있었는지도 확인할 수 있다. 객체를 설정할 때와 유사한 표현으로 검증 조건을 작성한다. 내부 구현의 세부 호출까지 모두 고정하면 변경에 취약해질 수 있으므로 확인하려는 계약을 기준으로 조건을 선택한다.

관련 문서

NSubstitute / AutoFixture / Shouldly / NUnit