brunch

품질을 위한 찬성과 반대의 대립

테스트 자동화부터 툴 전환까지, ‘찬반 대립’을 Re-Thinking

by 제임스

QA 팀의 논의는 마치 국회의 치열한 표결 현장을 떠올리게 합니다. 자동화 테스트 도입, 수동 테스트 유지, 새로운 툴 채택 등, QA 팀에서 빈번하게 나오는 주제는 종종 찬성과 반대의 의견으로 갈립니다. “자동화가 모든 테스트의 해답이 될 수 있을까?”, “수동 테스트는 여전히 중요한가?”, “최신 툴 도입이 정말 필요할까?”와 같은 질문은 프로젝트와 팀의 방향성에 따라 각기 다른 답을 요구합니다.


어제 QA 오프라인 이벤트에서 한 참가자는 이러한 상황에 대해 질문을 던졌습니다. “QA 팀 내에서 찬반 논란이 있을 때, 어떻게 해결하시나요?” 이 질문은 단순히 기술적 선택의 문제를 넘어서, QA 팀이 품질을 위해 어떻게 협력하고 성장해나가야 하는지 근본적인 고민을 던졌습니다.


QA 팀 내에서는 정치적인 대립은 없어야 하지만, 건강한 찬반 논의는 필수적입니다. 의견이 나뉜다는 것은 팀이 품질 향상을 위해 고민하고 있다는 신호입니다. 중요한 것은 서로의 관점을 존중하며, 모든 논의가 품질이라는 공통 목표를 향해 나아가야 한다는 점입니다. 이 글에서는 QA 팀의 찬반 논의를 국회의 여야 대립에 비유하며, 각 입장이 품질에 어떤 영향을 미칠 수 있는지, 그리고 이를 조율하기 위한 방향성을 생각해보겠습니다.




첫 번째 안건: 테스트 자동화 도입, 도약인가 과한 기대인가?

도약일까? 과한 기대일까?


QA 국회의 첫 번째 안건은 “테스트 자동화 도입 법안”입니다. 이는 최근 QA 업계에서 가장 뜨거운 화두 중 하나로, 팀 내에서 쉽게 의견이 나뉘는 주제입니다.


찬성 측 의견


테스트 자동화를 지지하는 입장은 효율성반복 작업 감소를 주요 근거로 내세웁니다.


“자동화를 통해 QA 엔지니어가 반복적인 작업에서 해방되고, 더 창의적이고 중요한 테스트에 집중할 수 있습니다.”라는 주장은 자동화의 가치를 단적으로 보여줍니다. 특히 애자일 환경에서 릴리즈 주기가 짧고 빈번한 경우, 자동화는 필수적이라는 논리가 설득력을 얻습니다.


자동화된 테스트는 개발자가 새로운 코드를 추가하거나 수정할 때 신속하게 품질을 검증할 수 있어 코드의 안정성을 높이는 데 큰 기여를 합니다. 또한 회귀 테스트를 자동화하면 사람이 반복적으로 수행해야 하는 작업의 부담을 줄이고, 테스트 프로세스의 일관성을 보장할 수 있습니다.


찬성 측에서는 효율성뿐만 아니라 “장기적인 투자 가치”도 강조합니다. 초기 비용이 들더라도, 장기적으로 봤을 때 자동화는 수작업 테스트 비용을 줄이고, 팀의 생산성을 높이는 데 기여할 것이라는 전망입니다. 특히 대규모 프로젝트에서는 자동화 없이는 품질 관리가 사실상 불가능하다는 현실적 주장도 제기됩니다.


반대 측 의견


반대 측에서는 자동화의 한계를 지적하며, 신중한 접근을 요구합니다.


“자동화는 초기 도입 비용이 크고, 유지 관리에 많은 리소스를 요구합니다. 모든 테스트를 자동화할 수는 없습니다.”라는 반론은 자동화가 만능은 아니라는 점을 부각합니다. 자동화 도입 초기에는 테스트 스크립트를 설계하고 작성하는 데 많은 시간이 소요되며, 예상치 못한 오류가 발생하면 이를 해결하는 데 추가적인 리소스가 필요합니다.


특히 자동화 테스트가 모든 경우에 적합하지 않다는 점도 강조됩니다. 사용자 경험(UX)이나 직관적인 문제를 확인해야 하는 테스트는 자동화로 대체하기 어렵습니다. 또한, 자동화된 스크립트가 프로젝트 환경의 변화에 얼마나 유연하게 대응할 수 있는지도 큰 우려 사항입니다.


