소프트웨어 테스트를 한 번도 안 해 본 사람이 AI로 만든 앱을 테스트하는 법

QA 경험이 없을 때 AI로 만든 앱을 테스트하는 실전 가이드. 어디를 클릭하고, 무엇을 일부러 깨뜨리고, 언제 공유할 만큼 괜찮아졌는지 어떻게 아는지 알려 드립니다.

AI로 앱을 만들었습니다. 행복한 경로에서는 잘 작동합니다 — 이름을 입력하고, 버튼을 클릭하고, 성공 화면을 봅니다. 이제 어쩌죠? 베타 사용자 세 명에게 보낼 준비가 됐나요? 당신 팀에게는요? 고객에게는요?

소프트웨어 배경이 없다면, 테스트는 “진짜 개발자”가 하는 그런 일처럼 느껴집니다 — 프레임워크와 어서션과 CI 파이프라인을 가지고요. 좋은 소식: 대부분의 테스트는 실제로 그런 게 아닙니다. 대부분의 테스트는, 특히 작고 새로운 것을 출시할 때는, 한 사람이 의도를 가지고 이리저리 클릭해 보는 일입니다. 당신도 할 수 있습니다. 이 글은 그걸 일부러, 그러니까 사용자보다 먼저 버그를 찾으려고 하는 것에 관한 글입니다.

목표는 AI로 만든 앱을 프로처럼 테스트하는 게 아닙니다. 그게 정말 잘 작동하길 진심으로 바라는 의심 많은 친구처럼 테스트하는 것입니다.

두 목록 트릭

아무것도 클릭하기 전에, 빈 문서를 놓고 10분간 앉아서 두 개의 목록을 쓰세요.

목록 A — 행복한 경로. 사용자가 이 앱으로 하게 되어 있는 서너 가지가 무엇인가요? 전형적인 SaaS라면, 가입하기, 첫 프로젝트 만들기, 팀원 한 명 초대하기, 결과 내보내기 정도일 수 있습니다. 디렉터리형 앱이라면: 검색하기, 필터링하기, 목록 항목 클릭하기, 저장하기. 진짜 흐름 서너 개를, 쉬운 우리말로요.

목록 B — 불행한 경로. 사용자가 거의 맞지만 딱 맞지는 않게 무언가를 한다면? 이메일을 오타로 입력합니다. 흐름 중간에 뒤로 가기 버튼을 누릅니다. 탭 두 개를 열어 같은 것을 양쪽에서 수정합니다. 빈 폼을 제출합니다. Word 문서 내용을 — 서식까지 통째로 — 텍스트 입력란에 붙여 넣습니다. 노트북을 닫았다가 10분 뒤 다시 엽니다. 이미 시스템에 있는 이메일 주소로 팀원을 초대하려 합니다.

행복한 경로 목록은 AI 앱 빌더가 최적화한 것입니다. 코드를 쓰면서 AI가 머릿속으로 테스트한 것이죠. 불행한 경로 목록은 버그가 사는 곳입니다. 거의 아무도 — AI도, 프롬프트를 쓰던 당신도 — 그 경우들을 생각하지 않았기 때문입니다.

실제로 테스트할 때는, 먼저 목록 A를 따라 걸어 기본이 작동하는지 확인하세요. 그다음 시간의 대부분을 목록 B에 쓰세요. 목록 B가 가치가 있는 곳입니다. 목록 B는 또한, 일이 옆길로 샐 때 앱이 실제로 무엇을 하길 바라는지 알아내게 되는 곳이며, 이건 종종 AI 빌더와의 명료한 대화를 끌어냅니다 (“폼이 반쯤 채워졌을 때 경고해야 할까, 자동 저장해야 할까?”).

일부러 깨뜨릴 세 가지

목록이 생겼다면, AI로 만든 앱에서 진짜 버그의 대부분을 잡아내는 세 가지 범주가 여기 있습니다.

