요약
- 둘 다 준비, 실행, 검증이지만 AAA은 기술적 관점으로 유닛 테스트에서 사용되며 GWT는 사용자 관점으로 통합 테스트에서 사용한다.
내용
Arrange-Act-Assert, AAA
- Arrange(준비)
- Act(실행)
- 테스트 대상 메서드나 기능을 호출하여 동작을 수행한다.
- Assert(검증)
Given-When-Then, GWT
- Given(준비): 테스트의 초기 상태나 조건을 설정한다.
- When(실행): 테스트 대상 동작을 수행한다.
- Then(검증): 기대하는 결과를 확인한다.
차이점
- 표현 방식과 적용 맥락의 차이가 있다.
- AAA 패턴은 기술적인 용어를 사용한다. (Unit Test)
- GWT 패턴은 자연어에 가까운 표현을 사용하여 시나리오를 기술한다. (BDD)
참고