Как запустить NUnit-тесты из кода C # - PullRequest
18 голосов
/ 13 мая 2010

Я пытаюсь написать простой метод, который получает файл и запускает его, используя NUnit. Код, который мне удалось построить с использованием исходного кода NUnit, не работает:

if(openFileDialog1.ShowDialog() != DialogResult.OK)
{
    return;
}

var builder = new TestSuiteBuilder();
var testPackage = new TestPackage(openFileDialog1.FileName);
var directoryName = Path.GetDirectoryName(openFileDialog1.FileName);
testPackage.BasePath = directoryName;
var suite = builder.Build(testPackage);

TestResult result = suite.Run(new NullListener(), TestFilter.Empty);

Проблема в том, что я продолжаю получать исключение, генерируемое компоновщиком. Build заявляет, что сборка не найдена.

Чего мне не хватает? Есть ли другой способ запустить тест из кода (без использования Process.Start)?

1 Ответ

27 голосов
/ 21 января 2011

Добавление следующей строки в начале, настройка платформы NUnit и может помочь вам:

CoreExtensions.Host.InitializeService();

Еще один «более простой» способ выполнения тестов NUnit программно:

TestPackage testPackage = new TestPackage(@"C:\YourProject.Tests.dll");
RemoteTestRunner remoteTestRunner = new RemoteTestRunner();
remoteTestRunner.Load(testPackage);
TestResult testResult = remoteTestRunner.Run(new NullListener());

Необходимо указать следующие сборки:

  • nunit.core.dll
  • nunit.core.interfaces.dll

И, конечно же, nunit.framework.dll должен находиться в папке с вашей тестовой сборкой;)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...