구글 플레이 비공개 테스트 14일, AI로 만든 게임 버그 14개 잡은 기록

Jonhisking · 2026년 10월 6일

만드는 건 3일, 버그 잡는 데 14일 — 정자레이싱 개발 일지 2편

1편에서 저는 코딩 경험 0으로, AI에게 말로만 설명해서 3일 만에 게임을 만들었습니다. 바로 출시 버튼을 누르려는데, 구글 플레이가 막았습니다. 새로 만든 개인 개발자 계정은 정식 출시 전에 비공개 테스트를 12명 이상과 14일 동안 거쳐야 한다는 겁니다.

14일. 게임 만드는 데 걸린 시간의 네 배가 넘습니다. 그냥 기다리기는 아까워서 매일 직접 해 보기로 했습니다. 그리고 알게 됐습니다. 이 14일이 없었으면 큰일 날 뻔했다는 걸요.

만드는 건 3일, 버그 잡는 데 14일. 이번 편은 만들 때부터 비공개 테스트, 출시 후까지 잡은 버그 14개 이야기입니다.

구글 플레이 비공개 테스트 14일이란?

2023년 11월 13일 이후에 만든 개인 구글 플레이 개발자 계정은, 앱을 정식으로 출시(프로덕션)하기 전에 비공개 테스트를 먼저 해야 합니다.

조직(회사) 계정은 이 요건이 없습니다. 저는 다른 개발자들과 서로의 앱을 테스트해 주는 테스트 품앗이로 20명 정도를 모았습니다. 많은 개인 개발자가 이 14일을 "그냥 기다리는 시간"으로 생각하는데, 저한테는 출시 전에 버그를 잡을 수 있는 마지막 기회였습니다.

만들기 3일, 비공개 테스트 14일, 출시 후로 나눈 정자레이싱 출시 타임라인

숫자로 보는 정자레이싱 코드

컴퓨터에 남은 버전 파일로 코드 양을 세 봤습니다. (번역 파일은 빼고 셌습니다.)

코드 줄 수 변화: 첫 버전 3,112줄, 만들기 끝 6,341줄, 안드로이드 앱 8,513줄, 최신 버전 13,822줄

저는 이 1만 줄 중에 한 줄도 직접 쓰지 않았습니다. 제가 한 건 해 보고, 말해 준 것뿐입니다. 코드가 8천 줄을 넘었지만 출시까지 Claude Pro 플랜으로 충분했습니다. 내 코드가 몇 토큰인지는 Claude 토큰 계산기에 붙여 넣어 보면 바로 나옵니다.

"버그 찾아 줘"는 통하지 않는다

처음엔 "버그 찾아서 고쳐 줘"라고 했습니다. AI는 자신만만하게 "수정했습니다!"라고 했지만, 문제는 그대로고 멀쩡하던 다른 데가 고장 나 있었습니다. 어디가 아픈지 말 안 하고 병원에 가서 "알아서 고쳐 주세요" 한 셈이었습니다.

통한 건 어느 모드에서 + 뭘 했더니 + 어떻게 됐다를 말해 주는 것이었습니다. 솔직히 제 말도 처음엔 막연했습니다. 아래 버그 제목의 따옴표 문장이 제가 실제로 한 말인데, "드래그 조작이 전보다 힘듬"처럼 빠진 게 많습니다.

막연한 말 구체적인 말
"버그 찾아서 고쳐 줘" "레이싱에서 출발선을 넘자마자 랩이 1/3에서 2/3으로 바뀌어"
"드래그 조작이 전보다 힘듬" (제가 한 말) "레이싱 커브에서 손가락을 옆으로 크게 끌면 갑자기 브레이크가 걸려"

다행히 AI가 고칠 때마다 코드에 "예전엔 이런 문제가 있었음" 메모를 남겨 둬서, 버그 기록이 전부 남아 있었습니다. 아래 화면들은 그 버전 파일을 다시 실행하거나, 고친 부분만 예전대로 되돌려서 실제 게임으로 재현한 것입니다. 그대로 출시했으면 게임이 망가지거나 심사에서 떨어졌을 것은 주요 버그, 나머지는 잡다한 버그로 나눴습니다.

주요 버그 7

1. 출발했더니 이미 1바퀴 (만드는 중) 레이싱 모드에서 신호가 떨어지고 한 발짝 움직였는데 바퀴 수가 1이 올라갔습니다. 출발선 바로 뒤에 세워 둔 정자들이, 컴퓨터 눈에는 "한 바퀴를 거의 다 돌고 결승선 직전에 있는 선수"로 보였던 겁니다. 3바퀴 경주가 사실상 2바퀴 경주였습니다. 출발선 앞으로 옮겨 세우니 해결됐습니다.

