在VisualStudio安装中找到vstst.xsd文件,使用xsd.exe生成.cs文件:
xsd.exe/classes vstst.xsd
生成的vstst.cs文件包含定义trx文件中每个字段/元素的所有类.
您可以使用此链接来学习trx文件中的某些字段:http://blogs.msdn.com/b/dhopton/archive/2008/06/12/helpful-internals-of-trx-and-vsmdi-files. ASPX
您还可以使用从mstest运行生成的现有trx文件来学习该字段.
使用vstst.cs和您对trx文件的了解,您可以编写如下代码来生成trx文件.
TestRunType testRun = new TestRunType();
ResultsType results = new ResultsType();
List<UnitTestResultType> unitResults = new List<UnitTestResultType>();
var unitTestResult = new UnitTestResultType();
unitTestResult.outcome = "passed";
unitResults.Add( unitTestResult );
unitTestResult = new UnitTestResultType();
unitTestResult.outcome = "failed";
unitResults.Add( unitTestResult );
results.Items = unitResults.ToArray();
results.ItemsElementName = new ItemsChoiceType3[2];
results.ItemsElementName[0] = ItemsChoiceType3.UnitTestResult;
results.ItemsElementName[1] = ItemsChoiceType3.UnitTestResult;
List<ResultsType> resultsList = new List<ResultsType>();
resultsList.Add( results );
testRun.Items = resultsList.ToArray();
XmlSerializer x = new XmlSerializer( testRun.GetType() );
x.Serialize( Console.Out, testRun );
Run Code Online (Sandbox Code Playgroud)
请注意,由于"Items"字段上的某些继承问题(例如GenericTestType和PlainTextManualTestType(均来自BaseTestType)),您可能会收到InvalidOperationException.应该通过谷歌搜索解决方案.基本上将所有"Items"定义放入BaseTestType中.这是链接:抛出异常的TestRunType的序列化
要使trx文件能够在VS中打开,您需要输入一些字段,包括TestLists,TestEntries,TestDefinitions和results.你需要链接一些guid.通过查看现有的trx文件,不难发现.
祝好运!
| 归档时间: |
|
| 查看次数: |
2819 次 |
| 最近记录: |