비어 있거나 이상한 입력. 아무것도 안 채우고 폼을 제출하세요. 한 칸만 채우고 제출하세요. 500자짜리 이름을 제출하세요. 이모지가 든 이름을 제출하세요. 이름을 기대하는 입력란에 URL을 붙여 넣으세요. 이메일란에 “test”, “test@”, “test@example”, 그리고 “a@b.co” 주소를 시도해 보세요 — 정당하게 짧은 이메일을 받아들이나요? AI 앱 빌더는 흔히 유효성 검사를 넣지만, 그 검사가 양쪽 방향 다 틀릴 수 있습니다 — 너무 엄격하거나(진짜 사용자를 거부), 너무 헐겁거나(쓰레기를 허용).

뒤로, 그리고 옆으로 가기. 대부분의 앱은 순종적인 단체 관광객처럼 따라 걸으면 멀쩡합니다. 누군가 탐험하는 순간 깨집니다. 뒤로 가기 버튼을 클릭하세요. 다시 앞으로 가기를 클릭하세요. 흐름 중간에 페이지를 새로고침하세요. 같은 페이지를 탭 두 개로 열어 양쪽에서 수정하세요. 로그아웃했다가 다시 로그인하세요. “실행 취소” 버튼이 있다면 연속으로 세 번 클릭하세요. 이건 예외 상황이 아닙니다. 진짜 사람들이 소프트웨어를 쓰는 방식입니다.

그다음의 데이터. 앱이 만드는 것을 만드세요. 프로젝트, 게시물, 레코드, 무엇이든요. 그런 다음 내일 다시 오세요. 아직 거기 있나요? 서식은 살아남았나요? 수정하면, 그 수정이 저장되나요? 삭제하면, 정말로 사라지나요, 아니면 새로고침하면 돌아오나요? AI 앱 빌더는 흔히 “생성” 흐름은 완벽하게 해내면서, 생성한 모든 것이 지속되고 나중에 수정될 수 있어야 한다는 걸 잊습니다.

”충분히 괜찮다”는 게 어떤 모습인가

AI로 만든 앱을 완벽하게 테스트하는 일은 결코 없을 겁니다. 소프트웨어는 너무 얽혀 있고 당신의 시간은 너무 귀합니다. 질문은 “완벽한가”가 아니라 — “다음에 앞에 세울 사람들에게 충분히 괜찮은가”입니다.

빌려 쓸 만한 대략적인 위계가 여기 있습니다.

시연하기에 충분히 괜찮음: 행복한 경로가 멈춤 없이 작동한다. 버튼이 가야 할 곳으로 간다. 아무것도 잘라 내지 않고 화면 녹화를 보여 줄 수 있다.

친한 사용자에게 충분히 괜찮음: 불행한 경로가 데이터를 잃지 않는다. 폼이 조용히 실패하는 대신 무엇이 잘못됐는지 알려 준다. 페이지를 새로고침해도 망가지지 않는다. 친구 셋이 당신에게 도와달라고 연락하지 않고 쓸 수 있다.

돈 내는 사용자에게 충분히 괜찮음: 앱이 한 번도 만난 적 없는 사용자를 감당한다. 그들의 브라우저, 그들의 데이터, 그들의 습관을요. 일이 깨질 때 알아챌 방법이 있다 (기본적인 오류 추적이면 충분합니다 — 화려한 대시보드는 필요 없습니다). 이미 쓰고 있는 사람들을 망가뜨리지 않고 고쳐서 다시 배포할 수 있다.

대부분의 메이커는 “친한 사용자” 수준에서 출시하고, 피드백이 들어오면 끌어올립니다. 그게 맞습니다. 실수는 중간 단계 없이 “시연하기에 충분히 괜찮음”에서 곧장 “돈 내는 사용자에게 충분히 괜찮음”으로 건너뛰려는 것입니다. 친한 사용자는 진짜 사용자가 찾을 법한 것들을 찾아냅니다 — 다만 그것 때문에 화내지는 않습니다. 그 틈을 활용하세요.

