brunch

You can make anything
by writing

C.S.Lewis

by 윤종윤 Dec 13. 2022

QA TEST 는 QA



QA 는 서비스 기능 테스트를 의미하나요? 

의외로 많은 분들이 서비스 test 의 의미로 QA 라고 말씀하는 경우가 있는데, 기능 테스트가 QA 에 포함 되지만 QA 의 전부는 아닙니다. QA 는 Quality Assurance 의 약자로 "품질 보증" 을 의미 합니다. 

서비스의 품질을 보증 하는 역할을 QA 라고 볼 수 있는 만큼 
테스트는 QA(품질보증) 을 하기 위해 필요한 주요 업무중 하나로 볼 수 있습니다. 




테스트 외 QA 는 어떤 역할을 하나요? 

제가 만나본 회사마다 QA 의 담당 역할이 다양했지만 QA (품질 보증) 을 한다는 큰 전제는 동일 하였습니다.

품질 보증의 범주 기준을 어떻게 하느냐에 따라 전담하는 업무가 달라졌는데, 

서비스 테스트를 관리하는 범주는 동일하게 가지고 가되, 기획, CS 등의 업무에도 일부 관련하여 의견을 조율하거나 데이터를 분석하여 기능 방향을 제안 하는 등의 업무가 포함 되어 있습니다. 


QA 업무에 대해서는 Line 의 QA 담당자님께서 너무 잘 정리해주신 자료가 있어 링크 공유 합니다. 

    Line 의 QA 는 어떻게 일할까? : https://engineering.linecorp.com/ko/blog/about-line-qa/





왜 QA 는 서비스 TEST 로 인식 되는 것인가요?

서비스를 문제 없이 사용 할 수 있다는 '품질 보증' 을 하기 위해서는 테스트 업무가 필수적 이기 때문입니다. 

특히 신규로 출시되는 서비스나 업데이트되는 기능에 대한 품질 보증을 하기 위해서는 테스트를 생략 할 수 없는데 주로 QA 담당자가 테스트의 전반적인 절차와 테스트 결과 등을 관리하기 때문이라 생각 됩니다. 

또한 회사 내부에 적합한 테스트 담당자가 없을 경우 크몽, 숨고 등을 통해 테스트 아웃소싱을 하는 경우도 있는데 

이때 제공되는 테스트 서비스의 명칭도 QA 로 불리기도 합니다. 





서비스 테스트는 왜 하는 것인가요? 

테스트를 통해 발견된 모든 오류를 수정해야 서비스를 출시 할 수 있는 것은 아닙니다. 

테스트 중 발견되는 문제에 대한 대응을 준비하는 과정으로 테스트가 꼭 필요 합니다. 

심각한 오류 발견으로 개발 코드 수정이 필요한 것은 긴급 수정 작업이 들어가야 하며, 

유저에게 안내로 해결 할 수 있는 부분은 가이드 제작 작업을 시작 해야 합니다. 


기획 의도대로 서비스가 동작 하는지 점검 하는 목적으로도 테스트가 꼭 필요 합니다. 

"기획 → 디자인 → 개발" 과정에서 충분한 의사소통을 진행 했음에도 불구하고 완성된 서비스에서 기획의도가 잘못 이해되어 개발에 반영된 경우가 발생 할 수 있습니다. 

서비스가 만들어지는 첫 단계가 기획이라면, 기획대로 완성 되었는지 점검하는 마지막 단계가 QA TEST 라고 볼 수 있겠습니다. 





디테일한 서비스 테스트 방법

어느정도 규모가 있는 기업의 경우 별도의 QA 부서에서 테스트를 전담 관리 하지만, 인력이 부족한 스타트업이나 작은 기업의 경우 개발자나 기획자가 직접 테스트 하는 경우가 많습니다. 

이 경우 의도치 않게 테스트의 객관성이 떨어져 오류 발견을 하지 못한 채 출시하는 경우가 허다한데요. 

정확하고 디테일한 서비스 테스트를 하기 위해서 고려해야할 사항은 다음과 같습니다. 


기획서를 평가 기준으로 테스트를 진행 해야 합니다. QA TEST 는 객관성이 상당히 중요 합니다. 

기획서와 다른 방식으로 구현 되어 동작하는 것을 QA 담당자가 주관적으로 통과, 오류 판단하는 경우 

추후 서비스 업데이트나 CS 고객 안내 과정에서 다른 문제를 발생 시킬 수 있습니다. 

기획서대로 객관적으로 평가하고, 기획과 다른 내용은 타 부서와 공유하며 개인 의견을 첨언 하는 방식이 좋습니다. 


꼼꼼하고 자세한 체크리스트가 있으면 좋습니다. Test case (TC) 체크리스트를 준비하여 항목별로 테스트 하는 경우가 있고, 별도의 TC 없이 유저 사용 흐름대로 자율 테스트를 실행하며 오류를 찾는 방법이 있는데, 개인적으로 TC 를 꼼꼼하게 준비 한 다음 테스트를 실행하는 것을 선호 합니다. 자율 테스트 진행시 일부 기능 테스트가 누락되는 경우가 발생하며, 유저가 오류를 먼저 발견하여 내부 대응책이 준비되지 않는 불상사가 생기기 때문입니다. 

특히 QA 부서에서 테스트를 관리하고 다수의 인원이 테스트에 참여 할 수록 TC 는 꼼꼼하고 자세하게 작성이 되어 있어야 하는데요. 객관성이 중요한 QA 테스트인 만큼, 다양한 경험을 가진 테스터들이 객관성을 가질 수 있도록 기준을 잡아주는 역할이 TC 체크리스트 입니다. 


테스트 문제 발견 상황을 자세하게 리포트 해 주면 좋습니다. 어떤 환경, 어떤 상황에 문제가 발견 되었는지 자세한 설명과 오류 상황을 녹화한 영상이나 캡쳐이미지를 함께 첨부해 주면, 오류를 확인하고 코드 수정을 해야 하는 개발 입장에서도 명확하게 인지를 할 수 있습니다. 이슈에 대해 의사 전달이 명확하지 못할 경우 테스터가 발견한 오류와 다른 내용으로 기획이 수정되거나 코드 수정되는 불상사가 발생 하기도 합니다. 





결국 좋은 QA TEST 를 진행하기 위해서는 기획내용, 테스트 항목, 발견된 이슈를 서로 다르게 이해하지 않도록 명확하게 전달 할 수 있어야하며, 서로 동일하게 이해하는 내용대로 꼼꼼한 테스트 후 의견을 나눌수 있는 환경이 되어야 한다라고 생각합니다. 




작가의 이전글 QA TEST는 누가 참여해야 하나?
브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari