2009-05-15 4 views
0

Я работаю над скриптом MSBuilds для запуска тестов NUnit с CruiseControl.Net. _Test_DAL имеет три теста.Помогите запустить NUnit из командной строки dos

У меня возникла проблема с получением правильной команды dos для запуска NUnit.

Ниже перечислены команды для запуска NUnit, но не найдены тесты.

D: \ CC \ JCDCHelper \ Source_Test_DAL \ Bin \ Debug> "C: \ Program Files \ NUnit 2.4.3 \ Bin \ NUnit-консоль"/NOLOGO _Test_DAL.dll

Тесты запуска: 0 , Неудачи: 0, Не работает: 0, Время: 0.047 секунд

Я могу использовать resharper для запуска тестов, поэтому я знаю, что тесты написаны правильно.

Любая помощь была бы потрясающей.

+0

ли вы пытаетесь передать ему полный путь к вашему DLL? –

+0

Я пробовал поставить полный путь для тестирования dll, без радости. –

ответ

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"  
} 
0

Входные файлы должны быть первыми, затем параметры.

NUnit-консоль _Test_DAL.dll/NOLOGO

+0

Используя NUnit 2.4.8, я могу указать/nologo сначала и все еще запустить тесты. – Pedro

0

Я не знаю, как Resharper обрабатывает тесты, но я вспоминаю TestDriven.NET как возможность «запустить тест» на методы, которые фактически не были помечены как единицы тесты. Убедитесь, что ваш класс является общедоступным и помечен как [TestFixture], а модульный тест является общедоступным методом void, помеченным как [Тест].

Смежные вопросы