반대 측은 “자동화는 도구일 뿐, 전부가 아니다.”라고 주장하며, 수동 테스트와 자동화 테스트가 보완 관계에 있어야 한다고 강조합니다. 특히 소규모 프로젝트나 초기 단계의 서비스에서는 자동화의 도입이 오히려 팀의 부담이 될 수 있다고 지적합니다.


진행 방향성


테스트 자동화 도입의 방향성은 “현실적인 목표 설정과 단계적 접근”으로 요약할 수 있습니다.

1. 우선순위 설정: 모든 테스트를 자동화하려고 하기보다는, 단순하고 반복적인 작업부터 자동화해야 합니다. 예를 들어, 로그인, 데이터 입력, 또는 회귀 테스트와 같은 정형화된 작업이 좋은 시작점이 될 수 있습니다.

2. 핵심 기능에 집중: 프로젝트 초반에는 가장 중요한 핵심 기능을 자동화하는 데 초점을 맞추는 것이 효과적입니다. 이를 통해 자동화의 효용성을 평가하고, 팀원들의 신뢰를 얻을 수 있습니다.

3. 점진적인 도입: 자동화는 일회성 프로젝트가 아닌 장기적인 투자로 접근해야 합니다. 파일럿 프로젝트를 통해 자동화 도구의 적합성을 검증하고, 점차적으로 적용 범위를 확대하는 것이 바람직합니다.

4. 자동화 도구와 유지 관리 체계화: 자동화의 효과를 극대화하려면, 도구 선택과 스크립트 관리가 체계적이어야 합니다. 또한, 자동화 스크립트의 재사용성을 높이고 유지 보수 비용을 최소화하기 위한 표준화를 고려해야 합니다.

5. 혼합 전략 사용: 자동화와 수동 테스트는 상호 보완적인 관계로 유지해야 합니다. UX와 비정형적인 결함 발견은 수동 테스트에 맡기고, 반복적인 작업은 자동화로 처리함으로써 두 접근 방식의 장점을 극대화할 수 있습니다.


테스트 자동화 도입은 QA 팀에 있어 필수적인 논의 주제입니다. 그러나 도입 자체가 목표가 아니라, “효율성과 품질을 동시에 달성하는 전략”이 되어야 합니다. 자동화의 가능성과 한계를 모두 인지하며, 단계적이고 체계적인 도입을 통해 품질 보장에 기여하는 방향을 설정하는 것이 중요합니다. QA 국회가 이 법안을 통해 품질의 새로운 도약을 이룰 수 있기를 기대해 봅니다.




두 번째 안건: 수동 테스트의 부활, 필요성과 현실 사이


필요성과 현실


두 번째 안건은 QA 팀 내에서도 뜨거운 논의가 오가는 주제인 “수동 테스트 부활 법안”입니다. 이 법안은 자동화의 도입이 확대되면서 상대적으로 위축된 수동 테스트의 중요성을 재조명하자는 데 초점이 맞춰져 있습니다.


찬성 측 의견


수동 테스트를 지지하는 입장에서는 자동화가 해결할 수 없는 인간의 직관과 경험의 가치를 강조합니다. “자동화는 정해진 경로에서만 문제를 탐지할 수 있지만, 수동 테스트는 사람이 비정형적인 방식으로 제품을 탐구하며 예상치 못한 문제를 발견할 수 있습니다.”


특히 사용자 경험(UX)과 관련된 결함은 사람의 직관이 개입해야만 발견되는 경우가 많습니다. 예를 들어, 버튼이 의도한 대로 작동하지만 사용자 입장에서 직관적으로 불편하게 느껴질 수 있는 문제는 자동화 도구로는 포착하기 어렵습니다.


또한 수동 테스트는 “테스트 도중 얻어지는 즉각적인 피드백”을 제공한다는 점에서 강점이 있습니다. 자동화는 스크립트를 작성하고 실행한 후 결과를 검토하는 방식으로 진행되지만, 수동 테스트는 사람이 실시간으로 제품의 문제를 파악하고 분석할 수 있습니다.


탐색적 테스트(Exploratory Testing)도 수동 테스트의 강력한 무기 중 하나입니다. 탐색적 테스트는 사람이 제품을 사용하면서 느끼는 직관을 바탕으로 문제를 찾아내는 데 효과적이며, 설계 단계에서 놓쳤을 가능성이 있는 시나리오를 발굴하는 데 탁월합니다.


반대 측 의견


