アプリケーションパフォーマンスの経時的なモニタリング
この機能は、アプリケーションのパフォーマンスリグレッションをモニタリングする場合や、ユーザーに対するアプリケーションのベースラインパフォーマンスを把握する場合などに役立ちます。
mablブラウザーテストの [Performance] タブにアクセスして、「Cumulative Speed Index (累積速度インデックス)」を表示します。これはアプリケーションがテスト実行全体を読み込むのに要する時間で、過去90日のデータがチャートに表示されます。下の画像に示すように、テスト対象の主なユーザー手順の完了に要する時間が長くなり始めているのを発見したり、アプリケーションパフォーマンスの改善によってユーザー手順に好影響が現れているのを確認したりすることができます。

[Performance] ページの例 (過去90日までの累積速度インデックスの日次平均を表示)。
Enterpriseプランの機能
この機能は、Enterpriseプランおよびmablのトライアルでのみご利用いただけます。アップグレードについては、担当のmabl CSMにお問い合わせください。
ユースケース
パフォーマンスリグレッションのモニタリング
特に、テストを一定周期で実行する場合には、このチャートがパフォーマンスリグレッションをモニタリングするのに役立ちます。平均時間が右上がりに増えて、それが続いている場合には、パフォーマンスリグレッションが大きくなっている可能性があるため、その前後で行われたデプロイメントやアプリケーションの大きな変更を確認します。
個別のテスト出力を詳しく調べ、同じ速度インデックスのメトリックを使用して各ステップの [Performance] チャートを確認します。下の例では、個々のステップがパフォーマンス悪化のトレンドにどのように寄与しているかに加えて、詳細な調査が必要なパフォーマンス異常を確認することができます。

ユーザーエクスペリエンスの把握
このチャートでは、検索、待機、アサート等に費やす時間などのテストのmabl部分を含まない形で、アプリケーションのパフォーマンスが測定されます。そのため、このメトリックと経時的な変化は、エンドユーザーから見た実際のアプリケーションのエクスペリエンスに対応しています。たとえば、ログインフローでこのトレンドの悪化が起きている場合には、ユーザーが初めてアプリケーションを読み込むときの待機時間が長くなり始めていることを示している可能性があります。
アプリケーションのベースラインパフォーマンスの把握
mablでは過去90日のパフォーマンスがレポートされるため、経時的なアプリケーションのベースラインパフォーマンスを把握できます。また、テストを実行した環境ごとに結果をフィルタリングすることもできるため、異なる環境でのパフォーマンスの違いやテスト戦略に与える影響を確認することができます。
パフォーマンスリグレッションの解決
こちらにアプリケーションの速度インデックススコアの改善方法に関するweb.devの推奨事項が記載されています。
よく寄せられる質問 (FAQ)
テストの実行履歴と異なる数字が表示されるのはなぜですか?
テスト時間 (実行履歴の表に表示) では、起動から完了までのテスト全体の時間が取得されます。これには、自動修復やブラウザーの起動に費やした時間も含まれます。累積速度インデックス (下のグラフに表示) では、各テスト時間でアプリケーションが読み込みに要する合計時間が取得されます。これはユーザーがアプリケーションを通じて手順を完了する間にアプリケーションのユーザーインターフェイス (UI) の読み込み速度をどのように認識するかを反映したもので、実際のテスト時間よりもはるかに小さい値になるのが一般的です。
テスト時間には、次の時間が含まれます。
- ブラウザーの起動時間
- 待機時間
- mablがエレメントの検索やクリック/マウスカーソル移動/ドラッグアンドドロップを行うのに要する時間
累積速度インデックスには、次の時間のみが含まれます。
- 各ステップでアプリケーションが読み込みに要した時間 (アプリケーションの完全な再レンダリングを行わないステップも対象)
速度インデックスとは何ですか?
速度インデックスでは、経時的なページの読み込みパフォーマンス (mablがアクションを実行できるようになるまでに要する時間) を追跡します。詳細については、こちらご覧ください。mablで使用しているのは速度インデックスであり、速度インデックススコアではありませんのでご注意ください。
データをフィルタリングするには、どうすれば良いですか?
このページのチャートとデータは、ドロップダウンセレクターを使って環境別にフィルタリングできます。また、選択したアプリケーションフィルターでフィルタリングすることもできます。どちらを使用する場合も、チャートには選択したアプリケーションと環境で行われたテスト実行のみが表示されます。
環境フィルターは、パフォーマンス低下が起きている環境を切り分ける場合や、パフォーマンスが本番環境のエクスペリエンスによく似た安定した環境に焦点を合わせる場合に便利です。
アプリケーションフィルターは、特に大規模なワークスペースで、複数のアプリケーションでテストやフローを再利用している場合に、どのアプリケーションで問題が発生しているかを特定するのに役立ちます。
表示される結果を増やすにはどうすれば良いですか? /データが存在しないのはなぜですか?
mablで関連するパフォーマンスデータが自動的に収集されるようにテストを実行していれば、何もしなくてもパフォーマンス情報が自動的に表示されます。
パフォーマンスチャートが空欄になっているか、期待した数のテスト実行が存在しない場合は、以下をチェックして結果が表示されることを確認します。
- テストがChrome上で実行されているかどうかを確認します。パフォーマンスデータを読み込むのに必要なステップトレースが表示されるのは、Chromeでの実行のみです。
- テストが成功しているかどうかを確認します。チャートが表示されるのは成功したテストのみです。
- テストがアドホック実行またはローカル実行のどちらで実行されたものかを確認します。現時点では、結果が表示されるのは、クラウドでプランの一部として実行されたテストのみですが、これは近く変更される予定です。
Updated 6 months ago