토픽 62 / 192·소프트웨어 테스트
테스트 자동화 (Test Automation)
테스트 자동화 (Test Automation)
테스트 실행, 결과 비교, 보고를 소프트웨어 도구를 사용하여 자동으로 수행하는 것
목적: 반복 작업 감소, 회귀 테스트 효율화, 빠른 피드백
자동화 대상
- •적합: 반복 실행, 회귀 테스트, 데이터 기반 테스트, CI/CD
- •부적합: 1회성, 탐색적 테스트, UI 빈번 변경
테스트 피라미드
- •단위 테스트(많이): 빠름, 저비용
- •통합/서비스 테스트(중간)
- •UI/E2E 테스트(적게): 느림, 고비용
자동화 도구
- •단위: JUnit, pytest, Jest
- •API: Postman, RestAssured
- •UI: Selenium, Cypress, Playwright
- •성능: JMeter, k6, Gatling
- •BDD: Cucumber, SpecFlow
성공 요인: 유지보수 가능한 테스트 코드, 적절한 범위 선정
비교: 자동화(반복/회귀) vs 수동(탐색적/1회성)
연관: CI/CD, DevOps, 테스트 피라미드