Software Quality

E2E 테스트 본문

SQA/이론

E2E 테스트

Kairoka 2023. 9. 29. 17:55

1. What is E2E Test?

End to End 테스트의 약자로

애플리케이션의 전체 흐름을 테스트하여 문제를 감지하고 하위 시스템의 테스트 범위를 늘려 사용자의 예상대로 작동하는지 확인해 신뢰성을 높히기 위한 위한 체계적인 프로세스입니다.

 

2. Typical E2E Test Life Cycle

1. 테스트 계획

이 단계는 통합/시스템 테스트가 완료되면 이루어집니다. 초기 클라이언트 요구 사항 및 애플리케이션 아키텍처를 기반으로 테스트 목표를 설정합니다.

2. 테스트 설계

요구 사항에 따라 적절한 테스트 환경을 설정됩니다. 일반적으로 테스트 환경은 이전 테스트 실행을 위해 이미 구성되어 있고, 테스터는 이러한 기존 구성을 활용할 수 있습니다. 또한 테스트 목표를 달성하기 위해 적합한 리소스를 보다 효과적으로 할당하기 위해 위험 분석 및 사용 현황 분석이 수행됩니다. 그 후 테스터는 필요한 테스트 케이스를 작성하기 시작하며, 자동화 테스트 도구를 활용하여 테스트 설계에 소요되는 시간을 최소화합니다.

3. 테스트 실행

테스트 케이스는 로컬 및 원격으로 실행됩니다. 원래 테스트 계획과 일치하는지 테스트 진행 상황을 모니터링합니다.

4. 결과 분석

테스트 결과를 분석하고 버그의 근본 원인을 찾습니다. 발견된 내용은 즉각적인 조치를 위해 개발팀에 전달됩니다. 그런 다음 프로세스를 평가하고 개선 영역을 논의하기 위해 프로젝트 회고를 진행합니다.

 

3. Strength

1. 여러 애플리케이션 레벨에 걸친 품질 관리

현대 애플리케이션은 여러 계층으로 구성된 복잡한 아키텍처 위에 구축되며, 이 계층들은 서로 연결된 워크플로를 가지고 있습니다. 이러한 계층들은 개별적으로는 잘 작동할 수 있지만 연결되면 서로 충돌할 수 있습니다. E2E 테스트는 이러한 개별 계층과 구성 요소 간의 상호 작용을 검증할 수 있습니다.

2. Backend QA

애플리케이션의 백엔드 계층, 특히 애플리케이션이 작동하기 위해 다른 계층에 중요한 정보를 제공하는 애플리케이션의 데이터베이스를 검증합니다.

3. 환경 전반에 걸쳐 일관된 애플리케이션 품질 보장

프론트엔드를 검증하여 애플리케이션이 다양한 브라우저, 기기 및 플랫폼에서 예상대로 작동하는지 확인합니다. 이러한 목적으로 크로스 브라우저 테스트가 자주 수행됩니다.

4. 타사 애플리케이션 테스트

애플리케이션에는 특정 작업을 수행하기 위해 외부 시스템과 연결되어 있는 경우가 있습니다. E2E 테스트를 통해 외부 시스템과 내부 시스템 간의 호환성 및 데이터 통신이 보장됩니다.

 

 

4. Comparison to other testing methods

End-to-end Testing vs Functional Testing

  기능 테스트(Functional Testing) E2E Testing
범위 테스트가 단일 코드 또는 응용 프로그램으로 제한 테스트는 여러 응용프로그램 및 사용자 그룹에 걸쳐 수행
목적 테스트된 소프트웨어가 허용 기준을 충족하도록 보장 변경한 후에도 프로세스가 계속 작동하는지 보장
테스트 방법 단일 사용자가 애플리케이션과 상호 작용하는 방식을 테스트 여러 애플리케이션에서 여러 사용자가 작업하는 방식을 테스트
검증 내용 입력 및 출력에 대한 결과를 검증 프로세스의 각 단계가 완료되었는지 검증

 

End-to-End Testing vs Integration Testing

  통합 테스트(Integration Testing) E2E Testing
관점 기술적 관점 최종 사용자 관점
목표 애플리케이션 구성 요소가 함께 잘 작동하는지 확인 사용자 경험이 일관성 있게 유지되는지 확인
범위 하나의 애플리케이션 내에 여러 구성 요소 포함 애플리케이션의 전체 기술 스택에 걸쳐 있을 수 있음
비용 구현 비용이 저럼 실제 시나리오를 시뮬레이션 하는 것에 필요한 하드웨어 및 소프트웨어로 인해 구현 비용이 높음
소요시간 E2E 테스트보다 빠름 (200개 테스트에 약 1시간 미만) 통합 테스트보다 긴 시간 (최대 4~8시간 소요될 수 있음)

 

 

참고

https://www.guru99.com/end-to-end-testing.html

https://katalon.com/resources-center/blog/end-to-end-e2e-testing