iPad自動テストツール「GHOST Operator」
1.概要
GHOST Operatorは、iPad端末のMobile Safari上で動作するウェブアプリケーションに対して、テストシナリオに沿って自動的にテストを行うためのテスト自動化ツールです。現在、iPadが標準的に提供しているテスト機能では実現できないテストシナリオや煩雑な環境設定などの課題を解決し、効率的な自動テスト環境を提供します。
iPadにおける自動テストの課題
PC上で動作するChromeやEdgeなどのモダンブラウザにおける自動テストは、一般的にはSeleniumなどのWebDriverをベースにしたテストツールによる自動テストが普及してきています。ただし、iPad+Mobile Safariの環境では、同様の仕組みを使った場合にはさまざまな課題が発生します。
環境面
・Mac PC上で動作する
Safariブラウザの経由が必須
・OSバージョンアップによる
影響が大きく、環境設定が煩雑
機能面
・動作が不安定なため、テスト結果に
一貫性が得られにくい
・キーストロークの再現やIME入力
などのテストができない
2.構成
GHOST Operator(以下 G.O と略)は、テストシステムの中核となるソフトウェア:G.O WebDriver ServerとBluetooth接続にてキー入力やマウス操作をエミュレートする専用ハードウェア:G.O HID Emulatorによって構成されます。
G.O WebDriver Serverは、サーバープログラムとしてMobileSafariのWebDriverの代わりにSeleniumなどのWebDriverプロトコルを使ったテストシナリオを受け付けます。実行されたテスト内容のうち、エレメント照会や問い合わせ系APIは WebSocket通信によってiPad端末の制御を行い、キー入力やマウス操作に関する命令については G.O HID Emulator経由で操作そのものを疑似的に発生させます。
3.効果
◎GHOST Operatorテスト結果(パフォーマンス)
<テスト概要>
1、テストページ数 981ページ
2、タップおよびスワイプ操作 3,768アクション
3、キー操作 4,889アクション
<テスト結果>
→ テスト実行時間「3時間42分」
※ このデータは、弊社製品「NEXACRO N」の⾃動テストを実行した結果です。
4.機能比較と動作環境
機能 | MobileSafari 標準WebDriver | T社 Browser For ios | GHOST Operator |
---|---|---|---|
iPad実機+Mobile safariによるテスト | ○ 可能 | × Mobile safari非互換の専用ブラウザ | ○ 可能 |
WebDriver対応 | ○ 対応 | × 非対応 | ○ 対応 |
Selenium Grid対応 | ○ 対応 | × 非対応 | ○ 対応 |
スクリーンキャプチャ | ○ 可能 | ○ 可能 | △ 論理的キャプチャのみ可 |
キーストロークのテスト | × Elementへの文字列セットで代用のみ | △ ソフトウェアキーボードのタップで代用 | ○ 矢印キー等を含め可能 |
IMEを利用するテスト | × 不可能 | △ ソフトウェアキーボードのタップで代用 | ○ 可能 |
クリップボードを利用したテスト | × 不可能 | ○ 可能 | ○ 可能 |
Macを使わずにテストが可能か | × Mac上のSafariの中継が必須 | ○ 可能 | ○ 可能 |
環境設定の容易さ | × 都度手作業でiOS、Macの頻雑な設定が必要 | ○ プロジェクト属性に設定 | ○ 設定ファイルで複数設定可能 |
動作環境の安定性 | × バージョン毎に異なる挙動 | ○ 安定して動作する | ○ 安定して動作する |
■動作環境
- iPadOS 13.3以降(サポートブラウザ︓MobileSafari)
- Windows 10 PC
- Java 1.8 実⾏環境
- 1個のUSBポートを占有します(バスパワーのUSB HUBは利用不可)
- テスト対象の端末とGHOST Operatorは同⼀セグメント内のLANにより接続されている事(プロキシ利用不可)
- Mac, XCode, Appiumなどは不要です。
■評価キット構成内容
- G.O WebDriver Server (Java アプリケーション)
- G.O HID Emulator (専⽤ハードウェア)
- Node.js上で動作するサンプルプログラム
- マニュアル
デモ動画
基本的なHTMLサイトへの入力デモ(YouTube)
見積入力画面デモ(YouTube)
ドラッグ&ドロップデモ(YouTube)
タッチ操作テストデモ(YouTube)
SeleniumによるiPad (MobileSafari) 実機テスト入門
GHOST Operatorは、Selenium WebDriverライブラリを用いたテストシナリオを、iPad実機上のMobileSafarで実行することを可能とします。 Selenium WebDriverライブラリは多くのプログラム言語に対応し、それぞれにOSSによるテストフレームワークも提供されており全体像は大きな規模となりますが、このドキュメントでは以下の動画のデモアプリケーションを題材にしてWebDriverの基本的な使用方法を中心に、GHOST Operatorを利用した際に注意するべき点を補足しています。
「GHOST Operator」製品へのお問い合わせ
お気軽にお問い合わせください。