Como executar o NUnit programaticamente

Eu tenho um assembly que faz referência ao NUnit e cria uma única classe de teste com um único método de teste. Eu sou capaz de obter o caminho do sistema de arquivos para este assembly (por exemplo, "C: ... \ test.dll"). Eu gostaria de usar programaticamente NUnit para executar contra esse assembly.

Até agora eu tenho:

var runner = new SimpleTestRunner();
runner.Load(path);
var result = runner.Run(NullListener.NULL);

No entanto, chamando runner.Load (path) lança uma exceção FileNotFound. Eu posso ver através do rastreamento de pilha que o problema é com NUnit chamando Assembly.Load (caminho) na pilha. Se eu alterar o caminho para algo como "Teste, Versão = 1.0.0.0, Cultura = neutro, PublicKeyToken = null", ainda recebo o mesmo erro.

Eu adicionei um manipulador de eventos para AppDomain.Current.AssemblyResolve para ver se eu poderia resolver manualmente esse tipo, mas meu manipulador nunca é chamado.

Qual é o segredo para obter Assembly.Load (...) para trabalhar?

questionAnswers(2)

yourAnswerToTheQuestion