我正在使用MSBuilds脚本从CruiseControl.Net运行我的NUnit测试。 _Test_DAL有三个测试。
我在获取正确的dos命令以运行NUnit时遇到问题。
这是运行NUnit的命令,但它没有找到任何测试。
D:\ CC \ JCDCHelper \ Source_Test_DAL \ bin \ Debug>“C:\ Program Files \ NUnit 2.4.3 \ bin \ nunit-console”/ nologo _Test_DAL.dll
测试运行:0,失败:0,未运行:0,时间:0.047秒
我可以使用resharper来运行测试,所以我知道测试是正确编写的。
任何帮助都会很棒。
答案 0 :(得分:1)
回答问题我回答的问题是独立解决的。
我们现在使用Powershell,但这是我们解决它的方式,以防它对任何人都有用
function Invoke-UnitTests {
$NUnitExe = "C:\" + $WhereIsProgramFiles + "\NUnit 2.5.7\bin\net-2.0\nunit-console.exe"
Show-Status "Invoke-UnitTests was called."
Show-Status $NUnitExe
foreach( $OneProject in ( $TestProjects))
{
Show-Status "Running unit test for $OneProject"
$GetCommonDlls = "D:\CC\$AppName\Source\$AppName\_CommonDlls"
$GetBinDlls = "D:\CC\$AppName\Source\$AppName\Bin"
Copy-Item "$GetCommonDlls\*" "$WorkingDir"
Copy-Item "$GetBinDlls\*" "$WorkingDir"
$WorkingDir = "D:\CC\$AppName\Source\$OneProject\obj\$ReleaseOrDebug"
$NUnitOutput = "D:\CC\$AppName\NUnit\" + $OneProject + ".xml"
& "$NUnitExe" "$WorkingDir\$OneProject.DLL" /nologo /xml:$NUnitOutput
if ($lastExitCode -ne 0)
{
Show-Status "NUnit test Command failed for Project:$ProjectName in Application:$AppName”
Show-Status "Command that failed: ""$NUnitExe"" ""$WorkingDir\$OneProject.DLL"" /nologo /xml:$NUnitOutput"
Show-Error “Error: Unit test for $OneProject failed”
}
}
Show-Status "All Done with Unit tests"
}
答案 1 :(得分:0)
首先输入文件,然后是选项。
nunit-console _Test_DAL.dll / nologo
答案 2 :(得分:0)
我不确定Resharper如何处理测试,但我确实记得TestDriven.Net能够对未实际标记为单元测试的方法进行“运行测试”。确保您的类是公共的并标记为[TestFixture],并且单元测试是标记为[Test]的公共void方法。