반대 측은 수동 테스트의 효율성 부족과 반복 작업의 부담을 주요 논리로 제시합니다. “수동 테스트는 시간과 비용 면에서 비효율적입니다. 반복적인 작업은 자동화로 처리해야 QA 엔지니어들이 더 중요한 작업에 집중할 수 있습니다.”


특히 대규모 프로젝트나 정기적으로 동일한 테스트를 수행해야 하는 경우, 수동 테스트는 병목현상을 초래할 수 있습니다. 수백 개의 기능을 검증해야 하는 대규모 애플리케이션에서 수동으로 모든 테스트를 실행한다면, 릴리즈 주기를 크게 늦출 수 있다는 우려가 나옵니다.


또한, 픽셀 단위의 디테일한 변경 사항을 검증해야 하는 작업에서는 사람이 모든 컴포넌트를 하나하나 확인하기에는 너무 많은 시간이 소요됩니다. 이런 경우 “자동화 도구가 훨씬 더 효과적이고 신뢰성 있는 결과를 제공할 수 있다”는 점도 반대 측의 주된 주장 중 하나입니다.


적게는 수백 개, 많게는 수 천개의 컴포넌트에 걸쳐 발생하는 미세한 시각적 차이는 사람이 눈으로 확인하기 어렵거나 놓치기 쉽습니다. 반대 측은 이러한 테스트는 시각적 비교 도구(예: Percy, Applitools)와 같은 자동화된 시각 테스트 도구를 활용해 정확성과 효율성을 극대화해야 한다고 강조합니다.


또한 수동 테스트는 “일관성을 유지하기 어려운 작업”으로 여겨지기도 합니다. 자동화 테스트는 동일한 조건에서 동일한 결과를 반복적으로 제공하지만, 수동 테스트는 수행하는 사람의 경험이나 숙련도에 따라 결과가 달라질 가능성이 있습니다.


진행 방향성


수동 테스트와 자동화 테스트는 경쟁 관계가 아니라 “상호 보완적”이어야 합니다. 두 가지 접근 방식이 조화를 이루려면 다음과 같은 전략이 필요합니다.

1. 수동 테스트의 목적 정의

수동 테스트는 UX와 디자인적 결함, 예상치 못한 경로에서의 문제를 발견하는 데 주력해야 합니다. 또한 탐색적 테스트를 통해 설계 단계에서 놓친 시나리오를 발굴하는 데 중요한 역할을 해야 합니다.

2. 자동화 가능한 영역 식별

반복적이고 정형화된 작업은 자동화로 처리해야 합니다. 특히, 픽셀 단위의 디테일 검증이나 대규모 컴포넌트 변경 사항 검증 등 사람이 확인하기 어렵거나 시간이 많이 걸리는 작업은 자동화 도구를 통해 효율성을 극대화해야 합니다.

3. 균형 잡힌 테스트 전략 수립

QA 팀은 프로젝트 요구사항과 팀의 역량을 고려해 수동 테스트와 자동화 테스트의 적절한 비율을 설정해야 합니다. 예를 들어, 초기 개발 단계에서는 수동 테스트를 통해 주요 결함을 탐지하고, 안정화된 이후에는 자동화로 전환하는 방식이 유용할 수 있습니다.

4. 탐색적 테스트의 강화

탐색적 테스트는 수동 테스트의 강점 중 하나로, 이를 체계적으로 계획하고 수행하는 방법을 팀원들에게 교육해야 합니다. 이를 통해 수동 테스트가 단순한 반복 작업이 아니라, 창의적이고 가치 있는 과정이 되도록 할 수 있습니다.

5. 효율적인 리소스 배분

QA 팀 내 리소스를 적절히 배분하여 수동 테스트와 자동화 테스트의 역할이 중복되지 않도록 해야 합니다. 수동 테스트는 고급 QA 엔지니어가, 자동화 테스트는 도구 활용에 익숙한 팀원이 맡는 식으로 팀의 역량을 최대화할 수 있습니다.


수동 테스트의 부활은 단순히 과거로의 회귀가 아니라, “테스트 과정에서 인간의 가치를 재발견”하는 과정이어야 합니다. 자동화가 모든 문제를 해결할 수는 없습니다. 특히, 픽셀 단위의 시각적 검증이나 반복적이고 정교한 작업은 자동화로 처리하는 것이 효율적이지만, 수동 테스트는 인간의 직관과 창의성이 빛을 발할 수 있는 영역에 초점을 맞춰야 합니다.


