1. 効率的なテストツールを選択する
ゲームのテストを効率的に行うために高級なソフトウェアやハードウェアに投資する必要はありません。デバッグ・パフォーマンス分析・ユーザビリティテスト・フィードバック収集など、ゲームテストの様々な側面に役立つ無料または低価格のツールは多数存在します。
ゲーム開発に使用しているプログラムや言語に適した、オープンソースのプログラムを探してみましょう。APIテストやゲームサーバーとの統合テストに有用なPostman、複数人の開発者が同時に作業する持続的な開発環境で有用なビルド・テストツールのJenkins、アプリ自動化やロギング・デバッグのための様々な機能を提供するAppiumなどのツールを使うことにより、効率的なテスト遂行・繰り返し作業の低減・一貫性のある結果を実現し、開発プロセスを向上させることができます。
低価格かつ効果的なゲームパフォーマンス分析ツールには、MSI Afterburner・OCAT(Open Capture and Analytics Tool)などがあります。フレーム速度、GPU温度、電圧などを測定・分析し、求めるパフォーマンス数値を測定することができます。OCATは時間(秒)ごとのテスト結果をcsvファイルでまとめてくれるので、客観的かつ正確なテスト結果を出せる有用なツールです。
フィードバック収集にはGoogle Formsを用いたアンケートを活用できます。使い方が直観的で作成・配布が簡単であり、回答結果を自動で要約したデータを提供してくれるため、少ないリソースで高い効率を出すことができます。
2. ゲームテスト戦略を樹立する
ゲームテストを始める前に、何を・誰を・どうやってテストするかに関して明確なアイデアを持っていなければなりません。テストの目標と基準、手段を定義し、ゲームの最も重要なパートと機能の優先順位を指定すべきです。
何をテストしたいかゴールが定まらなければ、目標のないテストの繰り返しで時間を無駄にしたり、不正確な詳細によって客観性が損なわれ、求めていた結果を導き出せなくなります。このような問題は開発過程において費用と時間の損失を誘発し、ゲームのクオリティ低下に繋がるおそれがあります。テストの目標を定める際は、次の内容を念頭に置くと良いでしょう。
ゲームのターゲット層は誰ですか?特定の年齢層やゲーマーをターゲットに設定している場合、その対象への理解度が高いテスターや対象に該当するゲーマーを募ってFGTテストを行うのが良いと思われます。
テストによってゲームのどんな側面を検証したいですか?壮大で美麗なグラフィックだったり、多数のオブジェクトが描画されるゲームであれば、ユーザーのデバイスで安定的に実行し、動作可能かを調べるパフォーマンス/互換性テストが必要になるでしょう。 目標を決めたら、今度は戦略を立てる番です。手動テスト、自動化テスト、パフォーマンステスト、ユーザー体験テストなどをどの時期にどれだけの比率で適用するか決めなければなりません。優先順位が決まったら、テストケースを通してテストの目的をさらに明確化する必要があります。このようなテスト戦略は、テストプロセスの透明性と効率の向上に寄与し、テスト結果の質にも良い影響を及ぼします。
3. ゲームテストを自動化する
ゲームテストの費用と労力を節約する方法の一つとして、可能な限り自動化するというのがあります。これによりエラーやクラッシュ、パフォーマンス問題の確認など、単純作業の繰り返しを人間が介入することなく遂行できます。
ゲーム・アプリケーションテスト自動化ツールであるPostmanやAppiumは様々なプログラミング言語をサポートしており、APIやプログラミング言語で遂行可能なタップ・アプリ起動などの動作を自動化することができます。複数のデバイスを同時に遠隔制御し、問題が発生すればログを通してその内容を識別できます。
Jenkinsは、継続的インテグレーション/継続的デリバリー(CI/CD)を実装する際に人気のあるオープンソースツールです。基本的にはJavaで作成されたプラグインやスクリプトを使用しますが、様々なプラグインを導入することで好きなプログラミング言語を選択して作成できます。複数人の開発者が同時に作業するプロジェクトにおいて、各自の変更内容が他の開発者に及ぼす影響を迅速に識別・解決するのに役立つツールであり、大規模なプロジェクトや継続的に開発を行うゲームに適しています。スケジュールを柔軟に管理できるようビルドやテスト作業を特定の日程に沿って予約したり、このツールは、ソースコードが更新された際に不安定な変更点を迅速に識別するなど、継続的にコードの質を維持しつつ問題発生時には早急に対応・修正できる環境を提供します。 しかし、このようなプログラム自動化によって開発プロセスを改善してもテストが困難な分野は一部存在します。グラフィックやUIテスト、ランダム要素や動的な環境、ユーザーシナリオゲームのプレイテストなどがそれに該当します。テストを自動化するには、基本的には一つ一つの操作に対してプログラミング言語でコードを作成する事前準備が必要なため、多岐にわたるプラットフォームやデバイスでの自動化はコード作成のリソースと時間が膨大になってしまいます。このような分野は手動でのテストに加え、特別な自動化戦略を立てるのが効果的です。
4. ゲームコミュニティを活用する
予算に合わせてゲームテストの効率を最大化するもう一つの方法は、既存のユーザーまたは潜在顧客で構成されたコミュニティを活用することです。ソーシャルメディア、ゲームフォーラム、ブログやニュースレターなどを通してコミュニティと意見を交わし、ゲームテストに招待することもできます。ゲームコミュニティのユーザーたちは、そのほとんどがゲームに対し最も強い関心と愛情を持っているコアゲーマーであるため、本当のユーザー目線で評価を下し、様々なプレイスタイルや視点を提供してくれます。ただし、プレイヤーたちに過度な負担をかけないよう注意する必要はあります。自然な形でコミュニケーションを取りながらテストを行うのが良いでしょう。ゲームコミュニティを通して人気のあるゲーム内機能、ユーザーの行動パターン、パフォーマンスの不具合などを把握することでゲームテストの効率を向上させ、ユーザー中心の開発を実現しましょう。
5. 専門のパートナーを探すか他社をベンチマークする
ゲームテスト経験のある専門のパートナー会社と協力することで、予算に合わせてゲームテストの効率を最大化することができます。あるいは、他社が行ったゲームテストの模範的な事例や記事、ブログなどを参考にすることもできます。