ドキュメント

ブラウザテスト

Coroidでは差分だけでは確認できないユーザーフローを検証するために、実際のブラウザーで稼働中のプレビューを利用します。

コードを読むだけでは確認できない事柄があります。フォームが送信されるか、フローが完了するか、ページが正しく描画されるかなどは、アプリケーションが実際に動作し、誰かがそれを利用する必要があります。

Coroidがこれらを確認する手段がブラウザーテストです。該当する項目は「品質 → テスト → ブラウザー」にあります。品質 → テスト → ブラウザー.

シナリオ

シナリオとは、何を実行し、その後に何が真であるべきかというユーザーフローを平易な言葉で記述したものです。

Sign in as a standard user, open the billing page, and change the
plan from Free to Professional.

Expect: the confirmation dialog lists the new monthly price, and after
confirming, the plan shown in the header is Professional.

期待値は観察可能な結果として記述します。「ページが正常に動作する」といった表現では有意義な失敗を検知できませんが、「ヘッダーに『Professional』と表示される」であれば検知可能です。

テスト対象とテスト用アカウント

テスト対象」とは、シナリオが実行される環境のことで、通常は検証対象の変更内容のプレビューです。

各テスト対象には独自の設定とテスト用アカウントが含まれます。テスト用アカウントとは、この目的のために用意された認証情報です。

結果に基づく制御

ブラウザーテストの結果は、他のチェックと同様に品質ゲートに反映させることができ、ブロッキングまたは助言的な処理を行えます。

他のチェックよりも長めに助言モードをデフォルトとします。ブラウザーテストはシステム内で最も不安定なチェックであり、タイミングやネットワーク、ライブ環境に依存するからです。特定のシナリオが複数回にわたって安定して動作することを確認してから、ブロッキング設定に切り替えてください。

有用性を維持するため

  • **数は少なく、重要なものにする。**重要なフローをカバーする10個のシナリオの方が、あらゆる項目を網羅する100個のシナリオよりも優れています。各シナリオは実行ごとに時間を消費するからです。
  • **独立性を保つ。**あるシナリオが別のシナリオの実行結果に依存している場合、混乱を招くような失敗が生じます。
  • **クリーンアップを行う。**データを生成するシナリオが次の実行を妨げるような状態を残さないようにします。

シナリオが失敗した場合

コードを確認する前に証拠を調べてください。ブラウザーの実行結果には発生した事象が記録されており、最も一般的な原因は環境側にあります。例えば、プレビューが準備できていなかった、依存関係が途絶えていた、アカウントがロックされていたなどです。

真の失敗は再現しますが、不安定な失敗は再現しません。