Tenho tido dificuldades com o VS 2017 desde que o instalei. Agora parece que os Testes de Unidade só serão executados a partir da linha de comando "dotnet test."
Meu projeto é .NET Core 1.1.1. Eu tenho o SDK e a atualização do framework para 1.1.1 instalado.
Eu tentei a amostra na MSDN (https://msdn.microsoft.com/en-us/library/ms182532.aspx) que também falha exatamente da mesma forma.
Todos os pacotes NuGet para os testes e o projeto principal são atuais. E tanto o projeto de teste quanto o projeto principal são construídos sem erros. E os testes são executados com sucesso a partir da linha de comando.
Alguém já fez testes unitários na VS 2017, se sim, como?
Obrigado, John
Aqui está um exemplo de um simples projeto de teste que não está funcionando em GitHub. Este é um exemplo com o xUnit, mas eu tentei o NUnit e o estúdio visual construído em testes de MS. Não importa que testes ou mudanças eu faça, eu não posso conseguir que o VS test runner encontre qualquer teste.
DEL %TEMP%\VisualStudioTestExplorerExtensions
**A pergunta* Qualquer pessoa pode fornecer um exemplo funcional de uma solução .Net Core 1.1.0 no VS2017 (.csproj project files) onde o explorador de testes VS encontra com sucesso os testes unitários OU** mostrar-me o problema no exemplo dado.
Don't ler artigos desatualizados em MSDN. .NET Core materiais relevantes estão em docs.microsoft.com
https://docs.microsoft.com/en-us/dotnet/articles/core/testing/
Em geral, você precisa de um aplicativo .NET Core console para conter os casos de teste da unidade.
No meu caso, foi o projecto UWP presente na solução que causou o problema.
Quando eu descarreguei o projecto UWP, foram descobertos testes. Quando o carreguei de volta, o teste desapareceu novamente.
Tente descarregar todos os projectos e mantenha apenas o projecto de teste. Dez soluções de reconstrução e de teste aparecem no Test Runner. Carregue os projetos um a um e reconstrua a solução a cada vez para descobrir qual projeto está causando o problema.
O problema é que o Visual Studio está ficando ' confuso' sobre as versões do núcleo dotnet na máquina. Quando eu fui ao painel de controle -> desinstalar programas eu tinha 8 SDK's e Runtimes diferentes instalados. Isto estava de alguma forma fazendo com que o VS tivesse silenciosamente um erro ao tentar encontrar testes.
Você pode validar o problema indo para a linha de comando e obtendo a versão do dotnet sua versão em $ dotnet --versão'. Se você vir alguma coisa, exceto a última versão que você instalou, então sua máquina tem algum descasamento e não está usando a versão correta. Exemplo...Se você tem o núcleo dotnet
1.0.1instalado mas quando você recebe a versão no prompt de comando e ele diz
1.0.0` isso é um problema.
Apague todas as coisas antigas. Eu comecei apenas com o que eu achava que precisava remover (as versões mais antigas do dotnet rc), mas mesmo assim ele deu a versão errada ao testar o problema. Eventualmente, eu admiti fazer uma limpeza completa. I...
Depois que minha máquina estava completamente vazia de todos os VS e donet eu instalei somente VS2017 (ele vem embalado com o mais recente dotnet). Eu criei um projeto de teste xUnit e o test explorer encontrou o teste imediatamente **SOLVED***
Isto pode parecer um exagero, mas passei duas semanas a tentar resolver isto de outras formas. Se você tiver o problema apenas faça isso, mesmo que possa levar horas para desinstalar/reinstalar itens, isso provavelmente economizará seu tempo.