Search Unity

ゲームのテストは非常に難しいものです。ゲーム開発者はいろいろな部品を組み合わせてゲームを作りますが、プレイヤーは単に部品を寄せ集めたものよりもはるかに興味深く複雑な、視覚に訴えるダイナミックな世界と対話します。

最近のゲームは複雑化しているため、非常に熟練度の高い QA チームでも、QA テストプロセスを拡張するための選択肢は非常に限られています。

Unity ではいま、Automated QA の開発を進めています。これは、収録されたプレイ画面を使って QA チームがオンデマンドで大規模なテストを行えるようにするパッケージです。近々、より多くの種類のゲームをプレイするエージェントにも対応する予定です。

Unity Automated QA(実験的機能)

Automated QA パッケージは、ユーザーが Unity プロジェクトの UI でのタッチやドラッグによるインタラクションの記録および再生を行うことができ、また記録を使用して iOS や Android デバイスやエディターで Unity テストを実行することができます。

要件と制限

  • Unity UI で実装された UI 要素のクリックやタッチの自動化をサポートするものです。
  • Unity 2019 以降が必要です。

スモークテストの自動化を簡単にする Recorded Playback

録画ボタンを押して、自動化したいプレイバックを実行するだけでスモークテストを簡単に行えます。テストを実行する際には、記録されたプレイバックに含まれる各オブジェクトが画面上に表示され、クリック(またはドラッグ)可能である場合にのみプレイバックが成功します。

Recorded Playback の主な機能

  • オブジェクトベースのレコーディング:記録されたプレイバックは、名前とタグで識別されたオブジェクトのタイムスタンプ付きシーケンスとして保存されます。
  • タップやドラッグのイベントが記録されます。
  • 自動的に Unity Test Framework のテストを生成します。

テストを整理し、メンテナンス可能な状態に保つ Composite Recordings

熟練の QA チームは、毎回リリース前に何百から何千もの異なるゲームのパスを検証します。私たちは、QA テスターが、プレイヤーが体験するように(たとえば、メインメニューからステージをロードしたり)ゲームをテストすることで得られる信頼性を犠牲にすることなく、多くのテストに共通するゲームプレイ要素(メインメニューの遷移など)を自動化できるように、Composite Recording 機能を開発しました。

Composite Agent の主な利点

  • Recorded Playbacks などの他のエージェントと組み合わせたり、マッチングさせたりして、エージェントを作成することができます。
  • プレイスルーのロジックでの重複が減れば、メンテナンス性も向上します。メニューシステムが変わっても問題ありません。メニューの遷移を担当するエージェントを更新するだけで、その下流のすべての Composite Agent が更新されます。

近日提供予定:Composite Agent

レコーディング、C# スクリプト、ML-Agents で構成された、ゲームをプレイするエージェントの作成サポート機能を追加するための作業を進めています。ご興味のある方は、アーリーアクセスにご登録ください。

ローカルでもクラウドでも、実機でテストを実行

自動テストを作成したら、Automated QA パッケージを使って、実機で簡単にテストできます。手元のデバイスをマシンに接続し、Unity Test Runner で「Run」をクリックするだけで、そのデバイス上でテストを実行できます。

近日提供予定:Unity エディターや CI から、クラウドで実機上でのテストを実行することができます。

クラウドでの実機テストが、ローカルでの実機テストよりも簡単にできるように、インフラを整備します。また、テスト結果の合否判定、ログ、スクリーンショットを、Unity エディターと API の両方から直接利用できるようにします。ご興味のある方は、アーリーアクセスにご登録ください。

今すぐ、手間なくお試しいただけます

インストール

  1. Unity エディターでプロジェクトを開き、パッケージマネージャーを開きます(Window > Package Manager と選択)。
  2. パッケージマネージャー画面の左上にあるプラス記号(+)を押し、「Add package from git URL…」を選択します。
  3. テキストボックスに com.unity.automated-testing と入力し、「Add」を押します。

Window > Automated QA > Recorded Playback と選択して Recorded Playback ウィンドウを開き、記録を開始します。詳しい手順は、パッケージのドキュメントをご参照ください。

ご質問のある方は、AutomatedQA@unity3d.com までメールでお送りください。

コントリビューター:Dylan Scandinaro、Jason Greco、Justin Rempel、Lauryn Porte、Matt Sorg、Shuo Diao、Rambod Kermanizadeh、Souranil Sen、Tim Sibiski、 Tom Thompson、Willis Kennedy

8 replies on “Unity Automated QA によるオンデマンドな QA テスト”

Any way to play a recording in a test other than the RecordedTest attribute? I would like to play the recording in the middle of an UnityTest, after other steps, and wait for it to end before validations.

I’ve been secretly wishing for something like this for a long time to create character movement correctness tests (difficult to test this kind of stuff otherwise), however after a quick test, it looks like this doesn’t record keyboard/mouse/gamepad inputs. Any chance we could see this feature eventually? Or maybe it’s already there and I missed it

We currently support only automation of mouse or touch input on Unity UI elements. We expect to release a new feature enabling agent creation by combining C# scripts and recordings in early May, which should help with this use case.

コメントを残す