Программный вызов mbunit Test Runner

В настоящее время я создаю набор тестов, используя mbunit. Пока все хорошо, но вместо использования встроенного графического интерфейса Icarus я хочу иметь свой собственный тестовый прогон. Не зная, что мне делать, я захожу в группу Галлио в Google и копирую код, опубликованный пользователем:

http://groups.google.com/group/gallio-user/browse_thread/thread/afab404a14674cd2

Вместо этого я получил следующее исключение:

Gallio.Runtime.RuntimeException был необработан. Сообщение = Не удалось разрешить компонент для типа службы «Gallio.Runner.Projects.ITestProjectManager», поскольку для этого типа службы не зарегистрированы и не включены какие-либо компоненты. Источник = Gallio StackTrace: в Gallio.Runtime.Extensibility.RegistryServiceLocator.ResolveNonDisabledDescriptor (Тип serviceType) в Gallio.Runtime.Extensibility.RegistryServiceLocator.ResolveImpl (Тип serviceType.RegistryServiceLocator. RunWithRuntime () в Gallio.Runner.TestLauncher.Run () в Dundas.Dashboard.TestSystem.TestPrograms.Driver.RunTests () в C: \ Users \ edmondc \ Documents \ Visual Studio 2010 \ Projects \ AutomatedTestSystem \ TestPrograms \ ImageComparisonTest \ Driver .cs: ​​строка 49 в Dundas.Dashboard.TestSystem.Program.Main (String [] args) в C: \ Users \ edmondc \ Documents \ Visual Studio 2010 \ Projects \ AutomatedTestSystem \ TestConsole \ Program.cs: строка 13 в System. AppDomain._nExecuteAssembly (сборка RuntimeAssembly, String [] args) в System.AppDomain.ExecuteAssembly (String assemblyFile, Evidence assemblySecurity, String [] args) в Microsoft.VisualStudi o.HostingProcess.HostProc.RunUsersAssembly () в System.Threading.ThreadHelper.ThreadStart_Context (состояние объекта) в System.Threading.ExecutionContext.Run (ExecutionContext ExecutionContext, обратный вызов ContextCallback, состояние объекта, логическое значение ignoreSyncCtreadContext.ExecutionContext) в System. (ExecutionContext ExecutionContext, обратный вызов ContextCallback, состояние объекта) в System.Threading.ThreadHelper.ThreadStart () InnerException:

Что я там не так делаю?


person edc    schedule 17.08.2011    source источник


Ответы (1)


Вы можете использовать Gallio Loader, который можно найти где-нибудь в каталоге установки Gallio. Загрузчик предоставляется в виде пары исходных файлов C #, которые вам нужно включить в свой проект. Его цель - облегчить интеграцию Gallio в пользовательские приложения.

Вот простое использование:

TestLauncher launcher = new TestLauncher();
launcher.AddFilePattern("MyTestAssembly.dll");
TestLauncherResult result = launcher.Run();

РЕДАКТИРОВАТЬ: для более сложного использования средства запуска тестов просмотрите Echo исходный код.

person Yann Trevin    schedule 19.08.2011
comment
Это именно то, что я ищу - простой класс средства запуска тестов, который позволяет мне загружать сборки на лету. Спасибо! - person edc; 21.08.2011