次の方法で共有


テスト サンプル レポートの合格率の傾向

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2020

合格率傾向レポートは、パイプラインの実行中に特定のテストが実行されるまでにかかる平均時間に関する分析情報を提供します。

次の図に例を示します。

合格率傾向レポートのスクリーンショット。

重要

Power BI の統合と Analytics サービスの OData フィードへのアクセスは、Azure DevOps Services および Azure DevOps Server 2020 以降のバージョンで一般提供されています。 この記事で提供されるサンプル クエリは、Azure DevOps Server 2020 以降のバージョンに対してのみ有効であり、v3.0-preview 以降のバージョンによって異なります。 これらのクエリを使用し、フィードバックをお寄せください。

前提条件

  • 分析データを表示してサービスにクエリを実行するには、 Basic アクセス以上のプロジェクトのメンバーである必要があります。 既定では、すべてのプロジェクト メンバーには、Analytics のクエリと 分析ビューの定義に対するアクセス許可が付与されます。
  • サービスと機能の有効化と一般的なデータ追跡アクティビティに関するその他の前提条件については、「 Analytics にアクセスするためのアクセス許可と前提条件」を参照してください。

Note

この記事では、「 OData クエリを使用したサンプル レポートの概要」を 読み、Power BI の基本的な理解があることを前提としています。

サンプル クエリ

Note

この記事では、「 OData クエリを使用したサンプル レポートの概要」を 読み、Power BI の基本的な理解があることを前提としています。

以下に示す Power BI クエリは、[ データの取得- 空の>クエリ ] ウィンドウに直接貼り付けることができます。 詳細については、「 OData クエリを使用したサンプル レポートの概要」を参照してください。

let
   Source = OData.Feed ("https://analytics.dev.azure.com/{organization}/{project}/_odata/v4.0-preview/TestResultsDaily?
$apply=filter("
                &"Pipeline/PipelineName eq '{pipelineName}' "
                &"And Date/Date ge {startdate} "
        &"And Test/TestName eq '{testName}' "
        &"And Workflow eq 'Build') "
            &"/groupby((Date/Date), "
                &"aggregate( "
                &"ResultCount with sum as TotalCount, "
            &"ResultPassCount with sum as ResultPassCount, "
                &"ResultFailCount with sum as ResultFailCount, "
            &"ResultAbortedCount with sum as ResultAbortedCount, "
        &"ResultErrorCount with sum as ResultErrorCount, "
    &"ResultInconclusiveCount with sum as ResultInconclusiveCount, "
    &"ResultNotExecutedCount with sum as ResultNotExecutedCount, "
    &"ResultNotImpactedCount with sum as ResultNotImpactedCount)) "
    &"/filter(ResultFailCount gt 0) "
    &"/compute( "
    &"iif(TotalCount gt ResultNotExecutedCount, ((ResultPassCount add ResultNotImpactedCount) div cast(TotalCount sub ResultNotExecutedCount, Edm.Decimal)) mul 100, 0) as PassRate) "
    ,null, [Implementation="2.0",OmitValues = ODataOmitValues.Nulls,ODataVersion = 4]) 
in
    Source

置換文字列とクエリの内訳

次の文字列を実際の値に置き換えます。 置換に角かっこを {} 含めないでください。 たとえば、組織名が "Fabrikam" の場合は、 ではなく {Fabrikam}を にFabrikam置き換えます{organization}

 

  • {organization} - 組織名
  • {project} - チーム プロジェクト名
  • {pipelinename} - パイプライン名。 例: Fabrikam hourly build pipeline
  • {testName} - テスト名
  • {startdate} - レポートを開始する日付。 形式: YYYY-MM-DDZ。 例: 2021-09-01Z 2021 年 9 月 1 日を表します。 引用符または角かっこで囲んで、月と日付の両方に 2 桁の数字を使用しないでください。

クエリの内訳

次の表では、クエリの各部分について説明します。

クエリ パーツ

説明


$apply=filter(

Start filter() 句。

Pipeline/PipelineName eq '{pipelineName}'

指定したパイプラインのテスト実行を返す

And Date/Date ge {startdate}

指定した日付以降にテストが実行されます。

And Test/TestName eq '{testName}'

指定したテスト名に対してのみテストの実行を返します。

and Workflow eq 'Build'

ワークフローのテスト実行を Build 返します。

)

Close filter() 句。

/groupby(

Start groupby() 句。

(Date/Date),

テスト実行の完了日でグループ化します。

aggregate(

フィルター条件に一致するさまざまなテスト実行結果を合計する Start aggregate 句。

ResultCount with sum as TotalCount,

テスト実行の合計数を次のように TotalCountカウントします。

ResultPassCount with sum as ResultPassCount,

成功したテスト実行の合計数を次のように ResultPassCountカウントします。

ResultFailCount with sum as ResultFailCount,

失敗したテスト実行の合計数を次のように ResultFailCountカウントします。

ResultAbortedCount with sum as ResultAbortedCount,

中止されたテスト実行の合計数を次のように ResultAbortedCountカウントします。

ResultErrorCount with sum as ResultErrorCount,

エラー ResultErrorCountが発生したとマークされたテスト実行の合計数をカウントします。

ResultNotExecutedCount with sum as ResultNotExecutedCount,

未実行のテスト実行の合計数を次のように ResultNotExecutedCountカウントします。

ResultNotImpactedCount with sum as ResultNotImpactedCount

影響を受けなかったテスト実行の合計数を次のように ResultNotImpactedCountカウントします。

))

groupby()閉じてaggregate()句を指定します。

/compute(

Start compute() 句。

iif(TotalCount gt ResultNotExecutedCount, ((ResultPassCount add ResultNotImpactedCount) div cast(TotalCount sub ResultNotExecutedCount, Edm.Decimal)) mul 100, 0) as PassRate)

すべての日について、 PassRate .

)

