2012-01-04 7 views
3

.StatusPartialSuccess.TestStatusFailedのTFSビルド詳細(IBuildDetail)が与えられた場合、ビルドに失敗したテスト(MSTest)のリストを取得するにはどうすればよいですか?TFS-SDKから失敗したユニットテストを照会していますか?

私は、SDKを介してTFSに連絡して最新のPartialSuccessビルドを取得することができますが、このユニットテストデータを持つサービスと、それをどのようにクエリするかについてはわからないようです。

誰でも光を当てることはできますか?

答えて

5

Thisの記事は素晴らしいリソースですが、実際には私が似たようなものを検索していたときに見つけた唯一のものでした。
一般にITestManagementServiceにアクセスする必要があります。
すでにteamProjectCollectionbuildDetailへの接続を持って考えると、このようなものは、あなたのために動作するはずです:

var tstService = (ITestManagementService)teamProjectCollection.GetService(typeof(ITestManagementService)); 
ITestManagementTeamProject testManagementTeamProject = tstService.GetTeamProject(buildDetail.TeamProject); 

IEnumerable<ITestRun> testRuns = testManagementTeamProject.TestRuns.ByBuild(buildDetail.Uri); 

foreach (var testRun in testRuns) 
{ 
    ITestCaseResultCollection testcases = testRun.QueryResultsByOutcome(TestOutcome.Failed); 
    foreach (var testcase in testcases) 
    { 
     Console.WriteLine("TestCase ID: " + testcase.TestCaseId); 
     Console.WriteLine("TestCase Title: " + testcase.TestCaseTitle); 
     Console.WriteLine("Error Message: " + testcase.ErrorMessage);     
    } 
} 

(このコードは、基本的には上記の記事からコピーされ、それはAnuj Chaudharyの作品です)

refリストに "Microsoft.TeamFoundation.TestManagement.Client"を追加することを忘れないでください。

+0

これ以上のアセンブリ参照を追加する必要がありましたが、これは確かに答えでした。ありがとう! – el2iot2

+0

それはあなたのために働いてうれしいよ! – pantelif

関連する問題