アプリのパフォーマンスの低下を監視したいですか?それとも、ユーザー向けのアプリの基準となるパフォーマンスを把握したいだけですか?mabl では、テスト実行から収集されたパフォーマンス指標(アプリのロード時間やAPI応答時間など)を確認し、時間の経過とともにアプリのパフォーマンスを監視できます。
この記事では、mablのテスト実行からアプリケーションのパフォーマンスを確認するためのワークフローを提案します。
- カバレッジページでパフォーマンスの変化を確認する
- 詳細については特定のテストを確認してください
- ステップレベルでパフォーマンスを分析する
- よく使われるフローでの遅延を確認する
- さらなるモニタリングのためにパフォーマンステストを実行する
mablテストで主要なパフォーマンス指標を積極的に監視することで、顧客に影響が出る前に遅延を特定し、対処することができます。
パフォーマンスの変化を確認
アプリケーションのパフォーマンスを確認し始めるのに適した場所は、カバレッジページ:カバレッジ > 概要です。最もパフォーマンスの低下が見られるテストを見つけるには、パフォーマンスウィジェットをチェックしてください。
すべてのテストのパフォーマンスの変化を確認するには、テストステータステーブルをご覧ください。ここで、すべてのテスト実行のパフォーマンスを確認できます。
カバレッジページで全テストのパフォーマンスを確認
mablはカバレッジページで、アプリケーションの読み込み時間とAPIレスポンスタイムの2つの指標でパフォーマンスを測定します。
アプリケーションの読み込み時間
ブラウザテストにおいて、アプリのロード時間はテスト内の各ステップにおけるスピードインデックスの合計です。この指標は、検索や待機、アサーションなど「mabl」部分の処理時間を除いた、アプリケーションのパフォーマンスを測定します。このメトリクスは、エンドユーザーにとってのアプリケーションの実際の体験を表しています。
アプリケーションの読み込み時間の指標には、成功したプランでのChromeとEdgeの実行のみが含まれます。
APIレスポンスタイム
APIテストでは、APIレスポンスタイムはAPIリクエストを送信してからレスポンスを受信するまでの時間を測定します。カバレッジページでは、累積APIレスポンスタイム、つまりこのテスト内のすべてのリクエストにおける合計APIレスポンスタイムを測定します。リクエスト間の時間は含まれません。
API応答時間の指標には、成功したプラン実行のAPIテストのみが含まれます。
詳細については特定のテストを確認してください
カバレッジページから、個々のテストをクリックして特定のテストのパフォーマンス指標を時系列で確認できます。アプリのロード時間、API応答時間、テスト実行時間を測定するグラフを確認するには、パフォーマンスタブをクリックしてください。テスト実行時間は、開始から完了までのテスト全体を記録します。カバレッジページと同様に、パフォーマンスタブには成功したプラン実行の指標のみが表示され、ブラウザのパフォーマンス指標にはChromeとEdgeでの実行のみが含まれます。
特定のテストにおけるパフォーマンスの確認
リグレッションの確認
パフォーマンスタブのグラフは、特にテストを定期的に実行している場合、パフォーマンスの低下を監視するのに非常に役立ちます。アプリの平均ロード時間が急激に増加し、そのまま高止まりしていませんか?その時期にアプリに対して行われたデプロイや大きな変更を確認してください。大きなパフォーマンスの低下が発生している可能性があります。
これらのチャートを定期的に確認することで、ベースラインパフォーマンスを監視し、重大な課題に発展する前にリグレッションの可能性を調査できます。分析の指針として、次のような質問を自分に投げかけてみてください。
- 結果は一貫していますか?それとも大きく変動しますか?
- 傾向は改善しているか、悪化しているか?
APIレスポンスタイムの傾向を確認する
フィルターを活用する
パフォーマンスタブのグラフとデータは、環境ドロップダウンセレクターで環境ごとに、アプリケーションフィルターでアプリケーションごとに絞り込むことができます。いずれかのフィルターを使用すると、グラフには選択したアプリケーションまたは環境で実行された実行のみが表示されます。
- 環境フィルターを使用して、パフォーマンスが低下している可能性のある環境を特定したり、本番環境に近い安定したパフォーマンスを持つ環境に注目したりできます。
- アプリケーションフィルターを使用すると、特に大規模なワークスペースで、テストやフローが複数のアプリケーションで再利用されている場合に、どのアプリケーションで課題が発生しているかを特定できます。
テストの更新
テスト内でステップを追加、移動、または削除すると、mablがアプリのロード時間を計算する方法が変わる場合があります。例えば、テストの最後にクリックステップを追加すると、mablが記録する累積アプリロード時間が変わります。アサーションや検索の設定の値を更新するなど、ステップの内容を変更しても、累積アプリロード時間には影響しません。
ステップレベルでパフォーマンスを分析する
パフォーマンス タブから、チャート内のドットをクリックして特定のテスト実行にドリルダウンし、ステップレベルでパフォーマンスを分析できます。
- ブラウザテスト:ChromeおよびEdgeでの実行時、各ステップのパフォーマンスタブには、ページの読み込みパフォーマンスを経時的に追跡するスピードインデックスが表示されます。
- APIテスト: ステップレベルの出力にある パフォーマンス タブでは、そのステップのAPI応答時間が経時的に表示されます。
ステップレベルの出力を確認することで、パフォーマンスの課題を特定するのに役立ちます。たとえば、次のスピードインデックスチャートは、個々のステップがパフォーマンスの悪化傾向にどのように影響したかを示しており、さらに調査する価値のあるパフォーマンスの異常も示しています。
スピードインデックス
よく使われるフローを確認する
mablはフローレベルでもパフォーマンス指標を収集します。これは、一般的なユーザージャーニーをカバーするフローがある場合に特にインサイトとなります。たとえば、重要なログインフローのパフォーマンスを監視することで、より大きな課題に発展する前に潜在的なリグレッションを調査できます。
アプリでフローを開き、パフォーマンス タブをクリックすると、ブラウザーまたはAPIフローのパフォーマンスメトリックを確認できます。フローレベルのパフォーマンスメトリックは、成功したプラン実行時のみ取得され、ブラウザーフローの場合はChromeとEdgeのみで記録されます。
テストのパフォーマンスメトリックと同様に、フローのパフォーマンスメトリックも環境やアプリケーションでフィルタリングできるため、課題をさらに特定したい場合に役立ちます。
フローの更新
フロー内でステップを追加、移動、または削除すると、mabl がアプリのロード時間を計算する方法が変わる場合があります。たとえば、フローの最後にクリックステップを追加すると、mabl が記録する累積アプリロード時間が変わります。アサーションや検索の設定など、ステップの値を更新するような変更は、累積アプリロード時間には影響しません。
さらなるモニタリングのためにパフォーマンステストを実行する
ブラウザおよびAPIテストでパフォーマンスを定期的に確認することは、より堅牢なパフォーマンス検証への良い第一歩です。主要なユーザージャーニーを検証するブラウザおよびAPIテストを特定した後、それらをパフォーマンステストの機能テストとしてmablに追加し、システムの負荷時の検証を行うことができます。
パフォーマンスの問題が顧客に影響を与える前に検出できるよう、プリプロダクション環境で定期的に実行してください。パフォーマンステストの詳細については、こちらをクリックしてください。