25일 오전, 코엑스 NDC2012에서는 QA에 대한 소개가 이어졌다. 엔트리브 소프트의 김인수 주임은 "개발 QA의 은밀한 매력"라는 다소 재미있는 주제로 강연을 시작했다.


그는 게임 QA는 그냥 게임만 하는 것 아니냐는 질문을 많이 받지만, QA는 게임 소프트웨어의 전반적인 품질을 책임지는 역할을 하고있다고 설명했다. 게임QA는 안전을 책임지는 보안성, 사용에 불편이 없는 사용성, 윈도우나 크롬 등 다양한 플랫폼에서 작용하는 호환성, 의도한 대로 동작하는 정확성, 게임이기에 재미가 있어야 하는 게임성 등 게임 전반에 걸쳐 품질을 확인한다는 것.


개발 QA가 회사 전체의 업무를 진행한다면 게임QA는 개발 팀 내부에 소속되어 하나의 게임에 대해서만 QA를 진행하는 경우가 많다고 설명했다. 게임이 출시된 이후 사후 평가하는 개발QA와는 달리 게임QA는 기획 초기 단계에서부터 완료 단계까지 업무가 진행되기 때문에 버그가 발생하더라도 이를 해결하기 위한 시간과 비용을 줄일 수 있다는 것이다. 예를 들어 게임 프로그램 기획서가 제출되면, 이에 따른 예상 문제를 확인해 피드백을 주는 것도 게임QA의 역할이라고 설명했다.




게임QA는 팀 내에서 개발자와 실시간으로 의견을 교환하며 기획 의도를 줄이고 커뮤니케이션을 높이는 역할을 담당한다. 한 게임에 대해 집중적으로 탐색하며, 개발의 모든 단계에 걸쳐 업무가 진행되기 때문에 자신이 담당하는 게임에 마스터가 되어야 한다는 것. 게임의 기획 단계를 확인하고 버그를 예측하거나, 게임을 실제 시행했을 때 테스트하며 버그를 찾아낼 수 있는 정도로 그 게임의 전문가가 되야한다고 설명했다.


김인수 주임은 엘리샤에서의 개발QA 경험을 사례로 설명했다. 앨리샤 게임에서 QA는 한 주간 어떤 업무를 진행할 지 일정 및 업무 계획을 정하고, 업무 내용을 정리 한다거나, 기획서를 참고하여 작성된 테스트 케이스(Test Case)를 통해 테스트 목록을 세운다. 벨런스 테스트를 통해 실력 기반 모델로 테스트를 진행하고 그 결과를 게임에 반영하도록 한다고. 또한 버그 문제를 관리하는 툴인 버그트래킹시스템(BTS)을 활용해 버그 리스트를 작성하는 역할을 담당한다. 그러면서 실제로 게임 내에서 특정 지역으로 코스를 달리면 기록이 계측되지 못하는 상황이 발생했고, 이를 코스에 위치 포인터를 추가함으로써 버그를 수정했던 사례를 소개했다.


김인수 주임은 발표를 마치며 "게임 개발은 혼자서 하는 것이 아니라 그래픽디자이너, 프로그래머, 이펙터 등 다양한 사람이 하나의 작업을 하는 것이기 때문에 커뮤니케이션 기술이 매우 중요하다"고 하며, "문서를 기획하고 논리적으로 표현하기 위해 업무에 있어서 원활한 문서작성능력과 커뮤니케이션 능력, 그리고 게임 게발전반에 있어서 업무를 처리해야하기 때문에 건강한 체력이 필수적으로 요구된다"고 당부했다.



















이어 넥슨 포털본부의 황진석 대리의 "탐색적 테스팅을 활용한 게임QA" 강연이 계속됐다.

황진석 대리는 "테스트 케이스(Test Case) 기반은 테스트 시간이 부족하거나, 다양한 테스트를 진행해야 하는 것에 대한 고민이 있다며, 이번 세션은 그 고민에서부터 시작했다"고 말머리를 이었다.

탐색적 테스팅은 작성하는 데 크게 시간을 할애하지 않고, 빠르게 피드백을 할 수 있다는 장점이 있으며, TC를 기반으로한 테스트보다 중요한 결점을 효과적으로 찾아낼 수 있다. 또한 중간에 명세서가 바뀌어야 할 경우 변경 적용이 용이하다는 장점이 있다고 설명했다. 그러나 테스트를 진행하면서 필수로 테스트 항목이 작성되지 않기 때문에 전체 진행사항을 파악하기 어려우며, 동일한 버그를 재현하기 어렵고, 테스터의 경험과 지식이 부족하면 결함을 찾기 어렵다는 단점도 함께 지적됐다.




황진석 대리는 탐색적 테스트를 설명하기 위해 '미로찾기'를 예로 설명했다.


일반적으로 TC를 활용해 길을 찾는다면, 분기점 갯수를 확인해 테스트 항목을 만들어 진행하는 방법으로 진행된다. 그러나 미로가 커질수록 복합도가 증가되고, 테스트 항목이 기하급수적으로 늘어난다는 설명이다. 벽따라가기 방법을 활용하면 시간만 충분히 있다면 결승전에 도달할 수 있지만, 효율적이지 못하다는 단점이 있다.


반면 탐색적 테스트는 화면을 분할하고 목표지점에서 거끄로 거슬러 올라가는 방식이 더 효과적이라는 기존 경험에 따라 길을 찾게 되는 방식이다. 필수적으로 지나야 할 구역을 확인하고 길을 찾는 가장 짧은 길을 찾기에 빠르게 길을 찾을 수 있다는 설명이었다.


게임에서도 일정조건에서 보스를 격퇴하고 보상을 지급받으면 같은 자리에서 보스가 리젠되는 사례를 예로 들며 이러한 버그를 탐색적 테스팅을 통해서 미연에 방지하는 것이 QA의 업무라고 설명했다. 황진석 대리는 "탐색적 테스트는 전문가가 노하우를기반으로 직관적으로 하는 테스트를 말한다"며, "탐색적 테스트를 하고 싶은 게임을 열심히해서 노하우를 쌓아야 한다."고 말했다.