Help us understand the problem. What is going on with this article?

【自動テスト】Airtestでランタイム中の自動テスト作りの始め方

アプリケーション自動テストツールAirtestの始め方備忘録です。

本記事を読んで得られる事

Airtestを使ったことがない人が、環境構築からアプリケーションの簡単なランタイムテストを作れるようになります。
(プログラムはほぼ書きません)

手順

  1. Airtest IDEのインストール
  2. Airtest IDEにAndroid実機を接続
  3. 簡単なテスト処理を書いてみる
  4. テストを実行

1.Airtest IDeのインストール

Airtest Project
こちらの公式サイトからダウンロードして、インストールしておきます。

2.Airtest IDEにAndroid実機を接続


Airtest IDE起動した直後の状態です。

PCにUSBケーブルで実機を接続した状態で Refresh ADBをクリックします。
するとDevices > Mobile Phone Connectionに実機がリストアップします。


connect辺りをクリックします。

このように接続したAndroid実機の画面が同期されて表示されます。

3.簡単なテスト処理を書いてみる

「指定のボタンが見つかったら、タッチする」というテストを書いてみます。

if(exists(button)):
    touch(button)

ソースコード的にはとても簡単ですが、このbuttonをどう定義するかがポイントになります。

画像認識で定義

kentei.gif
動画の通りbutton変数を画像で定義します。


ソースコードはこのようになりました。

4.テストを実行


再生ボタンを押してテストを実行してみます。

kentei_sample.gif

このように指定のボタンが存在したので、タッチ処理が走って想定通り画面が遷移しました。

最後に

プログラムをほぼほぼ書かずにテストを作ることが出来ました。
僕もこの記事を書きながらインストールからテストを書くところまでを初めてやりましたが、迷うことはありませんでした。

今回は「ボタンを見つけたらタッチする」というとても簡単なケースでしたが、もっと長いストーリーを書いて、チュートリアル突破テストやゲームのメインループの通しテスト、アプリの遷移テストなど色々と応用できます(ググればたくさん出てきます)。

ちなみに今回のテストで使用したアプリはUnity1Weekで作った減色検定というゲームです。

環境

  • Pixel3XL Android10
  • Airtest IDE v1.2.5
ohbashunsuke
クリエイターとエンジニアの橋渡し役の元デザイナーのUnityエンジニア。思いついたものが作れるようになるためにエンジニアやってます。紙デザイナー3年→Flashエンジニア5年→Unityゲーム開発8年。UI/UX含めて設計実装する事が得意。クライアントサイド畑ですが好き嫌いはありません。内容はあくまで個人の見解です note始めました https://note.com/ohbashunsuke
https://www.shibuya24.info/
unity-game-dev-guild
趣味・仕事問わずUnityでゲームを作っている開発者のみで構成されるオンラインコミュニティです。Unityでゲームを開発・運用するにあたって必要なあらゆる知見を共有することを目的とします。
https://unity-game-dev-guild.github.io/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした