首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >通过tcm启动测试后获取测试运行ID

通过tcm启动测试后获取测试运行ID
EN

Stack Overflow用户
提问于 2012-08-06 22:18:11
回答 1查看 2K关注 0票数 0

我有一个PowerShell脚本,可以使用Microsoft test Manager的命令行界面(tcm.exe)启动自动测试运行。

然后,我还有一个与测试运行相关联的清理Powershell脚本(在.testsettings文件中),该脚本导出测试结果(tcm.exe run /export),但我的问题是我需要测试运行ID。它是从'tcm.exe run /create‘命令输出的,但它没有任何用处,因为首先,它输出为"Run created with ID: 501",其次,因为/create命令是从一个单独的PowerShell脚本运行的。

我可以使用tcm.exe run /list来获取所有测试ID的列表,但这是没有用的,因为我只需要最近一次测试运行。

有没有人有什么想法?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-08-07 16:06:26

代码语言:javascript
复制
"Microsoft Test Manager : Start automated sanity test"
$testRunID = & "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\TCM.exe" run /create /title:"Automated UI Tests" /planid:27 /suiteid:721 /configid:10 /settingsname:"UI Test Settings" /testenvironment:"MyTestEnvironment" /collection:"http://MyCollection" /teamproject:Main /builddir:"C:\MyBuildDir" /include

"Get test run ID from TCM output"
$testRunID = $testRunID.substring(21)
$testRunID = $testRunID.TrimEnd(".")

"Store test run ID in user environment variable"
[Environment]::SetEnvironmentVariable("CodedUITestRunID", "$testRunID", "User")

这是我的解决方案。我将运行/create的输出存储到$testRunID中,然后删除字符串"Run created tcm.exe ID:“的开头,然后删除字符串末尾的句号,只留下测试ID号,我使用.NET代码将其设置为环境变量(请参见here)。

稍后,我有一个计划的任务,它假定测试运行已经完成,并运行一个脚本,其中包含(除其他外)以下内容:

代码语言:javascript
复制
"Test Run ID"
$testRunID = [Environment]::GetEnvironmentVariable("CodedUITestRunID", "User")

"Microsoft Test Manager: Export test results"
& "C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\TCM.exe" run /export /id:"$testRunID" /resultsfile:"C:\ResultsPath\MyResultsfile.trx" /collection:"http://MyCollection" /teamproject:"Main"

这只是从我之前设置的环境变量中检索测试运行ID,然后运行Microsoft test Manager命令行实用程序(tcm.exe)的/export命令,输入测试运行ID。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11830110

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档