QA 국회의 이번 논의는 수동 테스트와 자동화 테스트의 역할을 명확히 구분하고, 이를 조화롭게 활용하는 방법을 탐구하는 기회가 될 것입니다. 자동화는 QA 팀의 강력한 도구가 될 수 있지만, 그 중심에는 여전히 사람이 있어야 한다는 점을 기억해야 합니다.


만약 QA 엔지니어들이 자동화에만 의존한다면, 차후 AI 기술의 발전으로 인해 사람이 맡아야 할 영역마저 잠식될 가능성이 큽니다. 반복적이고 정형화된 작업이 AI로 대체되는 것은 시간 문제이며, 이는 QA 엔지니어의 역할과 가치를 위협할 수 있습니다. 그러나 인간의 감각, 경험, 창의성이 발휘되는 수동 테스트의 영역은 AI조차 대체하기 어려운 인간만의 고유한 영역으로 남을 것입니다.


“수동 테스트는 제품의 숨겨진 가치를 발견하는 과정이고, 자동화는 이를 지키는 도구입니다.” QA 팀은 이러한 접근 방식을 통해 기술과 인간의 가치를 동시에 존중하며 품질을 지향해야 합니다.


최종적으로, QA 팀은 “AI 시대에도 인간의 가치를 중심에 두는 테스트 전략”을 설계해야 합니다. 사람과 기술이 조화롭게 공존하는 환경에서만 품질의 새로운 길이 열릴 것입니다. 수동 테스트를 전략적으로 활용하며, 자동화와의 균형을 맞춘 QA 팀이야말로 AI 시대에도 품질을 이끌어가는 선구자가 될 것입니다.




세 번째 안건: 최신 툴 도입 vs 기존 툴 유지

최신이 답일까? 기존을 유지하는 것이 좋을까?


세 번째 안건은 QA 팀 내에서 자주 논의되는 “최신 툴 도입 vs 기존 툴 유지 법안”입니다. 이 논의는 기술 발전과 안정성 사이에서 균형을 찾는 문제로, QA 엔지니어들 사이에서 쉽게 찬성과 반대 의견으로 나뉘곤 합니다.


찬성 측 의견


최신 툴 도입을 지지하는 입장은 Playwright, Cypress, K6와 같은 현대적이고 강력한 도구들이 기존 툴보다 속도와 유연성, 사용자 경험(UX) 측면에서 우월하다고 주장합니다.


“최신 기술은 변화하는 환경에 민첩하게 대응할 수 있도록 돕습니다.”라는 주장은 디지털 혁신 속도가 빨라지고 있는 현대 소프트웨어 개발 환경에서 특히 설득력을 갖습니다. 최신 툴은 종종 더 나은 API, 직관적인 UI, 그리고 높은 유지 보수성을 제공하며, 개발자와 QA 엔지니어 간의 협업을 더욱 원활하게 만들어줍니다.


예를 들어, Playwright는 멀티 브라우저 지원과 비동기 작업의 강점을 내세우며 QA 팀이 다양한 플랫폼에서 더 빠르고 정밀한 테스트를 수행할 수 있도록 돕습니다. Cypress는 실시간 리로딩 기능과 사용자 친화적인 테스트 작성 환경을 제공하여 빠른 피드백 루프를 가능하게 합니다.


찬성 측은 “새로운 툴의 도입이 팀의 역량을 강화하고, 생산성을 크게 높인다.”고 주장하며, 도구를 업데이트하지 않는 것이 오히려 기술 부채를 증가시키는 위험 요소가 될 수 있다고 경고합니다. “현재의 도구에 안주하면 경쟁에서 뒤처질 수 있다.”는 위기의식이 최신 툴 도입파의 주장에 무게를 더합니다.


진행 방향성


최신 툴과 기존 툴 간의 선택은 “팀의 현재 상황과 프로젝트 특성”에 따라 달라져야 합니다. 다음은 QA 팀이 현실적으로 적용할 수 있는 방향성입니다.

1. 점진적인 도입

최신 툴 도입은 “전면적인 전환”보다는 “점진적인 시도”로 접근해야 합니다. 파일럿 프로젝트를 통해 새로운 도구가 팀과 프로젝트에 적합한지 확인하고, 점차 적용 범위를 확대하는 방식이 가장 안전합니다.

2. 현재와 미래의 필요성 평가

새로운 툴을 도입하기 전에 현재 사용하는 도구가 프로젝트의 요구를 얼마나 충족하고 있는지 분석해야 합니다. 새로운 툴이 가져다줄 이점이 충분히 크지 않다면 기존 도구를 유지하는 것이 합리적일 수 있습니다.

