はじめに
近年は複数のUIテスト(※)自動化ツールが存在し、無償・有償まで多岐にわたります。
※UIテストとは、デスクトップ・Web・モバイルアプリケーションのユーザーインターフェースが正しく機能しているか確認するテストです。
前回は無償のUIテスト自動化ツールについて調査してみましたが、今回は有償のUIテスト自動化ツールの特徴について調査してみました。
参考:無償のUIテスト自動化ツールを調べてみた
https://qiita.com/s_katase/items/d0ae2a31b2fd4337b19e
有償版のテスト自動化ツールの特徴として、以下5つについて紹介します。
・動作環境(プラットフォーム)
・対応アプリ
・オブジェクト認識方法
・テストケース数、プロジェクト数の制限
・オフライン利用の可否
最後に、有償版のUIテスト自動化ツール Ranorex(※) の特徴について紹介しています。
※Ranorex は、デスクトップ/Web/モバイルアプリの自動化に対応しています。
テスト対象アプリのUI操作を記録し、テストの作成/実行を可能とします。
動作環境(プラットフォーム)
近年のUIテスト自動化ツールは、①SaaS型と②オンプレミス型のいずれかのプラットフォームで動作します。
①SaaS型
最近は、SaaS型 のUIテスト自動化ツールが多い印象です。
SaaS型のメリットとしては、物理サーバーを導入する必要がないためオンプレミスと比べて導入コストが安くなる、顧客側でのメンテナンスの必要がない(少ない)といったメリットが考えられます。
②オンプレミス型
以前と比較してオンプレミス型は減ってきている印象はありますが、オンプレミス型の大きなメリットとしては、セキュリティ面で安心できるという点です。
自社のセキュリティポリシーとして、テスト資産をクラウド上に保管できない場合には、オンプレミス型のツールを選択する必要があります。
対応アプリ
対応アプリの種類としては、以下があげられます。
①デスクトップアプリ
②デスクトップWebアプリ
③モバイルネイティブアプリ
④モバイルWebアプリ
対象のツールによって、対応しているアプリは様々であり、上記①~④すべてに対応しているアプリもある一方で、②④のようなWebアプリにのみ対応しているツールも多くありました。
自動化したいアプリが、対象のツールで対応しているかは事前に確認する必要があります。
オブジェクト認識方法
テスト対象アプリ内のオブジェクトを認識する方法として、①XPath認識 あるいは ②画像認識 が多く、①XPath認識 を採用しているツールが多い印象です。
①XPath認識 の場合、XPathに一致している状態であれば、見た目や座標(位置)に依存しないため、テストの安定性が向上すると考えられています。
②画像認識 の場合、見た目をもとに認識をおこなうため、アプリの改修などで大きく見た目が変わった場合、認識ができなくなるといった現象が発生します。
テストケース数、プロジェクト数の制限
ツールによっては、テストケース数やプロジェクト数に制限がありました。
(例:1プロジェクトを追加するにあたり、追加料金が発生するなど)
一方で、テストケース数、プロジェクト数の制限がなく、無制限に作成できるツールも存在します。
このような観点は、各ツールの運用費用に関わってくるため、自社に適したツールを選ぶ必要があります。
オフライン利用の可否
ツールによって、オフライン利用の可否が異なりました。
比較的、オンプレミス型のツールだとオフライン利用が可能となり、SaaS型のツールだとオフライン利用が不可といった傾向がありそうです。
ツールによっては、購入プランによってオフライン利用が可能となるケースもありました。
テスト対象アプリ自体がネットワーク接続不可な環境で動作させる必要がある、といった制約がある場合には、オフライン利用が可能なツールを選択する必要があります。
Ranorex の特徴
有償版のUIテスト自動化ツールである Ranorex は、以下の特徴を持ちます。
Ranorex は、オンプレミス型のUIテスト自動化ツールとなり、デスクトップ・デスクトップWeb・モバイルネイティブ・モバイルWebにすべてのアプリケーションに対応しています。
テスト対象アプリが増えるごとに追加料金は発生せず、1ライセンスですべてのアプリをテストできます。
オブジェクト認識方法として、RanoreXPathといったXPath認識をベースとした認識をおこなっており、それ以外にも座標認識・画像認識が可能なツールとなっています。
RanoreXPath については、以下のBlog記事で紹介されてます。
RanoreXPathの基本構造
テストケース数やプロジェクト数の制限がないことから、価格を気にせず必要な分だけテストケース・プロジェクトを作成していくことが可能です。
また、オフライン利用が可能であることから、ネットワーク接続不可な環境でテストしたい方に適しています。(Ranorex では、追加料金など発生せず、オフライン利用が可能です。)
Ranorex に興味がある方は、こちらから製品紹介資料をダウンロードできます。
まとめ
今回、有償版のUIテスト自動化ツールの特徴について調査してみました。
さまざまなUIテスト自動化ツールがある中で、自社のアプリや環境に合ったツールを選択することがポイントとなります。
UIテスト自動化に興味がある方は、ぜひ今回の情報を参考とし、要望に合ったツールを選択ください。