実行フォルダにおけるすべての失敗したテスト

問題

通常、すべての実行計画はフォルダ階層に構造化されています。各フォルダは実行計画やそのテストが関連するさまざまな分野や目的によって分類されます。複数の実行計画が継続的な統合環境で定期的に実行されたり、ときにはリリース期間に実行され、洗練された実行統計情報を得ることができますが、残念ながら単一の実行計画毎の情報になります。

しかし、特定の分野や目的に応じて実行したすべてのテストがどのような点で脆弱かを知るために全体的な情報が必要になる場合があります。

解決策

データマート ビュー RV_LatestTestStatus を使用して、特定の実行計画の階層レベルに対してすべての失敗したテストのリストを返すレポートを作成します。

以下のクエリは、実行計画フォルダ内のテストを選択し、実行計画名とビルド名などのコンテキスト情報を取得します。

SELECT TestID, TestName, ExecutionPlanID, ExecutionPlanName, BuildName
FROM RV_LatestTestStatus lts
INNER JOIN TM_ExecTreePaths ON lts.ExecutionPlanID = TM_ExecTreePaths.NodeID_pk_fk
WHERE TM_ExecTreePaths.ParentNodeID_pk_fk = ${executionFolderID|2179|Execution Folder ID}
  AND StatusID = 2
ORDER BY TestName
クエリは次の動作を行います。
  • ビュー RV_LatestTestStatus を使用して最新のテスト実行の結果を取得します。
  • 階層内のすべての実行計画からすべてのテストをクエリできるようにするために、実行ツリー階層 (TM_ExecTreePaths) を含めます。
  • トップ レベルのフォルダ ID を使って、一致する ParentNodeID_pk_fk のノードから分析を開始します。
  • 失敗したテストだけ (StatusID = 2) を含めます。

StatusID をテーブル TM_TestDefStatusNames から検索します。

SQL クエリの結果は、選択した実行フォルダ内の最後の実行に失敗したすべてのテストになります。
TestID TestName ExecutionPlanID ExecutionPlanName BuildName
14073 JUnitTestPackage 2184 CI Testing 352
14107 Volatile Tests 2191 Volatile Test 352