なぜ、テストは全部パスしていたのに、実際に遊んでみて初めて気づけたのか?

AI活用術

課題

自動テストが全部パスしていると、それだけで「問題無い」と判断してしまいがち。でも「正解か不正解か」の境界には引っかからないけど、実際に触ってみると「あれ、なんか変だな」と感じる質の問題は、テストだけでは見つからないことがある。

この記事でわかること

  • 自動テストが全部PASSしても見逃す「質の問題」を、実際に使ってみて見つける手がかり
  • 元の設計意図を壊さずに直すための、修正範囲の切り分け方

解決できたこと

実際に自分で使ってみて感じた違和感から、テストでは検出できなかった不具合を見つけ、元の設計意図を壊さずに直すところまでを、実際にあった1件から振り返る。

本文

遊んでいるとき、ふと引っかかった

色の付いた液体を同じ色ごとに仕分けていくパズル、Water Sortを実際に自分でプレイしていたときのこと。ゲーム内で「これくらいの手数で解けますよ」と教えてくれる推奨手数の表示があるんだけど、レベル16〜30あたりで、その数字がなんだか大きすぎる気がした。「まだ小さくまとめられそうな手が残っているのに、探索を早めに切り上げていないか」という違和感。

見た目上ゲームは正常に動いていて、動作を確認する自動テストが引っかかるような話でもない。でもこの「数字が大きすぎる気がする」という感覚は、テストの合否では判定できない類の問題だった。

調べてみると、本当に手数が多く出ていた

AIに調べてもらうと、この推奨手数を決める仕組みは、探索の範囲を早めに絞り込む近道を使っていて、「一番最初に見つかった解き方」をそのまま答えとして確定する作りになっていた。本当に一番少ない手数を最後まで探し切っていたわけじゃなかったわけ。

きちんと最後まで探索し直して比較してもらったところ、レベル1〜15は元々問題無し。でもレベル16〜30は全15レベルで、表示されている手数が実際より多かった。一番ひどいレベルだと、表示は31手なのに、本当は18手で解けていた。

「なぜ厳密じゃなかったのか」にも理由があった

この結果を報告してもらったところ、「そもそもこの仕組みを作ったときは、厳密に一番少ない手数を探すんじゃなくて、なるべく軽い処理で“だいたい最短”が分かればいい、という考えで作っていた」という話を思い出した。

つまり、今回見つかった「手数が多く出る」という現象は、最初の設計判断そのものが間違っていたわけじゃない。ただ、その「軽さ優先」の近道が、想定より大きく数字をズラしてしまうレベル帯があった、という話だった。ここが分かったことで、直し方の方向性も変わってくる。

直す場所を、うまく切り分けた

そこで、直す範囲を2つに分けることにした。1つは、レベルを作るときに使う、事前準備用のスクリプト。これは一度だけ実行すれば済むもので、時間がかかっても困らない。ここだけはきちんと最後まで探索する方式に変更した。

もう1つは、実際にプレイ中に呼ばれるヒント機能。これは端末上でその場で動く必要があるので、軽さを優先する今までの仕組みのままにした。

「全部を厳密にする」んじゃなく、「時間をかけても困らない場所」と「軽さが必要な場所」を分けて、後者はそのまま残す。この切り分けをしたおかげで、最初の設計意図(軽さを保つ)を壊さずに、不具合だけを直せた。

直したあと、変えなくていい部分も確認した

修正後は、ゲームの盤面自体はまったく変えず、推奨手数の数字だけを再計算する方式にした。確認してみると、全レベルの盤面はそのまま、レベル1〜15の手数も変わらず、レベル16〜30だけが正しい数字に縮んでいた。以前、別の修正のときに「盤面が意図せずズレてしまう」という問題が起きたことがあったので、今回はその再発も防げていることまで確認できた。

テストが通っていても、一度は自分で触ってみる

自動テストが全部パスしていても、それは「壊れていない」ことの確認にしかならない。「質として気持ちよく感じるか」までは、実際に自分で使ってみないと分からないことがある。

もし何かのTool・機能を作ったら、テストを通した後に一度は自分で軽く触ってみるといいかもしれない。「なんか変だな」という感覚が、テストでは絶対に見つからない不具合を教えてくれることがある。

同じ状況に陥ったときの回避策

  • 自動テストが全部PASSしても、それとは別に一度は自分で実際に触って「質として気持ちよく感じるか」を確認する
  • 修正するときは「時間をかけても困らない場所」と「軽さが必要な場所」を分け、後者の設計意図は壊さないようにする

この記事は、筆者が実際に進めている個人開発の記録(2026年8月7日)を基に、独自調整したAIが下書きを作成し、筆者が事実確認・編集を行った上で公開しています。

追記(2026-09-07): この記事で扱っているWater Sortパズルは、その後「月灯り調合所」と名前を整えApp Storeで一般公開された。今の姿は月灯り調合所の紹介ページで紹介している。

PAGE TOP
タイトルとURLをコピーしました