Novidades do .NET 6: melhorando a experiência na linha de comando com Response Files

Renato Groffe
3 min readMar 7, 2021

--

Em um artigo anterior dei início a uma série sobre novidades do .NET 6, cobrindo a instalação do Preview 1, o suporte a Docker/containers, além da integração com soluções como Visual Studio 2019, Visual Studio Code, Azure DevOps e GitHub Actions:

.NET 6: primeiros testes com o Preview 1

Neste novo post dou continuidade a este esforço, abordando agora uma melhoria envolvendo a CLI (.NET command-line interface): a possibilidade de uso de Response Files, arquivos com parâmetros que podem ser combinados a comandos com o utilitário dotnet.

Com esta nova capacidade temos uma conveniência bastante bem-vinda, já que há aqui uma grande simplificação para a execução de comandos extensos: diferentes parâmetros podem ser especificados linha a linha, em um arquivo com a extensão .rsp. Limitações no número de caracteres ao digitar uma linha em um terminal também deixam de representar um problema graças a essa funcionalidade.

Supondo a utilização da linha de comando para a execução de um projeto de testes, como indicado no comando a seguir:

dotnet test --verbosity minimal --logger:"html;LogFileName=resultado-testes.html"

Nas próximas imagens podemos observar o resultado da execução deste comando:

Com a geração de um relatório HTML com o resultado dos testes (o arquivo resultado-testes.html no diretório TestResults):

Na listagem a seguir temos o conteúdo do arquivo tests-report.rsp, em que foram especificados os parâmetros verbosity e logger com seus respectivos valores (aqui geramos um novo relatório HTML, demonstrando que o uso da CLI com o arquivo .rsp tem o mesmo resultado que no modo convencional):

Para o uso do arquivo tests-report.rsp com o comando dotnet test via PowerShell deveremos acrescentar o nome do mesmo precedido por @ (arroba) e entre aspas (“”):

dotnet test "@tests-report.rsp"

Teremos então um resultado simular à utilização tradicional de dotnet test, com a geração de um novo arquivo com detalhes dos testes executados (resultado-testes-cli.html):

O mesmo tipo de teste com um Response File via Command Prompt do Windows envolve uma pequena diferença, já que não será necessário especificar o nome do arquivo entre aspas (utiliza-se apenas @):

dotnet test @tests-report.rsp

Na imagem a seguir temos o resultado desta execução:

Os projetos que serviram de base para esses testes foram disponibilizados como um repositório no GitHub:

.NET 6 Preview 1 + Class Library + Conversão de Distâncias + Testes + xUnit + Response File

E concluo este artigo com um convite…

Procurando recolocação profissional? Ou então alavancar sua carreira, aprendendo tecnologias em alta? Que tal então aproveitar este momento em que estamos ficando mais em casa e realizar um treinamento ONLINE, GRATUITO e com CERTIFICADO sobre Azure DevOps?

Aprenda nesta iniciativa tudo o que você precisa saber sobre Azure DevOps, saindo do absoluto zero em automação até os testes, build e deployment automatizados em ambientes de nuvem e, até mesmo, on-premise!

Aproveite então esta grande oportunidade e participe da master class sobre Azure DevOps, a ser realizada pelo Azure na Prática na tarde do dia 13/03/2021 — sábado — das 14:00 às 18:00 — horário de Brasília.

Para efetuar sua inscrição acesse o link:

https://bit.ly/mc-azuredevops-blog-groffe

--

--

Renato Groffe
Renato Groffe

Written by Renato Groffe

Microsoft Most Valuable Professional (MVP), Multi-Plataform Technical Audience Contributor (MTAC), Software Engineer, Technical Writer and Speaker

No responses yet