1

我是巡航控制的新手。我正在运行一个项目,我在其中使用 MSBuild 文件来构建我的项目。我正在使用 MSBuild 社区任务项目中的 NUIt 任务来运行我的所有单元测试,并使用以下命令输出带有测试结果的 xml 文件:

 <NUnit Assemblies="@(OutputFiles)" WorkingDirectory="$(UnitTestResultsLocation)"
      OutputXmlFile="$(UnitTestResultsLocation)\$(ProjectNameSpace).UnitTests.xml"
        ToolPath="$(NUnitToolPath)"
       ContinueOnError="true" />

这很好用。现在,我试图通过使用以下命令进行文件合并,使这些结果显示在 Cruise Control 网络仪表板中:

  <publishers>
    <merge>
      <file>C:\CC\Project1\Code\UnitTestResults\Project1TestResults.UnitTests.xml</file>
    </merge>
  </publishers>

当我这样做时,构建仍然完成,但我在 Cruise Control 控制台中得到一个异常,该异常也显示在日志中:

2009-09-03 13:44:57,310 [Project1:DEBUG] Exception: System.Xml.XmlException: Name cannot begin with the '.' character, hexadecimal value 0x2E. Line 837, position 36.

我要解决这个问题了吗?如何将我的 NUnit 测试结果输入 Cruise Control 仪表板?

4

2 回答 2

1

尝试

    <merge>
        <files>
            <string>C:\CC\Project1\Code\UnitTestResults\Project1TestResults.UnitTests.xml</string>
        </files>
    </merge>
于 2009-09-04T05:15:41.177 回答
0

以下对我有用,虽然我使用 NAnt 来触发 NUnit,而不是 MSBuild:

    <publishers>
        <merge>
            <files>
                <file>C:\Projects\SomeApp\CI\TestResult.xml</file>
            </files>
        </merge>
        <xmllogger />
    </publishers>
于 2011-04-11T18:51:11.927 回答