Nunit-Console 2.5.4 Não é capaz de executar vários conjuntos?
-
27-09-2019 - |
Pergunta
Estou tendo problemas para executar testes com a linha de comando NUNIT Test Runner.
Estou usando a versão 2.5.4 com o .NET 4 em uma máquina X64.
Usando a seguinte linha resulta em uma falha "não foi possível carregar o arquivo ou a 'barra' ou uma de suas dependências. O sistema não pode encontrar o arquivo especificado".
nunit-console-x86 foo.dll bar.dll /framework=4.0.30319
Se eu reverter os nomes de arquivos da DLL, ele reclama de não encontrar 'foo' em vez disso ...
Funciona se eu os executar separadamente gostar:
nunit-console-x86 foo.dll /framework=4.0.30319
Também os testes do segundo arquivo funcionam se eu executar:
nunit-console-x86 bar.dll /framework=4.0.30319
Antes de atualizar nossos projetos para 4.0, usamos o NUNIT 2.5.2 e as mesmas opções de ferramentas de linha de comando e, nesse ponto, o corredor funcionou bem com vários conjuntos. Parece que a capacidade de executar testes em vários arquivos ao mesmo tempo está quebrada ...
Alguém que pode ver o mesmo comportamento ou funciona indicando que meu ambiente está de alguma forma quebrado?
/Por
Solução
O comportamento de carregamento da montagem mudou entre 2.5.4 e 2.5.3. Isso estava causando problemas para nós, por isso revertemos para 2.5.3, pois isso ainda suporta a estrutura 4.0.
Usamos o Nunit-Console.exe 2.5.3 com várias montagens em nosso script msbuild, que se parece com o seguinte:
<Exec Command="%22$(NUnit_Install_Directory)bin\net-2.0\nunit-console.exe%22
/noshadow @(TestableAssemblies, ' ') /xml $(BuildFilesPath)\NUnit-Results.xml" />
Na execução, preenche assim (editado para legibilidade):
"C: Arquivos de Programas Nunit 2.5.3 bin net-2.0 nunit-console.exe" /noshadow d: buildagent gojisoft.application.test bin release gojisoft.application.test.dll d: BuildAgent gojisoft.common.test bin release gojisoft.common.test.dll /xml d: buildagent work 2f016459feee51ce build nunit-results.xml
Não usamos uma máquina de 64 bits para nossos testes de unidade, então YMMV.
Eu tenho uma postagem no blog sobre a modificação adicional que você deve fazer com o freio-console-x86.exe.config aqui: Obtendo .NET 4.0, Team City, MSBuild e Funit para jogar bem.
Outras dicas
Eu tenho o mesmo problema. Eu adquiri por aí criando um projeto de NuNit na GUI que inclui várias DLLs. Então eu posso executá-lo com o Nunit-Console.