# 나온 것

> 자동화 결함이 아닌 것이 처음 나왔습니다. 그리고 그건 자랑이 아닙니다.

- 수치: 147 / 300
- 상태: wip
- 사람이 보는 화면: https://aitryed.com/ko/built/android-qa/findings/
- 반대 언어: https://aitryed.com/en/built/android-qa/findings/index.md
- 이 사이트 안내(AI용): https://aitryed.com/ko/llms.txt

---

**밤새 300번 돌린 결과입니다. 잡힌 것은 대부분 «자동화 자신의 결함»이었는데 — 하나가 그걸로 설명이 안 됐습니다. 그리고 그건 자랑이 아닙니다.**

## 대부분은 자동화 탓이었고, 그건 정상입니다

이 루프는 **이미 다 통과하는 걸로 확인된 검사만** 돌립니다. 그래서 **실패가 나면 자동화 탓**이라는 전제로 굴립니다.

실제로 300번 도는 동안 잡힌 것 대부분이 그랬습니다. **제가 만든 쪽 문제**였습니다.

**전제대로 나온 것이니 정상입니다.**

## 그런데 하나가 그 전제로 설명이 안 됐습니다

300번 중 **147번, 거의 절반에서 같은 경고**가 기록에 찍혔습니다.

내용은 이랬습니다 — **「그래픽 설정 하나가 설정 파일에 분명히 적혀 있는데 적용되지 않는다.」**

이건 제 자동화가 만든 게 아닙니다. **게임이 스스로 낸 경고**입니다.

원인을 찾아보니 이랬습니다. **그 값은 애초에 설정 파일로 바꿀 수 있는 종류가 아니었습니다.** 설정 파일에 적혀 있으니 바꿀 수 있는 것처럼 보이는데, 실제로는 다른 데서 정해지는 값이었습니다.

즉 **설정 파일이 「할 수 있다」고 말하는데 실제로는 못 하는 상태**였습니다.

## 그리고 이건 자랑이 아닙니다

여기가 이 글에서 제일 중요한 대목입니다.

「자동화가 제품 결함을 잡았다」고 쓰면 멋있어 보입니다. 정직하게 말하면 **자동화가 똑똑해서 잡은 게 아닙니다.**

무슨 일이 있었냐면 — **147번이나 찍혔기 때문에 제 눈에 띈 것**입니다. 한 번 찍혔으면 못 봤습니다.

| | 실제 |
|---|---|
| 자동화가 한 일 | **많이 돌았다** |
| 자동화가 «안» 한 일 | **그 경고를 판정 항목으로 보지 않았다** |

당시 제 판정 목록에는 **「반복되는 경고를 센다」가 없었습니다.** 그러니까 자동화는 그 경고를 **147번 그냥 지나쳤고**, 제가 기록을 훑다가 눈에 걸린 것입니다.

**우연히 발견한 것을 실력으로 적으면, 다음에 같은 게 안 잡힐 때 왜 안 잡혔는지 모릅니다.**

## 그래서 무엇을 바꿨나

발견 자체보다 이게 실제 성과입니다.

판정 항목을 하나 늘렸습니다 — **「기록에 반복해서 나오는 경고를 센다.」**

이제는 **147번이 아니라 3번만 찍혀도 걸립니다.** 우연에 기대지 않게 됐습니다.

→ **한 번 우연히 걸린 것을 판정 규칙으로 바꿔야, 그게 실제로 잡는 장치가 됩니다.** 안 그러면 「그때 운이 좋았다」로 끝납니다.

## 여기부터는 자세한 기록입니다

300 사이클을 돌리는 동안 잡힌 건 대부분 자동화 자신의 결함이었다. [전제가 그랬으니](/ko/built/android-qa/loop/index.md) 정상이다.

그런데 하나가 그 전제로 설명이 안 됐다.

## 자동화 결함이 아닌 것

300 사이클 중 **147회, 절반 가까이에서 같은 경고가 로그에 찍혔다.** 그래픽 옵션 하나가 설정 파일에 분명히 적혀 있는데 적용되지 않는다는 내용이었다. 원인은 그 값이 애초에 **설정 파일로 바꿀 수 있는 종류의 변수가 아니었던 것.**

여기서 조심할 게 있다.

> **이건 제품 결함으로 확정된 게 아니다.** 의도된 동작일 수도 있고, 판정은 만든 사람 몫이다. 확실한 건 하나뿐이다 — **자동화 결함은 아니다.**

이 구분이 중요한 이유는 앞의 전제 때문이다. "제품이 다 통과한다"를 깔고 자동화를 고쳐 왔는데, 그 전제로 설명이 안 되는 신호가 처음 나온 것이다. 그렇다고 곧장 "제품 버그를 찾았다"로 건너뛰면, 내가 그동안 자동화에 적용해온 기준을 제품에는 안 적용하는 셈이 된다.

## 그리고 이건 자랑이 아니다

정직하게 말하면 **자동화가 똑똑해서 잡은 게 아니다.**

그 경고는 300번 찍히는 동안 계속 거기 있었다. 아무도 안 보고 있었을 뿐이다. 무인 반복이 한 일은 발견이 아니라 **누적**이다 — 한 번 돌릴 땐 로그 한 줄이라 넘어가고, 300번 돌리니 49%라는 숫자가 되어 눈에 걸렸다.

**빈도는 사람이 못 세는 종류의 증거다.** 사람이 손으로 열 번 돌리고 그중 다섯 번에서 같은 경고를 봤다면 "가끔 나네" 정도로 남는다. 300번 중 147번이면 그건 다른 종류의 사실이다.

이 루프가 실제로 잘하는 건 새로운 걸 찾는 게 아니라, **이미 보이던 걸 무시할 수 없는 크기로 키우는 것**이다.

## 그래서 무엇을 바꿨나

이 발견 이후로 판정 항목이 하나 늘었다. **로그에 반복되는 경고를 세는 것.**

원래는 케이스마다 통과·실패만 봤다. 지금은 런이 끝나면 **경고 종류별 빈도표**가 같이 나온다. 어떤 경고가 몇 %의 사이클에서 나왔는지.

이게 값을 하는 이유는, **자동화가 판정하지 못하는 것을 사람 앞에 놓기 때문**이다. 기계는 "이 경고가 문제인가"를 못 정한다. 그런데 "이 경고가 49%에서 나온다"는 정할 수 있고, 그 숫자를 보면 사람이 판단한다.

전건 PASS인 런에서도 이 표는 나온다. **초록불 뒤에 무엇이 쌓이고 있었는지**를 보는 유일한 창이다.
