anúncios

terça-feira, 13 de janeiro de 2026

Variáveis dinâmicas no Postman

Quando começamos a automatizar testes de API, uma dor comum aparece rapidamente:

Como manter os testes realistas, sem precisar ficar inventando manualmente nomes, e-mails ou identificadores únicos toda vez?

Foi exatamente para isso que o Postman introduziu as Dynamic Variables, variáveis internas que geram dados aleatórios automaticamente no momento da execução.

Com a minha experiência de Analista Desenvolvedor de Sistemas e Aplicativos, posso dizer: isso economiza tempo, reduz duplicidade e evita falsos positivos causados por dados repetidos.

Vamos explorar, com exemplos práticos.

O que são variáveis dinâmicas?

São placeholders especiais, no formato:

{{$nomeDaVariavel}}

Quando a requisição executa, o Postman substitui automaticamente pelo valor gerado.

Você pode usá-las em:

  • Body (JSON, XML, form-data)
  • URL/Query string
  • Headers
  • Scripts (Pre-request e Tests)

E não precisa criar variáveis de ambiente, elas funcionam "out of the box".

Tabela 1: Principais variáveis dinâmicas (com exemplos)

Aqui estão algumas das mais utilizadas na prática.

Variável Descrição Exemplo de valor gerado
{{$guid}} Gera um identificador único no formato UUID (v4). 7f4e5e5e-b5d1-44cd-9f7f-9f4af45c2c32
{{$timestamp}} Retorna o timestamp atual no formato Unix (segundos). 1736083201
{{$randomInt}} Gera um número inteiro aleatório entre 0 e 1000. 487
{{$randomUUID}} Gera um UUID aleatório. 9c5c5791-6b3a-4c5d-8c39-5dd1d9fae291
{{$randomFirstName}} Gera um nome próprio aleatório. Mariana
{{$randomLastName}} Gera um sobrenome aleatório. Souza
{{$randomFullName}} Gera um nome completo aleatório. Mariana Souza
{{$randomEmail}} Gera um endereço de e-mail válido e aleatório. mariana.souza@example.com
{{$randomUserName}} Gera um nome de usuário aleatório. msouza92
{{$randomPassword}} Gera uma senha aleatória. D3f@ult!92
{{$randomPhoneNumber}} Gera um número de telefone fictício. +1 202 555 0189
{{$randomCity}} Gera o nome de uma cidade aleatória. Curitiba
{{$randomCountry}} Gera o nome de um país aleatório. Brazil
{{$randomZipCode}} Gera um código postal (CEP/ZIP) aleatório. 01001-000
{{$randomStreetAddress}} Gera um endereço completo aleatório. Av. Central, 120
{{$randomCompanyName}} Gera um nome de empresa aleatório. SoftBridge Ltd.
{{$randomUrl}} Gera uma URL aleatória válida. https://example.org
{{$randomIP}} Gera um endereço IPv4 aleatório. 192.0.2.45

Essas variáveis são suficientes para simular a maioria dos cenários de CRUD.

Exemplo prático: criando um usuário com dados aleatórios

Body JSON:


{
  "firstName": "{{$randomFirstName}}",
  "lastName": "{{$randomLastName}}",
  "email": "{{$randomEmail}}",
  "username": "{{$randomUserName}}",
  "password": "{{$randomPassword}}",
  "id": "{{$guid}}",
  "createdAt": "{{$timestamp}}"
}

Toda execução cria um usuário diferente, evitando conflitos como:

  • "email já cadastrado"
  • "id duplicado"
  • "username já existe"

Reutilizando valores gerados entre requisições

Às vezes, você precisa:

  • cadastrar um usuário
  • logar com ele
  • buscar detalhes
  • excluir

Para isso, "capture" os dados no Pre-request ou Tests:

pm.environment.set("email", pm.variables.replaceIn("{{$randomEmail}}"));

pm.environment.set("userId", pm.variables.replaceIn("{{$guid}}"));

Depois, use normalmente:

{{email}}

{{userId}}

Essa combinação torna os testes reprodutíveis e automatizáveis.

Boas práticas de quem usa em produção

Não dependa de dados fixos

Sempre que o endpoint permitir, prefira dados gerados.

Guarde apenas o necessário

Evite poluir o ambiente com dezenas de variáveis.

Simule casos reais

Misture números, datas e strings para validar regras de negócio.

Documente na coleção

Outros devs vão agradecer quando precisarem interpretar seus testes.

Quando NÃO usar variáveis dinâmicas

Testes que exigem dados determinísticos (comparação exata de respostas).

Cenários de regressão, onde o valor precisa ser sempre igual.

Validações financeiras, fiscais ou com regras rígidas.

Use com critério.

Considerações finais

Variáveis dinâmicas transformam o Postman em algo além de um simples cliente HTTP:

Elas ajudam a criar testes mais robustos, confiáveis e próximos do mundo real, sem scripts complexos.

Se você ainda está copiando e colando valores manualmente, experimente substituí-los pelas variáveis dinâmicas apresentadas na Tabela 1: Principais variáveis dinâmicas, aplicando-as conforme o exemplo prático demonstrado neste artigo.

O ganho de produtividade aparece imediatamente.

Feito!

Nenhum comentário:

Postar um comentário