ページカバレッジの概要
mablのカバレッジ機能では、アプリケーションのページカバレッジを表示して、ギャップをより簡単に特定し、各ページで実行されるテストをすばやく見つけることができます。このページには、mablがデフォルトのリンククローラーを使用して過去2週間の間にアプリケーション内で探索したすべてのページのリストが表示されます。リストはアプリケーション別に自動的にフィルタリングされます。表示対象を過去1日のみや過去4週間にしたい場合は、その旨を指定することができます。
カバレッジの把握
カバレッジテーブルの最初の3列には、ページごとに、リンククローラーからの最新スクリーンショット、URLホスト、URLパスを表示できます。さらに、ホストとパスでフィルタリングができるだけでなく、データを表示する期間も選択できます。この機能を活用するには、リンククローラーを定期的に実行する必要があります。リンククローラーが定期的に実行されていない場合、計算結果がアプリケーションのカバレッジを正確に反映しない可能性があります。
カバレッジページの更新頻度
測定値はすべて、少なくとも1日に1回更新されます。
ページカバレッジ
上記のメトリックは、過去2週間 (デフォルト) に実行されたページカバレッジのみを示します。特定のページで記録された一意のステップやテストのうち、アップストリームテストの失敗や条件付きロジックが原因で実行されなかったものは、これらの合計に含まれません。
カバレッジメトリックの把握
mablでは、ページの既存のカバレッジレベルを把握できるように、上記以外に複数の測定値が表示されます。
Tests
このメトリックは、上記で定義された期間内に特定のページにアクセスした一意のテストの数を取得します。テストがページのエレメントを操作したかどうかは問いません。数値が0の場合、このページにアクセスしたテストはリンククローラー以外にありません。行内の任意の場所をクリックすると、このページで実行された具体的なテストが表示されます。テストがない場合は、簡単に追加することができます。
注: あるテストが2つのプランに属し、そのページに対して2回実行される場合、最初の一意の実行のみが数値に反映されます。
Steps
このメトリックは、選択された期間内にこのページにアクセスして実行されたテストに含まれる個別の操作ステップの数を取得します。ステップは、操作対象のエレメントと実行したアクションによって区別されます。
注: アサーション、待機ステップ、エコーステップなどは、ページ上のエレメントを操作しないため、この合計には含まれません。
Assertions
このメトリックは、選択された期間内にこのページにアクセスして実行されたテストに含まれる個別のアサーションステップの数を取得します。
Complexity
このメトリックは、ページのクローリング時や定期的なテスト実行の間にmablが測定したDOM自体の全体的な複雑さを示します。数値が大きいほど、ボタン、リンク、フィールドなど、ページに含まれる操作エレメントが多くなります。
Linked Pages
このメトリックは、mablのリンククローラーによって検知された、このパスに直接リンクするページの数を取得します。ページがアプリケーション内の深い場所にあるほど、この値は小さくなります。リンククローラーを最近実行していない場合、このセクションは空欄になる可能性があります。
Depth
このメトリックは、リンククローラーによって記録された、特定のパスにアクセスするために必要なクリックの回数を取得します (初期値は0)。たとえば、アプリケーションのホームページの深さ (Depth) が0の場合、ログインページの深さはおそらく1です。リンククローラーを最近実行していない場合、このセクションは空欄になる可能性があります。
Daily Users
このメトリックは、アプリケーションに含まれるSegmentデータから取得したデータを使用して、特定のページにアクセスした1日あたりの一意ユーザー数の平均を取得します。
Segment統合
この統合の設定については、このリンクを参照してください。ご質問がある場合は、アプリケーション内のチャットまたはメールでお気軽にお問い合わせください。
mablをSegmentと統合すると、mablは実際のユーザーデータを使用して、PageメソッドとTrackメソッドでアプリケーション内にページモデルをセキュアに構築し、各ページを操作した一意ユーザーの数を特定します。mablは、Segment統合の一環として個人識別情報 (PII) の処理は行いません。
カバレッジでの共通ページの識別
ページカバレッジのレポートは、アプリケーションの共通ページに関するものです。mablでは、「URLクラスタリング」という手法を使用してページの動的URLがグループ化されるため、mablによるアプリケーションのテスト方法について、より正確で読みやすいカバレッジデータが得られます。
URLクラスタリングとは
多くのWebアプリケーションには、ランダムなIDが含まれる動的URLと、非常に似通ったページを表す多数の個別URLのグループがあります。つまり、数千の個別URLを持つものの、各URLに表示されるコンテンツにはわずかな違いしかない場合があります。mablは特定のワークスペースに含まれる個別URLを分析し、同じタイプのページのバリエーションと思われるURLを組み合わせます。
URLクラスタリングの仕組み
以下に示すmablのURLの例を見てください。ワークスペースごとにURLがあるため、URLは次の形式で表示されます。
app.mabl.com/workspaces/83hd632h9a-w/insights
app.mabl.com/workspaces/uvg9eh2n56-w/insights
dev.mabl.com/workspaces/qn243lf97h-w/insights
qa.mabl.com/workspaces/bv82bfnv75-w/insights
preview-env-445.mabl.com/workspaces/cd64lhaj32-w/insights
このグループのURLはすべて別々のインサイトを表示しますが、同じページテンプレートを共有しています。mablはこれらのようなURLを1つのグループにクラスタリングし、アプリケーションの1ページとして表します。クラスターの形式は次のとおりです。別々のドメインでも、同じパスで表されます。
/workspaces/*/insights
グループ化された個別URLのバリエーションは、バリエーションが発生する場所でワイルドカード (*) として表されます。別の一般的な例を示します。
/store/women/pants/pants-variation-1
/store/women/pants/pants-variation-2
...
/store/women/pants/pants-variation-2048
これらのURLを組み合わせると、次のクラスターになります。
/store/women/pants/*
特別なURLは、固有のクラスターに属しています。たとえば、mablアプリケーションのログインページは、それ自体がクラスターです。このページは1つしかなく、すべてのユーザーに共通であるためです。
/login
カバレッジのメトリックに対するURLクラスタリングの影響
カバレッジのメトリックとチャートは、テストスイートがアプリケーションをいかに適切にテストしているかを明確に表示します。Segment統合と多くの動的URLを持つお客様については特にそうです。mablは、個別URLではなく、共通ページの数に基づいて、総ページ数とカバーされたページ数を取得します。これは、カバレッジページのチャート、カバレッジページのテーブル、ダッシュボードのページカバレッジ項目に反映されます。
総ページ数が少なくなれば、カバレッジページのテーブルのスクロールがしやすくなり、アプリケーション内で手順の追加を必要とするページを識別しやすくなります。
URLクラスターの計算頻度
URLクラスターは、カバレッジページのメトリックと同じ頻度で更新されます。
一般的なユースケース
トラフィックが多く、ページカバレッジが不足しているページを確認する方法
デフォルトでは、カバレッジページ上の結果は、複雑さ (Complexity) の降順に並べ替えられます。Segmentを統合した場合、[Daily Users] を2回クリックすると、カバレッジは1日の平均ユーザー数の降順に並べ替えられます。データが読み込まれると、以下のボックスに示すように、[Tests]、[Steps]、[Assertions] の各列で、包括的カバレッジが不足しているページを簡単に識別できます。

[Daily Users] 列の場所と、カバレッジが不足している2つのページ。
特定の環境で既存のカバレッジを最も多く持つページを確認する方法
デフォルトでは、複数の環境 (例: app.myapp.comとdev.myapp.com) のカバレッジデータに対する集計は行われません。まず、表示する環境のURLホストを入力し、テーブルにデータが表示されるまで待ってください。次に、[Tests]、[Steps]、または [Assertions] をクリックして、各カバレッジタイプを最も多く持つテストを表示します。この方法は、多くのテストからアクセスされているものの操作するステップが不足しているページを識別したり、そのページ自体を検証するアサーションを識別したりするのにも便利です。

[URL host] フィールドの場所。この環境にはカバレッジがあまりないことがわかる。
アプリケーション内で頻繁にリンクされるページから既存のページカバレッジを見つける方法
この情報を見つけるには、カバレッジを [Linked To] の降順に並べ替える必要があります。すべてのページは、アプリケーションの他の部分からのリンク回数 (リンククローラーで検出) の順に並べ替えられます。これにより、どのページが最も頻繁にリンクされ、どの部分でカバレッジが不足しているかが判明します。さらに、ページにアクセスしているユーザーの平均数もわかります。

カバレッジページの [Linked To] タブの場所
エクスペリエンスのカスタマイズ
除外
ページカバレッジの確認に使用されるページは、テストの実行、リンククローラー、Segment統合によって検出されます。これらのソースはアプリケーションの全般的なスナップショットを提供しますが、これらのページがすべてチームに関係するとは限りません。表示が不要なURLパスを定義することにより、カバレッジレポートからページを除外できます。

パスのリストの編集に使用するカバレッジ除外モーダル。
カバレッジレポートから除外するパスのリストを編集するには、カバレッジページの右上にある [exclusions] ボタンをクリックします。無視するパスをモーダルに入力すると、最大12時間後に変更が反映されます。
除外の例
Path | Examples | |
---|---|---|
除外はすべてのホストに適用されます | /workspaces | Does exclude:https://app.mabl.com/workspaces https://app-fake.mabl.com/workspaces |
除外には、1つの任意のディレクトリに一致するワイルドカードも指定できます | /workspaces/*/settings | Does exclude:https://app.mabl.com/workspaces/abc/settings https://app.mabl.com/workspaces/xyz/settings Does not exclude: https://app.mabl.com/workspaces/abc/configure https://app.mabl.com/workspaces/xyz/123/settings |
除外には、サブディレクトリも含まれます | /workspaces | Does exclude:https://app.mabl.com/workspaces https://app.mabl.com/workspaces/xyz/settings Does not exclude: https://app.mabl.com/workspaces-preview https://app.mabl.com/preview/workspaces |
Updated about 2 months ago