BrowserStackは、様々な種類のブラウザ・モバイル実機端末を使って、手動・自動テストを簡単に行えるクラウドサービスです。
対応ブラウザ・OSバージョン
こちらから確認できます。
利用方法
まずはBrowserStackトップページの「FREE TRIAL」のボタンからアカウントを登録します。登録が完了すると図1・図2のProduct選択画面に移動するので、「Website」「Automated Testing」を選択しましょう。しばらく待つと自動的にダッシュボードが表示されます。この時点で無料トライアルが開始されており、100分間の自動テスト実行が可能になります。
続いて、テスト一括実行の画面で、図3のように必要な項目を入力します。
[1] ユーザー名・アクセスキー
画面上部のメニューの中の「ACCESS KEY」(図4)を開き、「Username」「Access Key」をそれぞれコピーして使用します。
[2] 端末の種類
大まかにPCブラウザのテストかモバイルブラウザのテストかを設定します。
- デスクトップ:通常のPCブラウザでテストを行います。
- モバイルエミュレーション(Chrome):Chrome上でiOSやAndroidのブラウザをエミュレートします。
- モバイル実機:iOS・Androidの実機のブラウザでテストを行います。BrowserStackの「Automate Mobile」プランの契約が必要になります。
[3] さらに詳細な設定
BrowserStackのCapabilities Generatorページ(図5)を参考に、利用したい環境の情報(OS・バージョン・ブラウザ・モバイルの機種など)を指定してください。
左側のペインでOSとブラウザを選ぶと、設定すべき値が右側のペインに表示されます。少し見づらいですが、MagicPodの項目との対応は下記のようになります。小数点以下の表記などが異なっていると動作しない場合もあるので注意してください。前述の図3は図5の選択肢に合わせてMagicPod上で設定した状態です。
MagicPod | Capabilities Generator | 備考 |
OS | os | 省略した場合、BrowserStackによって自動的に設定されます |
バージョン | osVersion |
省略した場合、BrowserStackによって自動的に設定されます ※モバイル実機の場合は必須項目です |
ブラウザ | browserName | 必須入力です。表記が違う場合もありますが、MagicPodの画面上のプルダウンで必要なものを選択してください。 |
ブラウザのバージョン |
browserVersion | 省略した場合、BrowserStackによって自動的に設定されます |
機種 |
deviceName | モバイル実機の場合は必須項目です |
省略した場合の自動設定は概ね最新の環境で動作するので気にしなくてよい場合が多いです。ただし、2020年6月時点ではブラウザにSafariを選んで他を空欄にするとWindowsの古いSafariが選択されてしまいました(MagicPodでは対応していません)。Safariを使う場合は、Capabilities Generatorの内容に従ってきちんと設定することをお勧めします。以下は一例です。
実機用の設定の例は以下のようになります。機種の指定はできますが、その上で動作するブラウザやバージョンは選択できず既定のものが使われます。
テスト結果
MagicPodのテスト結果画面に加えて、BrowserStackの画面上でもテスト結果が確認できます。この画面では、現在実行中のテストのリアルタイムログや、実行が終わったテストの動画を確認することができます。(図9)
コマンドライン実行
こちらの方法で、コマンドラインからもテスト一括実行が可能です。
複数種類の端末に対するテスト一括実行
こちらの方法で、複数種類の端末に対するテスト一括実行が可能です。リンク先の説明はモバイルアプリのものですが、Webアプリケーションについても操作方法は同様です。
制限事項
- テストケース名や一括実行の設定名に日本語が含まれていると、その部分はBrowserStack側のWebコンソール上のテスト結果名称に反映されません。
既知の問題
BrowserStack上でテストを実行すると以下の問題が起きることがあります。
- Firefoxのテストでは、スクリーンショットの取得時にレスポンスが極端に低下してタイムアウトすることが稀にあります。この問題はMagicPod開発チームにて調査中ですが、リトライ回数を「1」に設定することでほぼ回避できます。
- Safariのテストでは、テスト開始時に「Could not start Browser / Emulator Reason: Could not create a session: You must enable the 'Allow Remote Automation' option in Safari's Develop menu to control Safari via WebDriver」というエラーメッセージが発生してブラウザを起動できないことがあります。この問題はMagicPod開発チームにて調査中ですが、リトライ回数を「1」に設定することでほぼ回避できます。