TFS 2013将测试用例关联自动化链接到xUnit测试

时间:2014-12-09 14:58:26

标签: testing nunit tfs2013 xunit

我想知道是否可以将TFS 2013中的测试用例链接到xUnit测试。目前它适用于msTest测试,但是一旦我将方法属性从'TestMethod'更改为'Fact'并且重建测试,当我单击测试用例中的Associated Automation将两者连接在一起时,不再出现测试。

有没有人有这方面的经验或答案?

由于

1 个答案:

答案 0 :(得分:0)

可以使用TFS API。此PowerShell脚本向您展示了如何执行此操作(请参阅:https://blogs.msdn.microsoft.com/gautamg/2012/01/01/how-to-associate-automation-programmatically/以供参考)。

# Get TC
$tfsTpc = [Microsoft.TeamFoundation.Client.TfsTeamProjectCollectionFactory]::GetTeamProjectCollection($TPC_URL)
$tms = $tfsTpc.GetService([Microsoft.TeamFoundation.TestManagement.Client.ITestManagementService])
$tp = $tms.GetTeamProject($TP_NAME)
$tc = $tp.TestCases.Find($tcId)
# Compute Automation Guid
$sha1Crypto = new-object System.Security.Cryptography.SHA1CryptoServiceProvider
[Byte[]] $bytes = New-Object Byte[] 16
[Array]::Copy($sha1Crypto.ComputeHash([System.Text.Encoding]::Unicode.GetBytes($testName)), $bytes, $bytes.Length)
# Create association
$tc.Implementation = $tp.CreateTmiTestImplementation($testName, $AUTOMATION_TYPE, $AUTOMATION_STORAGE_NAME, $automationGuid)
$tc.Save()
$automationGuid = New-Object -TypeName Guid -ArgumentList @(,$bytes)

但是你无法将执行与TFS中的测试用例相关联。

必须使用MSTest V1运行测试,以将结果记录为有效的TRX,以通过TCM.exe在TFS中发布。即使使用vstest.console.exe和TRX记录器选项,TCM.exe也无法理解xml结果。

参考:http://bugsareinthegaps.com/uploading-automated-test-results-to-mtm-made-easy/