Automatizando Testes de Integração: um exemplo com Azure DevOps, SQL Server, Postman e .NET 7

Renato Groffe
2 min readSep 9, 2023

--

Na imagem que inicia este post temos um exemplo de execução de um pipeline do Azure DevOps automatizando testes (com Postman + Newman) de uma API REST criada com .NET 7 + ASPNET Core e que faz uso do SQL Server (em um container Docker) + Migrations do Entity Framework Core. Incluí aqui também a geração de um relatório HTML com os resultados dos testes.

Demonstrei esta solução (além de outros 2 exemplos com PostgreSQL e MySQL) em uma live recente do Canal .NET. A gravação pode ser assistida no YouTube:

A versão que faz uso do PostgreSQL foi também tema de outro artigo publicado neste blog (muitos detalhes do pipeline para SQL Server são idênticos):

Automatizando Testes de Integração: um exemplo com Azure DevOps, PostgreSQL, Postman e .NET 7

Vale ressaltar ainda que utilizei um virtual environment baseado em Linux (Ubuntu 22.04), o qual conta com dezenas de ferramentas pré-instaladas (sqlcmd — linha de comando do SQL Server, Newman/Postman e o runtime Docker).

Na listagem a seguir está o código com a implementação deste pipeline:

Merecem destaque os seguintes pontos:

  • Nas linhas 4 a 15 estão as configurações para uso do container do SQL Server (ativado para o stage Tests nas linhas 39 e 40);
  • No step que inclui as linhas 116 a 120 o sqlcmd foi utilizado, de forma a exibir os registros gerados durante a execução dos testes da API REST (via Collection do Postman).

Este pipeline foi disponibilizado no meu GitHub:

https://github.com/renatogroffe/AzureDevOps-SqlServer-EFCoreMigrations-Postman-Newman-DotNet7-ASPNETCore_IntegrationTests

Já o repositório com a aplicação + testes gerados via Postman pode ser acessado por meio do link:

https://github.com/renatogroffe/ASPNETCore7-REST_API-SqlServer-EFCore-Migrations-Postman_ChamadosSuporte

Caso achem útil esta solução, peço por favor um ⭐️ nos repositórios do GitHub apoiando. Fica novamente o convite para que vocês me sigam lá!

--

--

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