자동화 테스트와 수동 테스트 간의 선택 전략은 비용, 목표, 기능의 안정성 및 사용 가능한 인력 자원 등 여러 요인에 따라 결정됩니다.
문제의 역사: 자동화가 시작되었을 때, 목표는 100% 테스트 자동화를 달성하는 것이어야 한다고 여겨졌습니다. 하지만 나중에 모든 검사를 자동화할 필요는 없다는 것이 분명해졌습니다. 일부 작업은 수동으로 수행하는 것이 더 쉽고 빠르며 저렴합니다.
문제: 자동화는 동일한 시나리오를 자주 반복 실행했을 때만 유용합니다. 일회성, 빠르게 변화하는 또는 주관적인 (시각적, UX) 검사는 수동으로 수행하는 것이 훨씬 간단합니다. "모든 것을 자동화하려는" 시도가 예산을 급격히 늘리고, 이익을 잃게 만듭니다.
해결책: 무엇보다 자동화해야 할 것들은 다음과 같습니다:
수동 테스트는 다음과 같은 경우에 적합합니다:
주요 특징:
프로젝트에서 모든 테스트를 자동화하면 이익을 얻을 수 있을까요?
아니요. 많은 테스트가 수익을 창출하기 전에 변경되기 때문에, 자동화 유지관리에 드는 비용이 수동 테스트를 수행하는 것보다 더 비쌀 것입니다.
배포 시 수동 테스트가 필수적일 수 있나요?
예, UI/UX와 시각적 회귀와 관련된 일부 작업은 자동화하는 것이 어렵거나 불가능하기 때문입니다.
일회성/탐색적 작업을 자동화하는 것이 이익인가요?
아니요, 자동화는 일회성 또는 드물게 사용되는 테스트의 경우 투자 대비 수익이 없습니다.
팀이 모든 수동 테스트 케이스를 자동화하기로 결정했으며, 비표준 장치에서의 교차 브라우저 테스트와 레이아웃 시각적 검사를 포함했습니다. 결과적으로 몇 달간 수백 시간이 비현실적인 테스트 유지에만 사용되었습니다.
장점:
단점:
팀이 관리자와 함께 비즈니스에 중요한 시나리오 목록(등록, 결제 검증)을 정리하여 안정적으로 자동화했으며, 나머지는 수동으로 또는 부분적으로(탐색적 테스트를 사용하여) 테스트하였습니다.
장점:
단점: