2012-02-09 2 views
1

TFS2010에서 팀 빌드를 실행할 때 unittest에 걸리는 시간을 '캡처'하거나 지속 할 수 있습니다. 로드 테스트가 결과 저장소에 저장할 수있는 것처럼 데이터베이스에 저장하는 것이 이상적입니다.TFS2010 - 팀 빌드에서 unittest 실행 시간을

미리 감사드립니다.

답변

1

빌드하는 동안 Visual Studio 유닛 테스트를 실행하는 경우 테스트 결과를 서버에 게시하도록 선택한 다음 나중에 테스트 실행 및 결과를 쿼리하여 각 테스트 결과의 지속 시간을 확인할 수 있습니다. 빌드 별 테스트 결과를 조회 할 수

코드는 다음과 같습니다

 var tcmService = TeamProjectCollection.GetService<ITestManagementService>(); 
     var tcmProject = tcmService.GetTeamProject(TeamProjectName); 
     ITestRun testRun = tcmProject.TestRuns.ByBuild(BuildUri).First(); 
     ITestCaseResultCollection results = testRun.QueryResults(); 
     foreach (ITestResult result in results) { Console.WriteLine(result.Duration); } 

당신은 팀 프로젝트 이름과 빌드 URI를, 팀 프로젝트 컬렉션을 얻을 알아야합니다. 이 코드에서는 빌드가 완료된 후에 동일한 빌드에 다른 테스트를 게시 할 수 있기 때문에 빌드에 게시 된 테스트 실행이 하나만 있다고 가정합니다.

희망이 도움이됩니다.

+0

우수! 나는 이것을 시도 할 것이다 – jaspernygaard

+0

질문을 후속 - 팀 빌드와 관련하여 MSBuild에서 수동으로 mstest를 호출해야합니까, 아니면 다른 방법으로 설정할 수 있습니까? – jaspernygaard

+0

Sicne TFS 2010을 사용하고 있습니다. 이미 RunTests라는 액티비티가 있습니다.이 액티비티는 바이너리에서 테스트 어셈블리를 찾아서 테스트를 실행합니다. 기본적으로 실행 테스트는 빌드 정의에 사용됩니다. –

관련 문제