값과 매처 연결하기
Gomega는 검사할 실제 값에 기대 조건을 나타내는 매처를 적용한다. 여러 매처를 조합하거나 사용자 정의 매처로 도메인 조건을 묶을 수 있다. 실패 시 값의 구조와 설명을 출력해 원인 탐색을 돕는다. 표현이 간결해도 조건이 너무 느슨하면 실제 결함을 놓칠 수 있다.
비동기 조건의 차이
즉시 만족해야 하는 조건과 일정 시간 안에 만족하면 되는 조건은 다르다. Eventually는 조건을 주기적으로 평가해 성공하거나 제한 시간에 도달할 때까지 기다린다. Consistently는 일정 기간 조건을 유지하는 검사를 위한 별도 기능이다. 반복 평가에 부작용이 생기지 않도록 관찰 방식을 설계하고 시간과 간격을 목적에 맞춘다.
실패 처리와 연동
Ginkgo와 함께 쓸 때는 실패 처리 경로를 연결하며 Go 기본 검사에서도 테스트 문맥에 맞는 구성을 사용할 수 있다. 단언 라이브러리를 쓰기 위해 반드시 Ginkgo로 실행기를 바꿀 필요는 없다. 자세한 출력에도 필요한 정보가 잘리거나 민감한 값이 포함될 수 있으므로 진단 표현을 조절한다. 비동기 단언이 대상 코드의 동기화 결함을 고쳐 주지는 않는다.
관련 문서
Ginkgo / Testify / Hamcrest / Awaitility