안녕하세요! QA여행 ( https://qajourney.tistory.com/ ) 입니다.
챌린지 21일차, QA의 미래를 향한 첫걸음을 떼는 날입니다.
지금까지 우리는 '수동 테스트'의 전문가가 되기 위한 길을 걸어왔습니다.
하지만 IT 산업이 발전하면서 더 빠르고, 더 정확한 테스트에 대한 요구가 커지고 있죠.
그래서 등장한 것이 바로 테스트 자동화(Test Automation)입니다.
오늘은 많은 분들이 궁금해하고, 또 조금은 두려워하는 테스트 자동화의 세계에 첫발을 내디뎌보겠습니다.
"코딩을 못하는데 괜찮을까?" 걱정하지 마세요.
오늘은 '왜' 자동화가 필요한지, 그 본질부터 차근차근 알아보겠습니다.
테스트 자동화란 무엇일까요?
테스트 자동화는 말 그대로,
사람이 직접 하던 반복적인 테스트 작업을 스크립트(코드)를 이용해 컴퓨터가 대신 수행하도록 만드는 것입니다.
- 수동 테스트 : QA가 직접 마우스를 클릭하고 키보드를 입력하며 결과를 눈으로 확인.
- 자동화 테스트 : 미리 작성된 스크립트가 앱을 실행하고, 특정 버튼을 클릭하며, 결과 값이 예상과 같은지 자동으로 검증.
마치 매일 손으로 하던 설거지를 식기세척기가 대신해 주는 것과 같습니다.
우리는 그 시간에 더 중요하고 창의적인 일에 집중할 수 있게 되죠.
모든 것을 자동화할 수는 없습니다
"그럼 모든 테스트를 다 자동화하면 되지 않나요?" 라고 생각할 수 있지만, 정답은 '아니요' 입니다.
자동화는 만병통치약이 아니며, 잘못 사용하면 오히려 독이 될 수 있습니다.
자동화는 초기 구축에 많은 시간과 노력(비용)이 들어갑니다.
따라서 ROI(투자 대비 효과, Return on Investment)를 신중하게 따져봐야 합니다.
자동화의 ROI에 대해 더 깊이 알고 싶다면, 아래 아티클을 참고해 보세요.
[자동화에 적합한 테스트]
- 자주, 그리고 반복적으로 수행되는 테스트 :
- 리그레션 테스트(Regression Test) : 배포 전마다 항상 수행해야 하는, 기존 기능에 대한 방대한 테스트. 자동화의 가장 대표적인 대상입니다.
- 스모크 테스트(Smoke Test) : 빌드가 나올 때마다 핵심 기능이 동작하는지 빠르게 확인하는 테스트.
- 다양한 환경에서 동일하게 수행해야 하는 테스트 :
- 여러 브라우저, 여러 기기에서의 호환성 테스트.
- 사람이 하기 지루하고 실수하기 쉬운 테스트 :
- 수많은 데이터를 입력하고 결과를 비교해야 하는 테스트.
[자동화에 적합하지 않은 테스트]
- 단 한 번만 수행되는 테스트 : 자동화 스크립트 짜는 시간이 더 오래 걸립니다.
- 요구사항이 계속해서 바뀌는 기능 : UI나 로직이 바뀔 때마다 스크립트를 계속 수정해야 해서 유지보수 비용이 더 큽니다.
- 사용성 테스트(Usability Test) : "이 버튼 디자인이 예쁜가?", "사용하기 편리한가?" 와 같이 사람의 주관적인 판단과 경험이 필요한 테스트.
- 탐색적 테스팅(Exploratory Testing) : 정해진 시나리오 없이, 테스터의 직감과 경험을 바탕으로 시스템의 약점을 찾아 나서는 테스트.
테스트 자동화의 장점과 현실적인 어려움
장점 (Pros) :
- 속도와 효율성 : 사람이 몇 시간에 걸쳐 할 일을 몇 분 만에 끝낼 수 있습니다. 24시간 내내 테스트를 돌릴 수도 있죠.
- 정확성과 신뢰성 : 사람은 지치면 실수를 하지만, 기계는 항상 동일한 절차를 정확하게 수행합니다.
- 버그 조기 발견 : 개발 초기 단계부터 자동화 테스트를 구축(CI/CD 연동)하면, 코드가 변경될 때마다 문제를 즉시 발견할 수 있습니다.
- QA의 가치 상승 : 반복 업무에서 해방된 QA는 사용성 개선, 새로운 테스트 전략 수립 등 더 고차원적이고 창의적인 일에 집중할 수 있습니다.
어려움 (Cons) :
- 초기 학습 곡선 : 자동화 도구나 프로그래밍 언어를 배워야 합니다.
- 구축 비용 : 초기 스크립트 작성에 많은 시간과 노력이 필요합니다.
- 유지보수 : UI나 기능이 변경되면, 기존의 자동화 스크립트도 함께 수정해주어야 하는 '유지보수' 작업이 꾸준히 발생합니다.
마무리하며
테스트 자동화는 수동 테스트를 '대체'하는 것이 아니라, 서로의 단점을 보완하며 함께 가는 '동반자' 입니다.
반복적이고 지루한 일은 자동화에 맡기고,
우리는 사람만이 할 수 있는 창의적이고 분석적인 테스트에 집중함으로써 전체적인 품질을 한 단계 끌어올리는 것이죠.
"코딩을 못해서 자동화는 못 해"라고 지레 겁먹지 마세요.
가장 대표적인 웹 자동화 도구인 Selenium의 공식 사이트를 둘러보며 어떤 도구들이 있는지 눈에 익혀두는 것도 좋은 시작입니다.
최근에는 코드를 거의 쓰지 않고도 자동화를 구현할 수 있는 좋은 툴들도 많이 나오고 있습니다.
오늘도 새로운 분야에 대한 두려움을 용기로 바꾸신 여러분을 응원합니다!
내일 22일차에는 드디어 코딩 없이도 시작할 수 있는 <Postman으로 시작하는 나의 첫 API 테스트>를 통해,
테스트 자동화의 세계에 구체적인 첫발을 내디뎌 보겠습니다.
개발자가 아니어도 충분히 따라오실 수 있으니 기대해주세요!
그럼 편안한 저녁 보내시고, 내일 뵙겠습니다!
'ISTQB 4주 실전' 카테고리의 다른 글
| (4주 5일차) 최종 관문, 매력적인 QA 포트폴리오와 면접 준비 (24) | 2025.09.12 |
|---|---|
| (4주 4일차) 코딩 없이 시작! Postman으로 나의 첫 API 테스트 (21) | 2025.09.11 |
| (4주 2일차) 실습! 개발자가 "고맙다"고 말하는 버그 리포트 (17) | 2025.09.09 |
| (4주 1일차) 결함 관리와 리포팅, QA의 '꽃'을 피우다 (19) | 2025.09.08 |
| (3주 6일차) QA의 무기를 장착하다 (3주차 회고) (24) | 2025.09.06 |