Tôi có Kiểm soát hành trình được cấu hình với một nhiệm vụ để chạy tập lệnh NAnt, chạy bộ MSTest. MSTest cho phép tôi chỉ định các loại thử nghiệm vì vậy tôi muốn chỉ định "! Tích hợp" (có nghĩa là "không chạy các kiểm thử tích hợp"). Kịch bản của My Nant chạy thành công khi tôi chạy nó từ dòng lệnh, nhưng khi Cruise chạy nó, chỉ thị "Tích hợp" đang bị cắt xén - đầu ra của Cruise gợi ý rằng nó sẽ bị ngắt dòng sau '!' tính cách. Kết quả là tất cả chạy thử nghiệm của tôi, bao gồm kiểm tra tích hợp.Kiểm soát hành trình phân tích cú pháp "!" ký tự trong tập tin NAnt
Extract từ 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>
Extract từ 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>
Extract từ đầu ra Cruise: '!'
[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'
Tôi đã cố gắng thay thế ký tự có
'!'
nhưng không có sự khác biệt.
Bất kỳ ý tưởng nào, bất kỳ ai?