最終更新日:2024-08-21
アプリ開発におけるテスト工程の効率化や、品質向上のためにテスト自動化ツールの導入を検討している方へ。ツールのタイプや比較ポイントとともに、無料で使えるOSSも含めておすすめのツールを紹介します。
テスト自動化ツールとは、アプリやソフトウェア開発における各種テスト活動を自動化するためのツールです。
エンドユーザーが使うのと同じように操作をした際、システム全体が正しく動作するかチェックする「E2E(End to End)テスト」では、テスト実施のたびにテストコードを書いていると工数が増え、エンジニアに大きな負担がかかります。
特に機能追加や改修が頻繁に行われる現場では、手作業でのテストには限界があり、開発のスピード感も失われてしまうでしょう。そこで有効なのがテスト自動化ツールです。
本記事では、改修時の影響を確認するリグレッションテスト(回帰テスト)などにおいて有用な、専門知識不要で、ノーコードやローコードでテストを実施できるE2E向けのテスト自動化ツールのほか、無料で使えるオープンソースのツールも紹介します。
テスト自動化ツールをお探しの方は、こちらからサービス紹介資料をダウンロードいただけます。
テスト自動化ツールは、対応するアプリの種類によって主に次の4つのタイプに分けられます。それぞれ、具体的なサービスを例示しながら紹介します。
Webブラウザから利用する「Webアプリ」と、スマホやタブレットで利用する「モバイルアプリ」の両方に対応したタイプです。「Autify」や「MagicPod」といったアプリがこのタイプに該当。PCやモバイル端末の並列テストが実行できる機能を備えています。
Webアプリとモバイルアプリに加えて、デスクトップ向けのアプリにも対応しているタイプです。Windows上で動作するアプリに対応した「Ranorex」や、アプリのタイプにかかわらずテストの自動化ができる「UiPath Test Manager 」が、こちらのタイプに該当。複数のプラットフォームにまたがるUIテストの自動化をしたい場合に適しています。
Webアプリのみに対応しているタイプです。該当するツールは「T-DASH」や「Testablish」「ATgo」など。「Webアプリのテストさえ自動化できれば十分」という場合には、こちらのタイプが選択肢となります。
導入コストをかけずに無料で利用できるのが強み。一方で、セットアップや操作の習熟などに時間がかかるほか、対応しているプログラミング言語の制約もあるため、不慣れなうちは導入ハードルが高いと言えるでしょう。
ほかのツールと組み合わせて使えるといったカスタマイズ性が高く、自由度の高いテスト環境を構築する場合には適していますが、運用工数を最小限に抑えたい場合には有料ツールがおすすめです。「Selenium」や「Cypress」などが、このタイプに該当します。
どのツールを導入すべきか検討する際にチェックしておきたい、3つの比較ポイントについて解説します。
テストシナリオとは、「想定される操作を行った場合、アプリが正しく動作するか」を確認するためのものです。「Autify」や「mabl」「ATgo」は、記録した操作手順からテストシナリオやスクリプトを自動作成するので、業務効率化に直結します。
また、「MagicPod」は、ブラウザやアプリ画面からAIエンジンが自動検出した項目のうち、必要なものを選ぶだけで読みやすい日本語スクリプトが作成できます。「T-DASH」も、「ログイン画面」の「テキストボックス」といったテスト対象のページ・要素や、「ブラウザを開く」「文字を入力する」など、テストとして行う動作を日本語で定義・設定可能です。
こうした機能があればノーコードでテストシナリオが作成できるので、非エンジニアや初心者でもテストの作成が行えるように。QA(品質保証)エンジニアが少ないチームでも、テスト活動をスケールさせられます。
UIを変更すると、テストシナリオにも修正や再設定が必要になるケースがあります。しかし、変更点をすべて把握し、それらを反映したテストシナリオの修正・再設定を行おうとすると大きな負担に。開発スピードにも影響を及ぼすので、負担を軽減するための機能が必要です。
たとえば「Autify」には、AIがUIの変化を監視して、テストシナリオを自動的にアップデートする機能があります。変更箇所の差分も確認できるので安心です。また、「MagicPod」も、AIが変更箇所をサジェストしてくれるほか、画像差分での確認に対応。どちらもノーコードでメンテナンスが行えるのが強みです。
アプリのアップデートや仕様変更が多い現場において、必須といえる機能でしょう。
品質維持のためには、定期的にテストそのものを見直すことも必要です。「Autify」や「MagicPod」では、テストの実施内容や結果をスクリーンショットとともに記録することができます。また、「ATgo」では新旧エビデンスの一括比較や、エビデンス記録のExcel出力が可能に。スクロールが必要な画面でも、自動的にスクロールしてスクリーンショットを取得してくれるため便利です。
トラブルシューティングのために修正履歴をさかのぼったり、成功時のスクリーンショットとの比較を行ったりするときに役立ちます。日々テスト結果を見直すことで、デグレーションをいち早く検知できるというメリットも。
(出所:Autify公式Webサイト)
ユーザーが使うようにブラウザ操作するだけで、ノーコードでテストシナリオが作成できる、ソフトウェアテスト自動化プラットフォーム。非エンジニアでもテストが作れるので、テスト自動化をスケールさせられる。また、最大10並列のクロスブラウザテスト機能により、作成したテストシナリオを複数ブラウザで同時に検証できるため、テスト頻度とカバレッジを最大化するのにも役立つ。作成後のテストシナリオは、UIの変化にあわせてAIが自動的にアップデート。壊れたテストスクリプトの修正作業が必要なくなるというメリットも。
Webアプリ向けの「for Web」のほか、モバイルアプリ向けの「for Mobile」も提供。端末をふる「シェイク」や、アプリをバックグラウンドに移動させたり、フォアグラウンドに移動させたりする「サスペンド/レジューム」という操作にも対応している。
(出所:MagicPod公式Webサイト)
500社以上に導入されている、Webアプリとモバイルアプリの両方に対応したAIテスト自動化クラウドサービス。豊富な機能と高いメンテナンス性でリリースサイクルの高速化を実現する。
AIがアプリケーションの画面からテスト項目を自動で検出し、必要な項目を選ぶだけで日本語のスクリプトを作成。更に、作成したスクリプトのメンテナンスも、テスト対象アプリケーションのUI変更にあわせてAIが自動で修正する。シンプルで直感的なデザインなので、初心者でもすぐにテスト自動化ができるように。
テストの自動化に役立つ機能として、ビジュアルリグレッションテストをはじめ、条件分岐や変数、待ち処理といった制御フロー機能、クロスブラウザテスト、マルチ端末テストなどを備える。また、「Jenkins」や「Slack」「BrowserStack」など、様々な外部ツールとの連携にも対応。プロジェクトごとの権限管理、SAML認証、固定IP、接続元IP制限など、セキュリティ面も万全だ。
(出所:mabl公式Webサイト)
ノーコードで信頼性の高いE2Eテストを作成するテスト自動化クラウドサービス。テストカバレッジの平均増加90%、テスト作成のスピード向上3倍、本番環境でのバグ40%減少といった実績を持つ。
ブラウザテストやモバイルWebテスト、APIテストの作成・実行・管理に対応しており、ユーザーと同じようにアプリケーションを操作するだけで簡単にテストを作成。一度作成したテストは、ブラウザやモバイルデバイスのプロファイルをまたいで並行して実行可能に。更に、アプリケーションに加えられた変更にあわせて、テストを自己修復させるオートヒーリング機能も備える。
テストの各ステップで収集されたデータを使って、アプリの問題点の把握・可視化が行えるほか、テスト結果をスクリーンショットやDOMスナップショットとして保存もでき、問題の特定に役立つ。過去のテスト結果を保存し、定点観測を行うことで、スピーディーな不具合の発見・診断にも貢献する。
(出所:BrowserStack公式Webサイト)
3,000以上のデスクトップブラウザと、実際のiOSおよびAndroidデバイスにアクセスできるクラウドサービス。オープンソースのブラウザ自動化ツール「Selenium」との併用によって、様々な環境で自動テストの実施が行えるように。テスト自動化機能では、オペレーティングシステムやデバイス、ブラウザなどを指定し、テスト構成やテストコードを設定すればテストが実行される。実行結果は、ダッシュボードから詳細や動画、ログなどを確認できるほか、操作ごとのスクリーンショットも保存されている。
Java、C#、Node、JavaScriptのいずれの言語でも簡単に統合でき、並列化によってテストの実行時間を数時間から数分へ短縮することも強み。デバッグツールを利用すれば、SeleniumとJavaScriptのテストのバグも迅速に修正が可能だ。
(出所:Ranorex公式Webサイト)
ローコード/ノーコード自動化ツールと、強力な機械学習済みオブジェクト認識エンジンによって、高度なテスト自動化を実現するソフトウェア。世界中で4,000以上の企業に導入されており、Webアプリとモバイルアプリに加えて、Windowsデスクトップアプリのテスト自動化にも対応している。複数のプラットフォームにまたがるUIテストの自動化もワンシステムで行える。
信頼性の高いUIオブジェクト認識ツール「Ranorex Spy」でアプリケーションを分析し、ユーザーインターフェイス内の要素を確実に識別。識別されたオブジェクトの情報は、オブジェクトリポジトリに保存され、自動テストで使用できるように。テストシナリオはGUIを使用して、ノーコードで作成可能。更に、アクションの記録、テキストと画像の検証の追加、データ駆動型テストの構築といった機能がそろう。
(出所:UiPath Test Manager 公式Webサイト)
世界中で利用されているRPAツール「UiPath」を自動テストに活用した、ソフトウェアテスト用プラットフォーム。RPAの技術メリットを最大限に活かすことで、これまでテストツールでは解決できなかった課題をカバーしている。
Test Suite に含まれる Web アプリケーションで、テストケースの設計・管理ツールの「UiPath Test Manager」、テスト用の検証アクティビティが追加された開発ツール「UiPath Studio Pro」、同じくテスト用機能が追加された管理ツール「UiPath Orchestrator」といった製品で構成。あらゆるソフトウェアアプリのテストに加えて、基幹システムやWebサイト、APIなどのテストでも利用可能だ。
テストは常にアプリのソースコードと同期しているので、メンテナンスにかかる手間を最小限に抑えられる。ServiceNow、SAP Solution Manager、Jira、Azure DevOpsいずれの環境においてもスムーズに適応する。
(出所:ATgo公式Webサイト)
Webアプリを対象とした国産のUI・APIテスト自動化ツール。インターネット接続を必要としないため、セキュリティに強みがある。日本の現場にフィットした設計で、銀行系、証券系、産業系などの大型システム開発プロジェクトに多数採用された実績を持つ。
ChromeやEdge、Safariなどマルチプラットフォーム対応。リグレッションテスト、クロスブラウザテスト、Salesforceバージョンアップテスト、APIテストなど、幅広いシーンで活用可能だ。使い方は簡単で、ツールを起動してテストしたいサイトURLを入力し、いつも通り操作するだけ。レコーディング機能でスクリプトを自動生成し、実行ボタンを押せば誰でも簡単にテストを実行できる。経験が浅いテスターや非エンジニアでも運用しやすい。
提出用データも自動で作成。エビデンスのExcel出力機能や新旧エビデンスの一括比較など、現場で使える機能がそろう。特許も取得済み。
(出所:T-DASH公式Webサイト)
コードの作成が不要で、テストの設計から実行までカバーするテスト自動化ツール。開発言語で作成したスクリプトではなく、日本語で書いたテストケースでそのまま実行が可能。スクリプトのメンテナンスがしやすくなり、テストの自動化促進に貢献する。
日本語でテストケースを作成した後は、画面の要素をキャプチャ機能で取得し、要素に従って動作を設定するだけ。Windowsアプリケーションのほか、ブラウザ上で稼働するWebアプリケーションのテスト自動実行に対応している。
テストケースや画面のインポート・エクスポート機能を用意。インポート機能ではExcelやCSV形式での一覧データを取り込め、エクスポート機能ではExcel形式にて出力が可能だ。そのほか、期待画像とブラウザ上で開いた際のスクリーンショットである現在画像を比較・検証する機能も備えている。
(出所:Testablish公式Webサイト)
直感的な操作で誰でも簡単にテストコードが作れる、Web・GUIテスト自動化ツール。ブラウザの拡張機能を使ってページ情報をキャプチャ・登録すれば、キャプチャしたセッションの操作を表現したテストケースを作成できる。そこから、Seleniumのテストコードを自動生成して、ノンプログラミングでのテスト実行が可能。ページ構造を手動登録するリポジトリ方式にも対応しているほか、テスト対象のアプリケーションが動いてなくてもテストケースの編集が行える。
アプリケーションの機能追加・改修が発生した際には、テストケースを編集して、テストコードを再生成すればOK。テストコード自体を編集せずに、追加・修正ができ、複数人でのメンテナンスもしやすい。また、テストケース内で変数の利用、CIツールとの連携、テストエビデンスの自動生成といった機能もそろっている。
(出所:Selenium公式Webサイト)
Web アプリケーションの UI テストや、JavaScriptのテストのために開発された、Web ブラウザ操作の自動化ツール。フィールドへのテキスト入力、ドロップダウン値とチェックボックスの選択、ドキュメント内リンクのクリックといった、エンドユーザーが実行する一般的なアクティビティをシミュレートできる。複数のオペレーティングシステム上の複数のブラウザに対して同じ命令を実行することも可能だ。Java、Python、Ruby、JavaScriptといったプログラミング言語に対応している。
テストの要件定義やテストコードの作成といった作業を自動化できなかったり、環境構築の必要があったりするので、ある程度の専門知識が必要となる。
(出所:Cypress公式Webサイト)
JavaScriptで構成されたオープンソースのE2E向けテスト自動化ツール。Webアプリに特化して、テストのセットアップから作成、実行、デバッグまでをカバーしている。オールインワンタイプのツールなので、複数のツールやライブラリをインストールしなくてもE2Eテストが作成できる。テスト実行中の画面は動画やスクリーンショットとして保存され、メンバーとの共有も可能だ。
多くのE2Eテストツールと違ってSeleniumをベースにしておらず、テスト実行スピードや、アプリケーションと同じ実行ループでテストが行えるといった強みを持つ。対応ブラウザもChromeやFirefox、Edgeなど豊富。
フレーク検出やメールサポートに対応した有料プランも用意されている。
(出所:TestCafe公式Webサイト)
Web アプリケーション用のE2Eのテストフレームワーク。Linux、Windows、Macの主要OSをサポートしており、対応しているブラウザも豊富だ。主要なデスクトップブラウザ、クラウドブラウザ、モバイルデバイスでの一般的なユーザーシナリオのシミュレートが行える。
テストアクションや成功条件の追加、アサーションの作成、期待の定義などを設定して新規のテストを作成。テストを実行すると、結果がコンソールに出力される。デバッグモードが組み込まれているので、問題が発生しても素早く原因を突き止められるように。ノーコードでテストシナリオの作成が可能な、有料版の「TestCafe Studio」も提供している。
Seleniumを使用しないため、Seleniumベースのツールでは対応できない、ユーザーロールや自動待機などの機能も実装できる。
(出所:Appium公式Webサイト)
ネイティブ、ハイブリッド型モバイルアプリのために開発された、オープンソースのテスト自動化フレームワーク。iOS、Android,Windowsで使用されるアプリや、モバイルブラウザアプリなどに対応している。Appium2.0以降なら、Flutterでもテスト実行可能。ネイティブアプリをテストする際に、SDKやアプリのリコンパイルを必要としないことが特徴だ。PythonやJavaScript、Ruby、C#など、様々なプログラミング言語でテストスクリプトを記述できるのも強み。
Appium-GUIツールを使用すれば、記録した操作・動作からコードを生成し、テストコードの作成に活用することも。対応言語が多いため、情報が分散しがちなのがネック。
アプリやソフトウェア開発などでの各種テストを自動化する、テスト自動化ツールを紹介しました。テスト自動化ツールは、Webアプリやモバイルアプリ、デスクトップアプリなど、対応するアプリの種類によってタイプが分かれます。また、無料で使えるオープンソースのツールもあり、自社にエンジニアが多く在籍していれば選択肢の一つとなるでしょう。
以下、よくある質問をまとめておきましたので、自社にあったテスト自動化ツールを選ぶ際の参考にしてください。
テスト自動化ツールを検討する際は、以下のポイントに沿って比較すると選びやすくなります。
以下、導入実績を公開しているテスト自動化ツールを挙げています。
テスト自動化ツールをお探しの方は、こちらからサービス紹介資料をダウンロードいただけます。
オーティファイ株式会社
ノーコードで誰もが簡単にソフトウェアテストを自動化できるプラットフォーム。独自AIでメンテナンスも自動化可能。ソフトウェアの開発スピード・品質の向上を実現します...
六元素情報システム株式会社
セキュアに導入できるローコードのUI・APIテスト自動化ツール。SIerの開発現場から生まれたので日本の現場にフィット。システムの品質確保とコスト削減をサポート...
<重要なお知らせ> サイトリニューアルに伴い、初回ログインにはパスワードの再設定が必要です。
アスピックご利用のメールアドレスを入力ください。
パスワード再発行手続きのメールをお送りします。
パスワード再設定依頼の自動メールを送信しました。
メール文のURLより、パスワード再登録のお手続きをお願いします。
ご入力いただいたメールアドレスに誤りがあった場合がございます。
お手数おかけしますが、再度ご入力をお試しください。
ご登録いただいているメールアドレスにダウンロードURLをお送りしています。ご確認ください。
サービスの導入検討状況を教えて下さい。
本資料に含まれる企業(社)よりご案内を差し上げる場合があります。