このページでは、ローカルのmacOS上のSafariでテストを実行するための準備および制限事項を説明します。
目次
テスト実行の準備
Safariのリモートオートメーション(自動操作)はデフォルトで無効になっています。以下の2つの操作のいずれかを行い、自動操作を有効にしてください。
コマンドによる設定
ターミナルを開き、以下のコマンドを実行してパスワードを入力します。
safaridriver --enable
OSのバージョンアップの経緯によっては上のコマンドでは有効化できない場合があります。その場合は、次のコマンドを実行してください。
sudo safaridriver --enable
GUI操作による設定
Safariを起動し、「Safari」メニューから「環境設定」を選択します。
ダイアログが開いたら「詳細」タブを選択し、「メニューバーに"開発"メニューを表示」にチェックを入れます。
続いて「開発」メニューを開き、「リモートオートメーションを許可」にチェックを入れます。
制限事項
MagicPodにおけるローカルPC上のSafariの利用にはいくつか制限があります。
新規UIキャプチャの取得
Safariを使って新しいUIをキャプチャすることはできません。Chromeを使ってキャプチャを取得し、Safariではテスト実行のみ行うようにしてください。MagicPodDesktopへの接続時、ブラウザにSafariを選んで接続しようとするとエラーになります。「ブラウザへ接続」ボタンは使わず、直接「実行」ボタンを押下してテストを実行してください。
テスト実行中のマウス手動操作
テスト実行中にSafari以外のアプリケーションを手動で操作しないでください。操作を行うと、Safari上でのマウスホバー動作などがうまく実行されないことがあります。
Safariの手動操作
自動テストのために起動したSafariのウィンドウは、手動では一切操作できません。操作しようとすると、下記のようなダイアログが表示されます。用途に応じて「セッションを続ける」もしくは「セッションを中止」のいずれかを選択してください。
- セッションを続ける
- 自動操作状態に戻り、以降のテスト実行でもこのウィンドウが使われます。
- テスト実行中に誤って触ってしまった場合、テスト終了後であってもこのウィンドウを引き続きテストに使いたい場合に選択します。
- セッションを中止
- 自動操作状態を解除し、手動で操作できるようになります。新しくテストを実行するとこのウィンドウは閉じ、新しいウィンドウが開きます。
- テスト終了後に画面の動作を確認したいときなどに選択します。
- すべてのオートメーションをオフにする
- このボタンを押下すると事前準備の「リモートオートメーションを許可」が解除されてしまうので基本的には押下しないでください。
- もし誤って押下した場合は、「リモートオートメーションを許可」の手順をやり直してください。
個別のコマンドの制限
- クリックしてファイルダウンロード
- このコマンドは使用できません。
- テキスト入力
- 利用できる対象のUI要素に制限があり、<input>タグもしくは<textarea>タグのロケーターを持つ要素にしか入力できません。
- 上記以外のタグ、もしくはAIロケーター(ai=XXという形式のロケーター)を使った場合はエラーとなります。
- URL指定で遷移
- Basic認証を使っているサイトへは現在遷移できません。改善をご希望される場合は、開発チームまでご連絡ください。