sábado, 25 de agosto de 2018

.Net Core - Testes Unitários no Linux

Para adicionar seu projeto de teste, primeiro crie uma solução que irá agrupar os projetos. Para criar uma nova solução utilize o comando:

dotnet new sln

Para criar um projeto de teste, é possível utilizar xunit:

dotnet new xunit -o NOMEPROJETO.Test

ou para utilizar mstest

dotnet new mstest -o NOMEPROJETO.Test




Para adicionar uma referência do projeto de Teste ao projeto a ser testado:

dotnet add NOMEPROJETO.Test  reference NOMEPROJETO










Depois, deve-se adicionar os projetos à solução:
dotnet sln SOLUCAO.sln add **/*.csproj

Para executar o teste  para executar:
dotnet test

.Net Core no Linux

Criei um projeto no Ubuntu 18.04 para avaliar todo o ecossistema de se trabalhar no Linux e gostei.

Para instalar há 1 mês atrás, tive problema de compatibilidades de pacotes, mas hoje eu peguei, segui as instruções do .Net Core Downloads e foi tranquilo.

Para criar a aplicação o Get Started introduz bem, e, uma vez instalado, tudo é possível fazer por linha de comando no dotnet CLI, conforme exemplo abaixo para se criar um novo projeto:

dotnet new console -o myApp
cd myApp

Para pacotes, é importante entender que a Microsoft definiu também o conceito de .Net Core e .Net Standard e o post .NET Standard - Desmistificando o .NET Core e o .NET Standard os explica bem. No .Net Standard é possível ver uma tabela de compatibilidade:


Entendendo o pacote, é possível navegar no nuget e ver quem tem compatibilidade para sua framework alvo, conforme exemplo abaixo:



Feito isso, você poderá adicionar pacotes à sua linha de comando seguindo o Início Rápido: Instalar e usar um pacote usando a CLI do dotnet. Como exemplo, segue o comando para adicionar o pacote Newtonsoft.Json (Que ajuda a serializar e deserializar Json) :

dotnet add package Newtonsoft.Json

Para editor, o VS Code sugere plugins a medida que você abre projetos e arquivos. Instale o Code abra o projeto seja visualmente ou por linha de comando (para esse basta ir no diretório do projeto, "digitar: code .")

Veja VS Code sugerindo algumas ações, desde instalação de plugins, como comandos para depurar seu projeto, conforme print abaixo:




Ao aceitar a primeira caixa de diálogo, o diretório .vscode é criado, com configurações para possibilitar depuração.

Ao aceitar a segunda caixa de diálogo, o comando dotnet restore é executado.

Feito isso, é possível apertar F5 ou ir no menu Debug (Ctrl+Shift+D) e ir no ícone Start Debug:




Seu ambiente já estará funcional e depurando: