CruiseControl.Net Web Dashboard не отображает результаты - PullRequest
4 голосов
/ 07 января 2011

Проблемы с отображением результатов в веб-панели CruiseControl.net.

Я создал файл конфигурации, который запускает сборку проекта.Затем он запускает nunit над моими тестами, они выполняются и заканчиваются очень хорошо (я могу открыть журнал и посмотреть результаты там).Журналы ccnet показывают, что файлы журналов были успешно объединены.Однако, как ни старайся, я не могу заставить его появиться на веб-панели.Это просто выдает разочаровывающее сообщение:

BUILD FAILED
Project:    GroundControlTests
Date of build:  2011-01-07 17:16:36
Running time:   00:00:58
Integration Request:    mmayo triggered a build (ForceBuild) from PC0098
Projects built with no warnings at all :-)
Modifications since last build (0)

, несмотря на ошибку.

Я подозреваю, что это как-то связано с преобразованиями xsl, но перепробовал практически все, что я могу придумать.1010 *

Конечно, если я нажму Просмотр журнала сборки, он отобразится, но основной отчет не показывает пропуски и сбои: (

Мои конфигурационные файлы ниже, любые предложения приветствуются!

--- nant.build ---

<project name="GroundControl" default="cleanNunit" basedir=".">
  <description>Cleanup tasks</description>
  <target name="cleanNunit"
         description="removes nunit log file">
    <delete file="${CCNetArtifactDirectory}\nunit-results.xml"
          failonerror="true" />
  </target>
</project>

----- ccnet.config -------

<cruisecontrol xmlns:cb="urn:ccnet.config.builder">

    <project name="GroundControlTests">
      <workingDirectory>C:\Source\Wholesale\Code.EventControl.TestingFramework\GroundControlReboot</workingDirectory>
      <artifactDirectory>C:\Source\Wholesale\Code.EventControl.TestingFramework\GroundControlReboot</artifactDirectory>
    <prebuild>
      <nant>
        <executable>C:\Nant\bin\nant.exe
        </executable>
        <baseDirectory>C:\Source\Wholesale\Code.EventControl.TestingFramework\GroundControlReboot</baseDirectory>
        <nologo>false</nologo>
        <buildFile>nant.build</buildFile>
        <targetList>
          <target>cleanNunit</target>
        </targetList>
      </nant>
    </prebuild>

    <tasks>
        <msbuild>
            <executable>C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe
            </executable>
            <workingDirectory>C:\Source\Wholesale\Code.EventControl.TestingFramework\GroundControlReboot
            </workingDirectory>
        <projectFile>GroundControlReboot.sln</projectFile >
            <buildArgs>/noconsolelogger 
            /v:quiet 
            /noconlog 
            /p:Configuration=Debug
            /p:ReferencePath="C:\Program Files\NUnit 2.5.9\bin;C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0"
            /p:AdditionalReferencePath="C:\Program Files\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0"
            </buildArgs>
            <targets>ReBuild</targets >
            <timeout>180</timeout >
<!--            <logger>C:\Program Files\CruiseControl.NET\server\Rodemeyer.MsBuildToCCNet.dll</logger>-->

        </msbuild>
        <exec>
            <executable>C:\Program Files\NUnit 2.5.9\bin\net-2.0\nunit-console.exe
            </executable >
            <buildArgs>/xml:C:\Source\Wholesale\Code.EventControl.TestingFramework\GroundControlReboot\nunit-results.xml
        C:\Source\Wholesale\Code.EventControl.TestingFramework\GroundControlReboot\GroundControlReboot\bin\Debug\GroundControlReboot.dll
      </buildArgs>
      <buildTimeoutSeconds>180</buildTimeoutSeconds>
        </exec>
    </tasks>
    <publishers>
      <merge>
        <files>
          <file>
        C:\Source\Wholesale\Code.EventControl.TestingFramework\GroundControlReboot\*-results.xml
      </file>
        </files>
      </merge>
      <xmllogger />
      <statistics />
      <artifactcleanup cleanUpMethod="KeepLastXBuilds"
        cleanUpValue="20" />
    </publishers>

    </project>
</cruisecontrol>

----- dashboard.config -------

<?xml version="1.0" encoding="utf-8"?>
<dashboard>
  <remoteServices>
    <servers>
      <server name="local" url="tcp://localhost:21234/CruiseManager.rem" allowForceBuild="true" allowStartStopBuild="true" backwardsCompatible="false" />
    </servers>
  </remoteServices>
  <plugins>
    <farmPlugins>
      <farmReportFarmPlugin />
      <cctrayDownloadPlugin />
      <administrationPlugin password="" />
    </farmPlugins>
    <serverPlugins>
      <serverReportServerPlugin />
    </serverPlugins>
    <projectPlugins>
      <projectReportProjectPlugin />
      <viewProjectStatusPlugin />
      <latestBuildReportProjectPlugin />
      <viewAllBuildsProjectPlugin />
    </projectPlugins>
    <buildPlugins>
      <buildReportBuildPlugin>
        <xslFileNames>
        <xslFile>xsl\header.xsl</xslFile>
        <xslFile>xsl\msbuild2ccnet.xsl</xslFile>
        <xslFile>xsl\modifications.xsl</xslFile>
        <xslFile>xsl\nant.xsl</xslFile>     
        <xslFile>xsl\tests.xsl</xslFile>
        </xslFileNames>
      </buildReportBuildPlugin>
      <buildLogBuildPlugin />
    </buildPlugins>
    <securityPlugins>
      <simpleSecurity />
    </securityPlugins>
  </plugins>
</dashboard>

1 Ответ

9 голосов
/ 07 января 2011

Когда я развернул пакет nunit из панели администратора, он сгенерировал три вещи:

В buildReportBuildPlugin добавлено xsl \ unittests.xsl. Это для сводной страницы сборки. Он также сгенерировал два элемента для боковой панели, чтобы увидеть подробности nunit (xsl \ tests.xsl) и тайминги nunit (xsl \ timings.xsl). Похоже, у вас есть файл xunl деталей nunit, определенный для страницы сводки по сборке, из-за чего вы ничего не видите. Если вместо этого вы используете xsl \ unittests.xsl (и перезагрузите панель мониторинга, чтобы она действительно прочитала обновленный файл), это может сработать. Другой вариант - просто развернуть пакет nunit со страницы администрирования веб-панели мониторинга, которая обновит файл dashboard.config для вас.

<buildPlugins>
  <buildReportBuildPlugin>
    <xslFileNames>
      <xslFile>xsl\header.xsl</xslFile>
      <xslFile>xsl\modifications.xsl</xslFile>
      <xslFile>xsl\unittests.xsl</xslFile>
    </xslFileNames>
  </buildReportBuildPlugin>
  <buildLogBuildPlugin />
  <xslReportBuildPlugin description="NAnt Output" actionName="NAntOutputBuildReport" xslFileName="xsl\NAnt.xsl"></xslReportBuildPlugin>
  <xslReportBuildPlugin description="NAnt Timings" actionName="NAntTimingsBuildReport" xslFileName="xsl\NAntTiming.xsl"></xslReportBuildPlugin>
  <xslReportBuildPlugin description="NUnit Details" actionName="NUnitDetailsBuildReport" xslFileName="xsl\tests.xsl"></xslReportBuildPlugin>
  <xslReportBuildPlugin description="NUnit Timings" actionName="NUnitTimingsBuildReport" xslFileName="xsl\timing.xsl"></xslReportBuildPlugin>
</buildPlugins>
...