출발선 위에서 랩 1/3이던 것이 한 발짝 움직이자 랩 2/3으로 바뀐 재현 화면

2. 새치기 1등 (만드는 중) 레이싱은 바퀴를 다 돌면 트랙 안쪽 문이 열리고, 안에 있는 난자에 먼저 닿는 정자가 1등입니다. 그런데 문은 누가 바퀴를 다 돌든 열렸습니다. 그래서 저는 출발선에서 가만히 기다리다가, NPC가 바퀴를 다 돌아 문이 열리면 쏙 들어가서 1등을 했습니다. 반대도 있었습니다. 제가 바퀴를 다 돌고 열심히 난자로 가는데, 트랙에서 헤매던 NPC가 열린 문으로 들어가 1등을 가져갔습니다.

NPC가 바퀴를 다 돌아 문이 열리자, 아직 랩 1/3인 내 정자가 문으로 들어가 1등으로 완주하는 재현 GIF

그래서 규칙을 두 개 만들었습니다. "바퀴를 다 못 돈 정자는 안쪽으로 못 들어가게", "난자에 직접 닿아야만 완주 인정". 제가 플레이하다 열받아서 요청한 규칙들입니다.

3. "게임도중 뒤로가기 버튼 누르면 앱이 나가짐" (비공개 테스트) 레이스 중에 실수로 휴대폰 뒤로가기를 눌렀더니 앱이 그냥 꺼졌습니다. 1등으로 달리던 판도 그대로 증발. 이걸 그대로 출시했다면 첫 리뷰는 "뒤로가기 누르니 꺼짐, 별 1개"였을 겁니다. 게임 중이면 메인 메뉴로 돌아가게 바꿨습니다.

4. 정자 도박장 (비공개 테스트) 테스트 기간에 구글 플레이 정책을 읽다가 식은땀이 났습니다. 경마 모드에 "배당률"과 "누구에게 걸어볼까요?"가 쓰여 있었던 겁니다. 정자 경주에 돈을 거는 게임. 심사관이 보면 딱 도박 앱입니다. 별점(★★★☆☆)과 "누구를 응원할까요?"로 바꿨습니다.

배당률과 '누구에게 걸어볼까요?'가 적힌 예전 경마 화면과, 별점과 '누구를 응원할까요?'로 바꾼 화면

5. 누르면 공짜 (비공개 테스트) 개발하면서 넣어 둔 가짜 결제 버튼이 남아 있었습니다. 누르면 돈은 안 나가는데 바로 "결제 완료". 가짜 광고는 5초만 기다리면 보상을 줬습니다. 플레이어에겐 천국이지만, 구글에겐 속이는 기능입니다. 전부 정리했습니다.

6. 게임 전체가 얼음 (출시 후) 14일을 버티고 출시했습니다. 끝인 줄 알았는데, 진짜 무서운 건 그다음이었습니다. 다른 플랫폼에도 게임을 내 보려고 심사를 넣었다가 떨어졌습니다. 타이머는 00.0초에서 멈추고, 레이싱 화면은 새까맸습니다. 모드 4개가 전부 그랬습니다.

범인은 게임패드였습니다. 정자레이싱은 게임패드로도 할 수 있게 만들어서 매 순간 "게임패드 연결됐나?"를 확인하는데, 그 플랫폼에서는 게임패드 확인 자체가 금지였습니다. 확인할 때마다 오류, 오류 날 때마다 게임 정지. 제 폰에서는 아무리 해도 안 나오는 버그였습니다. 있으면 좋은 기능 하나가 다른 곳에서는 게임 전체를 얼려 버렸습니다.

게임패드 확인이 막힌 환경에서 00.0초에 멈춘 검은 화면과, 고친 뒤 정상 진행되는 레이싱 화면

7. 외국인에게 한국어 폭탄 (출시 후) 정자레이싱은 13개 언어를 지원합니다. 그런데 그 13개에 없는 언어를 쓰는 사람에게는 게임이 전부 한국어로 나왔습니다. 다시 열어 본 8월 20일 메모에 범인이 적혀 있었습니다. "감지 실패 시 한국어가 기본값." 3일 만에 만들면서 정한 기본값이, 한 달 뒤에 버그가 되어 돌아왔습니다. 지금은 모르는 언어면 영어로 나옵니다.

헝가리어로 설정한 폰에서 한국어로 나오던 예전 화면과 영어로 나오는 고친 화면

잡다한 버그 7

게임이 망가질 정도는 아니지만, 해 보면 바로 티가 나는 것들입니다.

