目次

はじめに
注意
ターゲット
参考リンク
ツール
表記関係について
第1章 AirtestとPocoの概要
1.1 Airtest Project
1.2 Airtest
1.3 Airtest IDE
1.4 Poco
1.5 AirLab
第2章 AirtestとPocoの導入とAirtest IDEの手引き
2.1 AirtestおよびPocoのインストール
2.2 Poco SDKの導入
2.3 Airtest IDEのインストール
2.4 Airtest IDEの使い方
第3章 Airtestの実装手引き
3.1 セットアップ
3.2 アプリの制御
3.3 UI操作の処理
3.4 汎用的な操作の処理
第4章 Pocoの実装手引き
4.1 PocoAgent
4.2 UIObjectProxy
第5章 テストシナリオ逆引きリファレンス
5.1 アプリの処理
5.2 UIのアクションについての汎用実装
5.3 UIのアクション
5.4 おまけ
終わりに

はじめに

 この度は本書を手に取っていただきありがとうございます。本書はAirtestという自動化ツールについて、Unityにフォーカスした使い方を解説する本です。Airtestについて、概要やツールの使用方法、フレームワークの機能について色々と説明します。最後におまけとして、シナリオベースでどういう実装をするかサンプルをのせています。Airtestをはじめて聞いた、Unityでの開発で自動テストをしたことがないという方でも最終的に自動テストの実行手順がイメージできることが本書のゴールとなります。

注意

 本書ではたびたび「自動テスト」という言葉が登場しますが、これはUnity製アプリケーションにおけるUIテストの自動化を指します。いわゆるスクリプトに対する自動的なバリデーションであったり、Unity Test Frameworkなどを活用した単体テストについては本書では触れないのでご注意ください。また、Airtest自体はAndroid、iOS、Windowsといったクロスプラットフォームでの実行に対応していますが、本書ではAndroid端末を対象にしたAirtestの自動テストについて解説します。iOS、Windowsでの使用法を期待されている方については、本書ではその点について触れないため、ご注意ください(iOSに関してはあまり挙動が安定しないため、筆者個人的にはAndroidかWindows環境を推奨します)。さらに、本書ではAirtestに付随して提供されているPocoというテスト用のフレームワークについても説明を行います。PocoはUnity、UnrealEngine、Cocos-2dxといった複数のゲームエンジンを対象にした機能を備えていますが、本書ではUnityをターゲットとして紹介します。他のゲームエンジンについても似たような手順で実装を行うことはできますが、詳細に関しては異なる点もありますので、他のゲームエンジンで使用されたい方はご注意ください。

ターゲット

 本書は以下のような読者を対象としています。最後に提示するUnityのプロジェクトはついての説明は省略している箇所もありますので、ご留意ください。

 ・Unityについて開発経験があり、基礎的な機能(基礎的なC#の文法およびGameObjectやuGUIなどの基本機能)を理解されている方

 ・adbを活用したAndroid端末とPCの接続および基礎的な操作がわかる方

 ・Airtestを活用した自動テストの構築に興味のある方

 ・Unity製のアプリケーションでのUIテストの自動化に興味のある方

参考リンク

 本書ではAirtestおよびPocoの提供するIDEやフレームワークの機能について解説します。より詳細な機能や説明を知りたい方は公式のリポジトリおよびドキュメントを参照しながら読み進めることを推奨します。(日本語のドキュメントは現状ないため、英語のドキュメントのリンクを貼っています)

 ・AirtestのGitHubリポジトリ: https://github.com/AirtestProject/Airtest

 ・Airtestのドキュメント: https://airtest.readthedocs.io/en/latest/

 ・PocoのGitHubリポジトリ: https://github.com/pocoproject/poco

 ・Pocoのドキュメント: https://poco-chinese.readthedocs.io/en/latest/

ツール

 本書で使用しているツールやライブラリのバージョンは以下の通りです。

 ・Airtest: 1.2.13

 ・Python: 3.9

 ・Unity: 2021.2.0f1

 以上のバージョンに差異がある場合、挙動について異なる場合がありますのでご注意ください。

表記関係について

 本書に記載されている会社名、製品名などは、一般に各社の登録商標または商標、商品名です。会社名、製品名については、本文中では©、®、™マークなどは表示していません。

試し読みはここまでです。
この続きは、製品版でお楽しみください。