3. 팀원의 학습 지원

최신 툴의 도입은 팀원들이 이를 충분히 이해하고 활용할 수 있도록 교육과 학습 지원이 뒷받침되어야 합니다. 사내 워크숍, 도구 활용 가이드, 테스트 사례 공유 등으로 팀의 학습 곡선을 줄이는 노력이 필요합니다.

4. 혼합 전략 활용

모든 도구를 최신으로 전환할 필요는 없습니다. Selenium과 같은 기존 도구를 유지하면서도, 특정 작업에 Playwright나 Cypress를 보완적으로 사용하는 혼합 전략이 좋은 대안이 될 수 있습니다. 이를 통해 새로운 도구의 장점을 경험하면서도 기존 프로세스의 안정성을 유지할 수 있습니다.

5. 비용과 시간의 현실적 고려

새로운 툴의 도입에는 항상 초기 비용과 시간이 소요됩니다. 이를 현실적으로 평가하고, 투자 대비 효과를 명확히 분석해야 합니다. 단기적 목표보다는 장기적인 생산성과 품질 향상에 초점을 맞춘 접근이 필요합니다.


최신 툴과 기존 툴 사이의 논쟁은 QA 팀이 품질 보장을 위해 끊임없이 고민해야 하는 주제입니다. 새로운 도구는 혁신을 가져올 수 있지만, 기존 도구는 안정성을 제공합니다. 중요한 것은 팀과 프로젝트의 상황에 맞는 균형 있는 결정을 내리는 것입니다.


QA 국회의 이번 논의는 “도구 선택이 기술적 경쟁력을 좌우할 수 있다.”는 점을 다시 한번 상기시키는 계기가 될 것입니다. 품질은 도구 자체에 달려 있지 않습니다. “어떤 도구를 선택하든, 그것을 제대로 활용할 준비가 되어 있는 팀”이 진정한 품질을 만들어갑니다.


“품질을 위한 도구는 단지 수단일 뿐, 최종 목표는 품질 그 자체입니다.”

QA 국회는 오늘도 최선의 결정을 고민하고 있습니다.




QA 국회에서 논의된 세 가지 주요 안건은 QA 팀이 당면한 고민과 방향성을 잘 보여줍니다.

테스트 자동화 도입: 효율성과 품질의 균형을 고민하며, 자동화와 수동 테스트의 조화로운 사용이 중요함을 강조합니다.

수동 테스트의 부활: 인간의 직관과 경험을 중심으로, AI와 자동화가 대체할 수 없는 영역의 중요성을 다시 한번 상기시킵니다.

최신 툴 도입 vs 기존 툴 유지: 기술적 혁신과 안정성 사이에서 최적의 선택을 찾기 위한 점진적 접근의 필요성을 보여줍니다.



QA 포지션은 AI 시대에도 상대적으로 건재합니다. 이는 품질 보장이 단순한 기술적 검증을 넘어, 인간만이 할 수 있는 창의적이고 직관적인 역할이 필요하기 때문입니다. 그러나 자동화에 지나치게 의존할 경우, AI 기술이 고도화되면서 인간이 맡아야 할 아름다운 역할마저 잠식될 위험이 있습니다.


QA 국회의 논의를 통해 도출된 공통적인 방향성은 다음과 같습니다.

자동화와 수동 테스트의 조화: 반복적이고 정형화된 작업은 자동화로 처리하되, UX와 창의적 문제 해결은 인간의 고유한 강점으로 유지해야 합니다.

효율성과 안정성을 고려한 점진적 접근: 도구와 프로세스의 변화는 기존의 안정성을 해치지 않도록 점진적으로 진행해야 하며, 파일럿 프로젝트 등을 통해 리스크를 최소화해야 합니다.

인간 중심의 테스트 철학 유지: AI와 자동화가 발전하더라도, QA의 중심은 여전히 사람입니다. 인간만이 할 수 있는 직관적이고 감각적인 역할을 강화해야 합니다.


“AI와 자동화는 QA의 미래를 여는 열쇠이지만, 문을 여는 주체는 사람입니다.” AI 시대에도 QA 엔지니어가 사람만이 할 수 있는 아름다운 역할을 지켜나가는 것이야말로, 품질 보장의 진정한 가치를 실현하는 길이 될 것입니다.

keyword
작가의 이전글소프트웨어 QA에서의 고학력자