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?