Tengo el control de crucero configurado con una tarea para ejecutar un script NAnt, que ejecuta un conjunto MSTest. MSTest me permite especificar categorías de prueba, por lo que deseo especificar "! Integración" (lo que significa "no ejecutar pruebas de integración"). Mi script Nant se ejecuta correctamente cuando lo ejecuto desde la línea de comandos, pero cuando Cruise lo ejecuta, la directiva "! Integration" está siendo distorsionada: la salida de Cruise sugiere que inserte un salto de línea después del '!' personaje. El resultado es que todos mis pruebas se ejecutan, incluidas las pruebas de integración.Análisis de control de crucero "!" carácter en el archivo NAnt
Extracto de ccnet.config:
<tasks>
<nant>
<executable>C:\nant\bin\nant.exe</executable>
<baseDirectory>C:\MyProject\BuildDirectory</baseDirectory>
<buildFile>MyProject.build</buildFile>
<targetList>
<target>CIServerBuild</target>
</targetList>
</nant>
</tasks>
Extracto de MyProject.build:
<target name="CIServerBuild">
:
<call target="RunUnitTests" />
</target>
<target name="RunUnitTests">
<property name="TestCategories" value="!Integration" />
<call target="RunMSTest" failonerror="true"/>
</target>
<target name="RunMSTest">
<call target="BuildListOfTestContainers" failonerror="true"/>
<exec program="${MSTest.exe}"
commandline=" /category:"${TestCategories}" ${TestContainers} /resultsfile:${MSTest.ResultsFile} /nologo "
/>
</target>
Extracto de salida de cruceros: '!'
[exec] Starting 'C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\MSTest.exe (/category:"!
Integration" /testcontainer:C:\TaxWise\BuildDirectory\TaxWise\TaxWise.Data.Tests\bin\Debug\TaxWise.Data.Tests.dll /testcontainer:C:\TaxWise\BuildDirectory\TaxWise\TaxWise.Domain.Tests\bin\Debug\TaxWise.Domain.Tests.dll /testcontainer:C:\TaxWise\BuildDirectory\TaxWise\TaxWise.Infrastructure.Tests\bin\Debug\TaxWise.Infrastructure.Tests.dll /resultsfile:.\TestResults\UnitTests.trx /nologo)'
in 'C:\TaxWise\BuildDirectory'
He intentado sustituir el personaje con
'!'
pero eso no hizo la diferencia.
¿Alguna idea, alguien?