AI에게 대신 테스트해 달라고 할 때

AI 앱 빌더가 테스트를 도울 수 있지만, 원하는 것을 구체적으로 말해야 합니다. “테스트 추가해 줘”는 나쁜 프롬프트입니다. 테스트처럼 보이고 아마 통과도 하는 코드를 생성하지만, 정작 당신이 신경 쓰는 건 아무것도 확인하지 않습니다. 그렇게 자동 생성된 테스트 대부분은 1+1이 여전히 2임을 확인하는 수준입니다.

더 나은 프롬프트: “방금 가입 폼에서 이메일란을 비운 채로 제출했더니 멈췄어. 그게 처리되는 곳을 찾아서, 대신 친절한 오류 메시지를 보여 주는 검사를 추가해 줘.” 구체적인 버그, 구체적인 수정, 구체적인 결과. AI는 이걸 잘합니다. “내 앱에 버그가 없게 해 줘”는 잘 못하는데, 그건 과업이 아니라 — 소원이기 때문입니다.

AI 빌더가 잘하는 또 한 가지는 당신의 버그를 재현하는 것입니다. 무엇을 했고, 무엇을 기대했고, 무슨 일이 일어났는지 설명하면, 빌더는 보통 코드를 따라가며 수정안을 제안할 수 있습니다. 당신에게 필요한 규율은 그 세 가지를 분명히 적어 두는 규율입니다. 대부분의 초보 버그 신고는 “안 돼요”의 어떤 변형입니다. 대부분의 고칠 수 있는 버그 신고는 “X를 클릭했고, Y를 기대했고, Z가 나왔어요”입니다.

테스트는 클릭만이 아니라 읽기다

마지막 한 가지. AI로 만든 앱을 잘 테스트하려고 모든 코드 줄을 이해할 필요는 없습니다. 하지만 적어도 훑어는 봐야 합니다. AI가 방금 바꾼 파일을 여세요. 추가한 함수를 읽으세요. 모든 키워드의 뜻을 알 필요는 없습니다 — 그 함수가 당신이 요청한 일을 하고 있는 것처럼 보이는지만 알면 됩니다.

AI가 만든 버그의 상당수는 “코드가 깨졌다”가 아닙니다. “코드가 당신이 원한 것과 살짝 다른 일을 한다”입니다. 어떤 필드가 엉뚱한 곳에 저장됩니다. 어떤 버튼이 한 가지는 업데이트하는데 관련된 것은 안 합니다. “삭제” 버튼이 삭제가 아니라 숨기기를 합니다. 실제로 만들어진 것을 읽지 않고는 그런 걸 잡아낼 수 없습니다.

코드를, 당신이 써야 하는 것이 아니라 감사할 수 있는 것으로 다루세요. 그게 당신이 신뢰하는 AI로 만든 앱과, 그저 작동하길 바라기만 하는 앱의 차이입니다.

간단한 버전

다른 건 다 잊더라도 이것만 기억하세요: 두 목록을 쓰고, 일부러 깨뜨리고, 어느 “충분히 괜찮음” 수준에서 출시하는지 정하세요. AI로 만든 앱의 버그 대부분은 미묘하지 않습니다. 아무도 굳이 적지 않은 불행한 경로 목록 위에 그냥 앉아 있습니다.

작은 숙제를 원한다면: 만든 앱 하나를 골라 네 가지를 시도하세요 — 빈 폼 제출하기, 흐름 중간에 새로고침하기, 레코드를 수정하고 내일 확인하기, 친구에게 당신이 안 보는 데서 써 보라고 하기. 무엇이 깨지든 그게 당신의 진짜 버그 목록입니다. 나머지는 전부 미루기일 뿐입니다.