【Appium】モバイルアプリのテストを自動化する
皆さんはAppiumというオープンソースのテスト自動化フレームワークをご存知ですか? 日々、人手を使って行なっているモバイルアプリの動作テストは、Appiumを利用すれば自動化できるんです。そんな便利なAppiumの概要と、インストール手順についてわかりやすく解説いたします。
Appiumの概要
Appiumはスマートフォンなどのモバイル端末のアプリケーションで自動テストを実行することができる、フレームワークのことを指します。Webブラウザの自動テストを実行する際に使用される「Selenium WebDriver」※1のひとつであり、iOSやAndroidといったモバイル端末、そのほかWindows / macOS向けのデスクトップアプリのテスト自動化にも利用することができます。
※1:Selenium WebDriverに関する詳細はこちら
Appiumの開発元について
Appiumは2011年にエンジニアのDan Cuellarによって開発されました。その後、2012年にApache 2 ライセンスを用いてオープンソースのプログラムとなり、2013年には米・サンフランシスコにある自動テストツールを開発するSouce Labsにより、Node.jsで書き換えられました。
そして、2016年10月にAppium ProjectはJS Foundationに寄贈され、現在では基本的にSeleniumと同様にボランティアのエンジニアによって開発が進められています。
Appiumはクライアント・サーバ型
Appiumの仕組みはクライアント・サーバ型(Client / Server型)と呼ばれ、モバイルアプリを操作するための指示を記述するクライアントと、クライアントからの指示(リクエスト)を受け取り、端末へ反映させるサーバに別れています。
一般的に使いやすい「Appium Desktop」を利用する場合、インストールしたアプリケーションのクライアントにテストコード(JavaScript、Java、Python、Rubyなど)を記述することで、モバイルアプリのテストを実行することができます。これらのクライアントとサーバの2つをあわせた1つのフレームワークをApiiumと呼ぶのです。
Appiumのインストール手順
それでは、次にAppiumのインストール手順について解説していきます。今回は導入が比較的簡単な「Appium Desktop」を例にご説明していきたいと思います。
Appiumの公式HPよりダウンロードする
まずはじめに、Appiumの公式HPを開き、「Appiumをダウンロード」をクリックします。クリックすると、AppiumのファイルがアップされているGitHubのページが開くと思いますので、「Assets」下の「Appium-1.8.2.dmg」(2018年11月28日時点)をクリックし、ファイルをダウンロードしてください。ダウンロードはご利用のPCスペック/環境にもよりますが、10分ほどで完了するかと思われます。
AppiumをApplicationsで開く
記事では「macOS Mojave / バージョン 10.14.1」の環境でダウンロードしています。ダウンロードが完了したら、ファイルを開いてください。上記画像のようなポップアップが開きますので、ドラッグ&ドロップで左のAppiumアイコンを右のApplicationsに移動させてください。すると、デスクトップアプリとしてAppiumが使えるようになります。
Appiumを実際に開いてみる
Appiumを開くと、上の画像のようなポップアップが開くと思います。Appiumサーバを起動させるには、青色の「Start Server」のボタンをクリックしてください。クリックすると、以下の画像のような画面が開きます。
そして、画面右上の虫眼鏡マークをクリックすると、以下のような画面が開きます。
こちらの画面右下にあるペンマーク(赤枠)をクリックすると、JSON Representationの欄が編集可能となり、テストを実行したいモバイルアプリのファイル情報を記述することで、指定のモバイルアプリと接続することが可能となります。
記事では、Appium Desktopのインストールまでの手順のみのご紹介となりますが、その後の自動テストの流れを知りたい方は、公式HPをご確認ください。※2
まとめ
いかがだったでしょうか? 記事では、Appiumの基本的な概要、インストール手順を解説いたしました。Appiumによるモバイルアプリのテスト自動化について詳しい情報は、ぜひ公式HPをチェックみてしてください。ただし、Appiumは日本語に対応したドキュメントが少ないことから、精通した方が社内に不在の場合、導入は少し大変かもしれません。
Appiumに限らず、RPA(Robotic Process Automation)による業務自動化は、社内生産性をアップさせるひとつの解決策です。「興味があるので導入したいが、どうすればいいのかわからない」という社内の担当者は、正規店や代理店企業に一度ご相談されてみてはいかがでしょうか。
建設・土木業界向け 5分でわかるCAD・BIM・CIMの ホワイトペーパー配布中!
CAD・BIM・CIMの
❶データ活用方法
❷主要ソフトウェア
❸カスタマイズ
❹プログラミング
についてまとめたホワイトペーパーを配布中
デジタルツインと i-Constructionについての ホワイトペーパー配布中!
❶デジタルツインの定義
❷デジタルツインが建設業界にもたらすもの
❸i-Constructionの概要
❹i-Constructionのトップランナー施策