ネイティブモバイルアプリテストの概要
概要
Nightwatchは、Appiumを介してネイティブモバイルアプリケーションの自動テストを可能にします。Appiumの堅牢性とNightwatchによる強化された開発者エクスペリエンスを組み合わせます。AndroidおよびiOSデバイスでのネイティブモバイルアプリのエンドツーエンド機能テストを可能にします。
Appiumとは?
Appium Webサイトの定義によると
Appiumは、ネイティブ、ハイブリッド、およびモバイルWebアプリで使用するオープンソースのテスト自動化フレームワークです。WebDriverプロトコルを使用して、iOS、Android、およびWindowsアプリを駆動します。
Seleniumはデスクトップブラウザの自動化に使用されますが、AppiumはモバイルWeb、ネイティブ、およびハイブリッドモバイルアプリの自動化に使用できます。
要件
Appiumを使用してNightwatchを実行するには、次の要件を満たす必要があります
iOS
- Mac OSX - XCode(コマンドラインツール付き)
Android
- Mac OSXまたはWindowsまたはLinux - Android SDK≥16
Nightwatch Mobile HelperがSDKのダウンロードを処理するので、心配しないでください。
仕組み
Nightwatchのネイティブモバイルアプリテスト機能は、Appiumを内部で構築しています。
Appiumは、ベンダー(UIAutomator2 / Espresso、Apple XCUITest / UIAutomation)の自動化ライブラリをラップするW3C WebDriverプロトコルに準拠したREST APIを公開するNodeJSベースのサーバーです。
エンドツーエンドのシナリオでは、NightwatchはAppiumサーバーにリクエストを行い、サーバーはコマンドを実行するために異なるプラットフォームドライバーを使用してネイティブフレームワークと通信し、最終的にHTTPレスポンスをNightwatchに返します。
推奨される次の手順
Nightwatchでのモバイルアプリテストの仕組みを理解したので、セットアップに進みましょう。 Nightwatchを使用したモバイルアプリの自動テストを完全に理解するために、以下のすべてのトピックを網羅することをお勧めします。
モバイルテスト用にNightwatchをインストールする
ネイティブアプリケーションを自動化するテストを作成する
仮想デバイス、実デバイス、およびクラウドプロバイダーでテストを実行する
テストのデバッグ