1일 1개념정리 24.08.09.금 ~
큰 결정에 큰 동기가 따르지 않을 때도 있다. 하지만 큰 결심이 따라야 이뤄낼 수 있다.
무조건 무조건 1일 1개의 개념 정리하기 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!
#87. E2E 테스트 (End to End)
E2E 테스트는 ui 테스트부터 시작하여 백엔드 api 테스트, 시스템 테스트 등 전반적인 모든 과정을 테스트하는 것이다. 오늘은 E2E 테스트에 대해 알아보자.

E2E
E2E 테스트는 개별적인 모듈 테스트 뿐만 아니라, 시스템 전체가 통합적으로 동작하는지 확인하는 테스트이다. 주요 특징은 다음과 같다.
- 실제 사용자 관점 : 시스템의 모든 구성 요소가 의도한 대로 동작하는지 확인. ex) 로그인, 검색, 결제 등
- 종합적 테스트 : 단위 테스트와 통합 테스트처럼 서비스 간의 연계를 확인한다.
- 환경 테스트 : 실제 환경에서 실행하는 것으로, 브라우저나 네트워크 환경 등을 테스트한다.
- 시나리오 기반 : 사용자 시나리오를 중심으로 테스트한다. ex) 사용자가 로그인 후, 상품 추가하고 결제한다.
이렇게 실제 사용자가 서비스를 이용하듯이 테스트 하는 것을 포함하는데, 사용자 입장에서 만족도를 느끼는 정도, 그리고 시스템간 상호작용(api 호출같은)을 검증할 수 있다. / 특히 복잡한 사용자 시나리오를 다룰 때 효과적이고, 시스템간 상호작용을 검증할 때, 그리고 사용자 경험이 중요한 SaaS같은 플랫폼에서 효과적이다.
단점
- End To End이므로 테스트 작성할 것이 많고 실행 시간이 길다.
- 막상 자동화 해놓아도, UI 변경이 잦다면 테스트 스크립트를 자주 업데이트 해야돼서 유지보수도 어렵다.
- 처음부터 쭉 테스트하므로, 로그 제대로 안찍으면 원인을 특정하기도 어렵고, 특히 시스템간의 이슈에서 어느쪽이 문제인지 파악하는 것도 어렵다.
E2E 테스트 도구 간단 정리
장점 | 단점 | |
Selenium | - Java, Python, JavaScript 등 지원. - 대부분의 브라우저와 플랫폼 호환 가능. |
- 설정과 환경 구축이 복잡. - 디버깅 및 유지보수가 어려움. - 테스트 속도가 느림. (wait을 계속 추가해야함) |
Cypress | - JS 기반으로 사용이 간편. - 디버깅이 용이. - 빠른 실행 속도. |
- 다중 브라우저 지원 제한 - 백그라운드 실행(ex. 헤드리스 모드) 기능 제한. |
Playwright | - 최신 브라우저 및 멀티 브라우저 테스트 강점. - 강력한 API와 병렬 테스트 지원. |
- 상대적으로 새로운 도구라 커뮤니티 생태계 제한적 |
E2E 테스트 vs 다른 테스트
아주 가볍게만 테스트를 비교해보자.
E2E 테스트 | 유닛 테스트 | 통합 테스트 | |
초점 | 전체 시스템의 통합 동작 | 개별 모듈의 기능 | 모듈 간 상호작용 검증 |
속도 | 느림 | 빠름 | 중간 |
테스트 대상 | UI → API → DB → 외부 시스템 | 특정 함수, 메소드 | API → DB, 서비스 간 연동 |
유형 | 사용자 시나리오 중심 | 개발자 중심 | 개발자 및 QA 중심 |
반응형
'1일 1개념정리 (24년 8월~12월) > 테스팅 , SW공학개론' 카테고리의 다른 글
1일1개 (86) - 방탄 테스팅 소년단 (0) | 2024.11.19 |
---|---|
1일1개 (80) - 개발하다가 갑자기 포커치기 (1) | 2024.11.13 |
1일1개 (78) - 여기부터 저기까지 다 ~~~~~~ 시 테스트하세요 (1) | 2024.11.11 |
1일1개 (75) - QA는 테스터인가 ? (0) | 2024.11.08 |
1일1개 (56) - 아나바다 패턴 (아껴쓰고 나눠쓰고 .....) (1) | 2024.10.10 |