le>SolutionName.sln</projectFile> <buildArgs>/noconsolelogger /p:Configuration=AutomatedBuild /v:diag</buildArgs> <targets>Build</targets> <timeout>600</timeout> <logger>C:\Program Files\CruiseControl.NET\server\ThoughtWorks.CruiseControl.MsBuild.dll</logger> </msbuild>
Through brute force (run MSBuild, figure out what assembly it needs, go find it, lather, rinse, repeat) I was able to get a 2005 solution (with unit test projects) to compile. However actually running the tests is another story. Again brute force reigned supreme here as I trodded through an hour or two of running MSTest.exe to try to coax a couple hundred unit tests to run. The cc.config entry for getting some unit tests looks something like this:
<exec> <executable>C:\Program Files\Microsoft Visual Studio 8\Common7\IDE\MSTest.exe</executable> <baseDirectory>d:\ccnet\projects\ProjectName</baseDirectory> <buildArgs>/testcontainer:Source\Tests\UnitTests\bin\AutomatedBuild\UnitTests.dll /runconfig:localtestrun.Testrunconfig /resultsfile:testResults.trx</buildArgs> <buildTimeoutSeconds>600</buildTimeoutSeconds> </exec>
Remember that I said this sever did not have Visual Studio installed. For the VS2005 solutions, I just installed the .NET SDK 2.0 and that was good enough. Although MSTest.exe isn't included, I snagged the file (and it's crazy set of additional DLLs scattered all over the hard drive) from another system and stuck it where the EXE was so it would be happy.
上一页 [1] [2] [3] [4] [5] [6] 下一页 |