Bruno: testes de API que moram no Git, a alternativa ao Postman
O que é o Bruno?
O Bruno é um cliente de API open source criado como alternativa direta ao Postman e ao Insomnia. A diferença central: em vez de guardar suas requisições numa nuvem proprietária, o Bruno salva cada uma como um arquivo de texto legível dentro de uma pasta comum do seu projeto — hoje no formato YAML do OpenCollection, o padrão aberto adotado pelo Bruno (o antigo formato `.bru` ainda é suportado e pode ser migrado com um clique).
Isso muda a forma como você trabalha com testes de API. Um arquivo de texto pode ser commitado, revisado num Pull Request e lido num diff linha por linha — exatamente como qualquer outro código do repositório.
Por que trocar o Postman pelo Bruno?
- Sem conta na nuvem: nada de sincronizar workspace com servidor de terceiros para versionar uma collection.
- Diff de verdade: como cada requisição é um arquivo YAML, o Git mostra exatamente o que mudou numa collection, campo por campo.
- Review em Pull Request: uma mudança de contrato de API pode ser revisada pelo time antes do merge, do mesmo jeito que uma mudança de código.
- Segredos protegidos: a aba Secrets e o arquivo `.env` mantêm senha e token fora do que vai pro Git.
- Edição totalmente gratuita: sem paywall para funcionalidades básicas, incluindo a linha de comando.
Principais recursos do Bruno
- Collections como arquivos: cada requisição é um arquivo YAML legível (formato OpenCollection), organizável em pastas normais do sistema operacional.
- Environments: várias configurações de baseUrl e variáveis, com escopos e precedência entre variável global, de ambiente e de requisição.
- Scripts pre-request e testes: gere dados dinâmicos antes da chamada e escreva asserts declarativos ou em JavaScript puro.
- Encadeamento de requisições: capture um ID retornado numa resposta e reutilize na próxima chamada, montando fluxos completos.
- Bruno CLI: rode toda a suíte pelo terminal, com relatórios em JSON, JUnit e HTML e o exit code que a esteira de CI usa para travar o merge.
- Importação: traga collections existentes do Postman, do Insomnia ou de uma especificação OpenAPI.
Git, CLI e pipeline: onde o Bruno ganha do Postman
É na esteira de CI/CD que a diferença fica clara. Como a collection é só um conjunto de arquivos de texto, o mesmo repositório que guarda a suíte pode subir dentro de um workflow do GitHub Actions, rodar o Bruno CLI contra a API e travar o merge automaticamente se algum contrato quebrar — sem exportar nada manualmente e sem depender de uma conta na nuvem do provedor.
Testes de API com Bruno: a Alternativa Git ao Postman
Monte do zero uma suíte versionada no Git, com ambientes, segredos protegidos, token automático e um pipeline que trava o merge quando a API quebra.
Ver Curso no UdemyO que você vai aprender
É um projeto só, que cresce com você: começa numa requisição solta e termina numa suíte versionada no Git, rodando no GitHub Actions e travando o merge quando a API quebra. A API sobe na sua própria máquina com o ServeRest, que simula uma loja virtual completa.
Por que Bruno, e o primeiro contato
- O problema que o Bruno resolve e o que muda em relação ao Postman.
- Instalando o Bruno e tour pela interface.
- Subindo o ServeRest local e conhecendo a API que vai ser testada o curso inteiro.
Requisições e a anatomia do projeto
- Criando a collection e a primeira request.
- POST, PUT e DELETE: o CRUD completo de usuários.
- Lendo a resposta, a timeline e organizando tudo em pastas.
Ambientes, variáveis e segredos
- Environments e baseUrl para alternar entre configurações.
- Escopos de variável e precedência entre eles.
- Segredos sem vazar no Git e login com token automático.
Testes
- Seu primeiro teste: assert declarativo versus teste em JavaScript.
- Dados dinâmicos em pre-request e encadeamento de requisições pelo ID retornado.
Git e CLI: onde o Bruno ganha
- Commitando a collection e lendo o diff de uma mudança de API.
- Review de API em Pull Request.
- Bruno CLI rodando a suíte no terminal, com relatórios e flags que importam.
- Montando o pipeline no GitHub Actions.
Projeto final e levando pro trabalho
- Projeto de ponta a ponta: cadastro, produto, carrinho, conclusão de compra, cancelamento e limpeza dos dados.
- Migrando a collection do seu time para o Bruno.
Para quem é este curso?
- QAs e desenvolvedores que já mandaram uma requisição em alguma ferramenta e querem colocar teste de API no repositório e no pipeline.
- Times que sofrem com collection perdida, sem histórico e sem review de mudança de contrato.
- Quem já usa Postman ou Insomnia e quer migrar sem perder produtividade.
- Iniciantes em teste de API: nenhuma experiência prévia com programação é necessária.
Ao final, você não vai ter só aprendido mais uma ferramenta. Você vai ter uma suíte de testes de API versionada no Git, com ambientes, segredos protegidos, token automático e um pipeline que barra o merge quando a API quebra — pronta para levar para o seu trabalho.