私たちはTFSをかなり新しくしており、一部の領域をクリーンアップしようとしています。シンプルなTFSクエリで、 "New suite"という名前の180以上のテストスイートがあることがわかります...それぞれを開き、それに割り当てられているテストケースがあるかどうかを見たいと思っていません。空のテストプランまたは空のテストスイートを特定するためのTFSクエリまたはSQLクエリ
Empty Test Suitesのレポートを入手する方法はありますか?Empty Test Plans?
パット
私たちはTFSをかなり新しくしており、一部の領域をクリーンアップしようとしています。シンプルなTFSクエリで、 "New suite"という名前の180以上のテストスイートがあることがわかります...それぞれを開き、それに割り当てられているテストケースがあるかどうかを見たいと思っていません。空のテストプランまたは空のテストスイートを特定するためのTFSクエリまたはSQLクエリ
Empty Test Suitesのレポートを入手する方法はありますか?Empty Test Plans?
パット
あなたはテストスイートのリストを取得するためにREST APIを使用することができます
おかげで、「testCaseCountは、」応答に含まれます。たとえば以下を参照してください。
GET https://fabrikam-fiber-inc.visualstudio.com/DefaultCollection/fabrikam-fiber-tfvc/_apis/test/plans/1/suites?api-version=1.0
詳細についてはまた、あなたはまた、サンプル下記参照、SQL ServerのSQLクエリを実行して、空のテストスイートやテスト計画を得ることができますhttps://www.visualstudio.com/en-us/docs/integrate/api/test/suites
を参照してください。
SELECT
[SuiteId]
,[PlanId]
,[ParentSuiteId]
,[Title]
,[TestCaseCountFromMtm]
,[TestCaseCountFromWeb]
FROM [Tfs_CollectionLC].[dbo].[tbl_Suite]
WHERE [TestCaseCountFromMtm]='0' and [TestCaseCountFromWeb]='0'
更新:
あなたは計画と親スイート名を取得したい場合は、上記のクエリで「タイトル」の欄には含めて、すべてのスイートの名前が表示されます親スイート名。 Plan nameを取得するための正確なテーブルは見つかりませんでしたが、REST APIで取得できます。次に示すサンプルPowerShellスクリプトを使用して、すべてのテスト計画名を取得できます。スクリプトをコピーして貼り付け、クライアント上で実行するには.ps1ファイルとして保存してください。
$project = "TFVC-Scrum" # Change to your team project name here
$baseUrl = "http://12r2:8080/tfs/CollectionLC" # Change to your TFS Collection URL
$testplanUrl = "{0}/{1}/_apis/test/plans?api-version=1.0" -f $baseUrl, $project
$TestPlans = (Invoke-RestMethod -Uri $testplanUrl -Method Get -UseDefaultCredential).value
$TestPlanResults = @()
foreach($TestPlan in $TestPlans){
$testplanitemUrl = "{0}/{1}/_apis/test/plans/{2}?api-version=1.0&includeDetails=true" -f $baseUrl,$project, $TestPlan.id
$TestPlanItem = Invoke-RestMethod -Uri $testplanitemUrl -Method Get -UseDefaultCredential
$customObject = new-object PSObject -property @{
"TestPlanid"= $TestPlanItem.id
"TestPlanName"= $TestPlanItem.name
}
$TestPlanResults += $customObject
}
$TestPlanResults | Select `
TestPlanid,
TestPlanName
私は、SQLのアイデアを好きですが、私はTFSのSQLサーバーやレポートサーバーに接続する必要があり、どのデータベース靴私はに添付?このような基本的な質問を申し訳ありません... パット –
@PatDelaneyはい、TFS SQL ServerマシンにSSMS(SQL Server Management Studio)を開き、SQL Serverに接続するだけで、TFS SQLサーバーに接続する必要があります。新しいクエリ> sqlクエリの上にコピーして貼り付け(コレクションデータベースに変更)>クエリを実行すると、結果が表示されます。 –
私はDBAの形式で最終的に読み取り専用アクセス許可を得ました。上のクエリを切り取って貼り付けました。また、新しいクエリーウィンドウの一番上にあるドロップダウンからアクセスしたいデータベースを選択しました。 (私はSSDTを使用しています)私が取得するクエリを実行するとき:メッセージ208、レベル16、状態1、行1何かにTFS_CollectionLCを変更する必要はありますか? オブジェクト名 'Tfs_CollectionLC.dbo.tbl_Suite'が無効です。 –