検索
特集/連載

徹底比較:モバイルアプリ開発に必須のテストツール4製品UI改善に不可欠

モバイルアプリのテストは、ユーザーエクスペリエンスを高めるとともに、バグを見つけ出すためにも必要なプロセスだ。アプリ開発に必須となる定番のテストツール「Appium」「Calabash」「Perfecto Mobile」「Ranorex」について紹介する。

Share
Tweet
LINE
Hatena
画像
UI改善のためにはリリース前のテストが不可欠

 エンドユーザーはモバイルアプリがユーザーフレンドリーなインタフェースを持ち、効率よく動作するものと考えている。そのため開発者はリリース前にモバイルアプリをテストしておかなければならない。

 市場には多くのモバイルアプリのテストツールが出回っているが、利用するツールを決定する前に主要なプラットフォームのメリットとデメリットを確認しておこう。

Appium

 手動のテストと比べてメリットが多い自動のアプリテストは、特に時間と費用が節約できる。「Appium」は、クロスプラットフォーム対応のモバイルアプリ自動テストツールだ。オープンソースであるため無償で利用できる。開発者は「Windows」「Android」「iOS」の各テストプラットフォーム間でコードを再利用できる。

 このプラットフォームは標準API(アプリケーションプログラミングインタフェース)を使用するため、開発者はコードの修正やアプリの再構成は必要ない。またWeb自動化フレームワーク「WebDriver」と互換性があれば、Python、Ruby、JavaScriptなど、さまざまな言語でテストを作成できる。ただし、UI(ユーザーインタフェース)要素をテストする場合はAndroidとiOSでは別のスクリプトを作成する必要がある。

 他の無償ツールと同様、Appiumはオンラインドキュメント以外のサポートは提供していない。だが、テストプラットフォーム企業のSauce Labsは、Appiumの企業利用をサポートできる専門家を抱えており、iOSシミュレーターとAndroidエミュレーター用のサーバとして同プラットフォームを使用している。

 Appiumは仮想のAndroidエミュレーターとiOSシミュレーターを使用して、クラウドでモバイルアプリ自動テストを実行する。開発者は、複数の仮想デバイスで同時にテストを実行することで、テストプロセスの速度を上げることができる。

 ただし、Appiumは実際のデバイスでモバイルアプリをテストするわけではないため、センサーの動作やハードウェアのパフォーマンスをテストすることはできない。

Calabash

 「Calabash」もオープンソースのモバイルアプリ自動テストツールだ。2016年にMicrosoftが買収したXamarinが開発したもので、無料で提供されている。このプラットフォームでは、iOSとAndroid向けのハイブリッドアプリやネイティブアプリをテストできる。Calabashのテストシナリオは、英語に似ていて理解しやすいスクリプト言語「Cucumber」で作成する。

 Appiumと同様、Calabashもクラウドでテストを実行する。開発者は、OSやターゲット市場での普及度合いに応じて、多種多様なデバイスから選んでテストできる。

 ただし、無償のモバイルアプリテストツールには欠点があるのが常だ。Calabashの場合、開発者はまず初めにRubyをインストールしなければならない。利用できるオンラインサポートも限られているようだ。

Perfecto Mobile

 「Perfecto Mobile」は、モバイルとWeb用の品質保証テストツールで、自動テストと手動テストのいずれかを選択できる。Perfecto Mobileは、Appium、Microsoftの「Visual Studio」、オープンソースの「Jenkins」など、他のモバイルアプリのテストツールや開発環境と連携する。

 さまざまなOSやデバイスにまたがる複雑なモバイルアプリを複数導入する予定の企業にはこのPerfecto Mobileがお薦めだ。このプラットフォームは幅広い機能を備えている。例えば、オープンなAPIを使うことで既存の開発ツールと連携できるほか、セキュリティを十分に確保しているため大企業でも安心して利用できる。

 Perfecto Mobileは、「Basic」「Advanced」「Enterprise」という3種類の価格帯を用意しており、上位2つのAdvancedとEnterpriseで自動テストを提供している。年または月単位でライセンスを購入するか、無料試用版も選択できる。

Ranorex

 「Ranorex」は、エミュレーターと物理デバイスの両方でテストできるモバイルアプリ自動テストツールだ。物理デバイスを使って実際の環境でテストすることで、大量のトラフィックなどエミュレーターではテストできない要因を把握できる。

 RanorexはAndroidとiOSのネイティブアプリ、Webアプリ、ハイブリッドアプリをテストできる。使いやすいため、上級開発者ばかりでなく、経験の少ないユーザーやアマチュアの開発者にも向いている。コードを使ってテストスクリプトを作成するか、UI要素を追跡する「Ranorex Spy」を使うことで、スクリプトを用いずにテストを作成できる。

 Ranorexは、ライセンスを1台のPCに限定している「Ranorex Premiumノードロックライセンス」と、「Ranorex Premiumフローティングライセンス」を用意している。Ranorex Premiumフローティングライセンスでは、同時利用はできないが複数のユーザーが登録でき、仮想マシンやターミナルサーバ環境での利用も可能だ。

Copyright © ITmedia, Inc. All Rights Reserved.

ページトップに戻る