我正在执行大量包含测试的固定装置。每个测试中都有代码,用于根据NUnit属性将所有错误记录到文件中。执行完成后,该文件将以一种很好的格式包含所有错误,以发送给顾问。
首先,我需要一个钩子来删除文件的先前副本,以便可以重新生成文件。如果这是在单个固定装置中进行的一系列测试,那将是一记破片-将其放入固定装置中。但是我需要这几十个测试夹具来共享一个通用文件,因此将其放入夹具设置中是行不通的。
其次,这一切就像重新发明轮子一样……如果有一些很棒的NUnit标准可以将结果分流到备用输出,我很想听听。
TIA。
最简单的方法是将套件生成的许多NUnit文件合并到一个文件中。此答案链接到创建为将合并作为MSBuild任务进行操作的库。
第一步是编译该库(尝试时对我来说没有问题),然后将生成的程序集放在具有以下MSBuild项目(或类似内容)的目录中:
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
ToolsVersion="4.0"
DefaultTargets="UnitTest">
<UsingTask AssemblyFile="$(MSBuildProjectDirectory)\15below.NUnitMerger.dll"
TaskName="FifteenBelow.NUnitMerger.MSBuild.NUnitMergeTask" />
<Target Name="UnitTest">
<ItemGroup>
<ResultsFiles Include="$(MSBuildProjectDirectory)\nunit-result*.xml" />
</ItemGroup>
<NUnitMergeTask FilesToBeMerged="@(ResultsFiles)"
OutputPath="$(MSBuildProjectDirectory)\TestResult.xml" />
</Target>
</Project>
在这里,我假设您的文件设置在同一目录中,即:
将NUnit结果放入目录后,从该目录运行MSBuild以获取输出:
msbuild merge.msbuildproj
生成的文件(此处为TestResult.xml
)具有与NUnit正常的Xml输出相同的格式,但具有test-suite type=Assembly
输入文件中的所有节点。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句