Close compute() 句。

(省略可能)クエリの名前を変更する

既定のクエリ ラベル Query1 の名前を、より意味のある名前に変更できます。 [ クエリ設定] ペインから新しい名前を入力するだけです。

Power BI クエリ メニュー オプションのスクリーンショット。クエリの名前を変更します。

Power BI の [日付] 列を展開する

列を Date 展開して、展開されたエンティティを表示します CompletedOn.Date。 列を展開すると、レコードが特定のフィールドにフラット化されます。 方法については、「Analytics データを変換して Power BI レポートを生成する」の「列を展開する」を参照してください

列のデータ型を変更する

  1. Power Query エディターから列をTotalCount選択し、[変換] メニューから [データ型] を選択し、[整数] を選択します。

  2. 列をPassRate選択し、[変換] メニューから [データ型] を選択し、[10 進数] を選択します。

データ型の変更の詳細については、「 Analytics データを変換して Power BI レポートを生成する」の「列データ型の変換」を参照してください

クエリを閉じて変更を適用する

すべてのデータ変換が完了したら、[ホーム] メニューから [閉じる] & [適用] を選択してクエリを保存し、Power BI の [レポート] タブに戻ります。

[閉じて適用] オプションPower Query エディタースクリーンショット。

折れ線グラフと積み上げ縦棒グラフ レポートを作成する

  1. Power BI の [視覚化]、折れ線グラフと積み上げ縦棒グラフを選択し、フィールドをグラフ領域にドラッグ アンド ドロップします。

    成功率傾向期間テーブル レポートの視覚化フィールドの選択のスクリーンショット。

  2. X 軸に追加Date.Date、フィールドを右クリックし、日付階層ではなく Date.Date を選択します。

  3. 列の y 軸を追加ResultPassCountおよびResultFailCount追加します

  4. 線 y 軸に追加PassRateします

レポートは次の図のようになります。

成功率の傾向レポートのサンプルのスクリーンショット。

タスク リソースのテスト