부딪힌 직후 꼬리가 머리 앞으로 튀어나온 버그 화면과 고친 뒤 화면

해결책: 비공개 테스트 14일, 이렇게 쓰세요

지금 비공개 테스트 14일을 기다리고 있다면, 제가 겪은 걸 바탕으로 정리한 세 가지를 그대로 가져다 쓰세요.

1. AI에게 버그를 말할 때는 이 틀에 채워서

[모드/화면] 레이싱 모드, 스타디움 트랙
[내가 한 것] 출발 신호 후 액셀을 눌러 출발선을 넘음
[기대한 것] 랩 1/3 그대로
[실제로 된 것] 바로 랩 2/3으로 바뀜
[매번 그런지] 매번 그럼
[기기] 안드로이드 앱 (폰 기종)
고치고 나서, 왜 생겼는지 코드에 주석으로 남겨 줘.

마지막 줄도 꼭 넣으세요. 제 AI는 고칠 때마다 "예전엔 이런 문제가 있었음" 메모를 남겼고, 덕분에 나중에 무엇을 왜 고쳤는지 다시 찾아볼 수 있었습니다. 이 글도 그 메모 덕분에 쓸 수 있었습니다.

2. 14일 동안 꼭 해 볼 체크리스트

어떤 장르의 모바일 게임이든 그대로 쓸 수 있게 정리했습니다. 괄호 안은 제가 실제로 걸렸던 버그입니다.

휴대폰이 하는 일 - 게임 도중 뒤로가기를 눌러 본다 (앱이 그냥 꺼짐) - 게임 중에 앱을 내리고, 화면을 끄고, 다시 돌아와 본다. 소리가 멈추는지, 게임이 이어지는지 (꺼도 소리가 남) - 앱을 처음 켜서 아무것도 안 눌렀을 때와 처음 눌렀을 때 소리가 제대로 나는지 본다 (배경음악이 영영 안 나옴) - 다른 기종, 다른 화면 비율에서 켜 본다. 테스터에게 부탁하면 됩니다

저장 - 설정과 진행 상황을 바꾼 뒤 앱을 완전히 껐다 켜서 그대로인지 본다

언어 - 휴대폰 언어를 게임이 지원하지 않는 언어로 바꾸고 켜 본다 (외국인에게 한국어) - 지원하는 언어마다 글자가 버튼 밖으로 넘치지 않는지 본다

끝까지, 꼼수로 - 마지막 스테이지까지 가 본다. 오래 걸리면 AI에게 테스트용 건너뛰기 기능을 만들어 달라고 한다 (29번째 스테이지의 태풍) - 이기는 조건을 꼼수로 뚫어 본다. 가만히 있기, 거꾸로 가기, 남이 해 놓은 걸 가로채기 (새치기 1등) - 숫자 설정에 0이나 최대값을 넣어 본다. 적 0명, 시간 0초, 최대 레벨 (라이벌 0명인데 3명 등장)

스토어 정책 - 화면에 "배당", "걸다", "베팅"처럼 도박으로 보일 수 있는 말이 있는지 찾는다 (정자 도박장) - 개발용으로 넣은 가짜 결제, 가짜 광고, 테스트 버튼을 지운다 (누르면 공짜)

안 되는 기능 - 게임패드, 진동, 알림처럼 없어도 되는 기능이 막혀도 게임이 멈추지 않는지 AI에게 확인시킨다 (게임 전체가 얼음)

3. 내가 못 보는 버그를 위한 장치 두 개

출시하면 모르는 기기, 모르는 언어, 모르는 플랫폼에서 버그가 터집니다. 정자레이싱에는 이 두 가지를 넣었습니다. AI에게 이렇게 말하면 됩니다.

처음엔 귀찮기만 했던 14일 비공개 테스트, 지금은 고맙습니다.

정자레이싱 해 보기

정자레이싱은 구글 플레이에서 무료로 할 수 있습니다. 혹시 버그를 만나면 설정 화면의 버그 신고 버튼을 눌러 주세요. 그 신고가 저한테는 제일 반갑습니다.

AI로 게임을 만들면 비용과 기간이 얼마나 드는지 궁금하다면, AI 게임 제작비 계산기에 장르와 규모를 넣어 보세요. 일정에는 버그 잡는 시간도 꼭 넣으세요. 제 경우엔 만드는 시간의 네 배가 넘었습니다.

다른 글

장르·규모·엔진·플랫폼을 고르면 내 게임의 비용과 기간, 바로 쓸 수 있는 프롬프트가 나옵니다.

AI 게임 제작 비용 계산기 열기 →