Fatos principais
- Categoria
- Desenvolvimento e Web
- Tipos de entrada
- textarea, text, checkbox, number
- Tipo de saída
- json
- Cobertura de amostras
- 4
- API disponível
- Yes
Visão geral
O Testador de Mutação de Contrato API é uma ferramenta avançada que analisa sua especificação OpenAPI 3.x para gerar e aplicar mutações semânticas em campos de requisição. Ele permite identificar falhas de validação defensiva ao injetar valores arriscados, como omissão de campos obrigatórios, números negativos ou caracteres especiais, podendo testar essas variantes diretamente contra um backend real para verificar a resiliência da sua API.
Quando usar
- •Quando precisar auditar a cobertura de validação defensiva de uma API recém-desenvolvida.
- •Antes de liberar endpoints públicos para garantir que payloads malformados sejam rejeitados corretamente.
- •Para gerar planos de testes de segurança e robustez baseados diretamente no contrato OpenAPI.
Como funciona
- •Cole sua especificação OpenAPI 3.x (em formato YAML ou JSON) no campo principal.
- •Configure a URL base e o cabeçalho de autorização caso deseje executar as mutações contra um servidor real.
- •Defina o limite de mutações por campo e ative a execução para enviar as requisições alteradas.
- •Analise o relatório JSON gerado para ver quais mutações foram defendidas (rejeitadas) ou aceitas indevidamente pelo backend.
Casos de uso
Exemplos
1. Auditoria de endpoint de criação de usuário
Engenheiro de Segurança- Contexto
- A equipe desenvolveu um novo endpoint de cadastro de usuários e precisa garantir que ele não aceite idades negativas ou e-mails sem formatação.
- Problema
- Verificar se o backend rejeita mutações semânticas perigosas baseadas no contrato OpenAPI.
- Como usar
- Cole o YAML do OpenAPI, preencha a URL base com o ambiente de staging, marque 'Executar mutações' e defina 'Mutações por campo' como 3.
- Configuração de exemplo
-
{ "baseUrl": "https://staging.api.exemplo.com", "executeMutations": true, "mutationsPerField": 3 } - Resultado
- O relatório mostra quais mutações (como idade negativa) foram 'defended' (rejeitadas com erro 400) e quais foram 'accepted' indevidamente.
2. Geração de plano de testes offline
Analista de QA- Contexto
- O QA precisa criar casos de teste negativos para uma API financeira, mas ainda não tem acesso ao ambiente de testes.
- Problema
- Mapear todas as possíveis falhas de validação de contrato sem enviar requisições reais.
- Como usar
- Insira o JSON do OpenAPI, deixe a 'URL base' vazia e mantenha 'Executar mutações' desmarcado.
- Configuração de exemplo
-
{ "executeMutations": false, "mutationsPerField": 5 } - Resultado
- A ferramenta gera um JSON detalhando dezenas de mutações planejadas (ex: omissão de valor de transferência, violação de enum de moeda) para uso em scripts de teste futuros.
Testar com amostras
developmentHubs relacionados
FAQ
Quais formatos de especificação são suportados?
A ferramenta suporta documentos OpenAPI 3.x nos formatos YAML e JSON.
A ferramenta envia requisições reais para a minha API?
Apenas se você preencher a 'URL base' e marcar a opção 'Executar mutações'. Caso contrário, ela apenas gera o plano de mutação offline.
O que significa uma mutação 'accepted' no resultado?
Significa que o backend processou a requisição mutada com sucesso (ex: HTTP 200), o que pode indicar uma falha na validação defensiva da API.
Como posso autenticar as requisições de teste?
Você pode fornecer um token no campo 'Cabeçalho de autorização', utilizando formatos padrão como 'Bearer <seu_token>'.
Quais tipos de mutações são geradas?
O sistema gera omissões de campos obrigatórios, violações de enum, números negativos ou fora do limite, strings vazias e injeção de caracteres especiais.