DEV Community

Cover image for Migrando do Keploy para o Apidog CLI
Lucas
Lucas

Posted on • Originally published at apidog.com

Migrando do Keploy para o Apidog CLI

Se sua equipe começou com Keploy, provavelmente foi por um motivo simples: você executou o app, chamou alguns endpoints e os testes apareceram. Sem escrever asserções, sem mockar dependências manualmente. O Keploy captura tráfego real na camada de rede e reproduz esse comportamento depois.

Experimente o Apidog hoje

A migração para o Apidog faz sentido quando a necessidade muda: em vez de testes derivados de gravações, você quer testes legíveis, revisáveis em pull requests, parametrizados por ambiente e mantidos pela equipe. Em outras palavras: sair de “o teste foi descoberto pelo tráfego” para “o comportamento esperado foi descrito explicitamente”.

Keploy vs Apidog: entenda a diferença antes de migrar

Keploy e Apidog aparecem na mesma conversa porque ambos ajudam com testes de API, mas resolvem problemas diferentes.

Keploy é uma plataforma open source focada em gravar e reproduzir comportamento real. Ele usa eBPF na camada de rede para capturar chamadas de API e dependências como banco de dados, serviços downstream e eventos de streaming, sem SDK e sem alterações no código. A partir disso, gera testes e mocks automaticamente. O código está disponível no GitHub.

Apidog é uma plataforma completa para projetar, depurar, mockar, documentar e testar APIs. A CLI do Apidog, via apidog run, executa cenários e coleções criados no projeto, tanto localmente quanto em CI/CD. Ele suporta ambientes, dados externos, relatórios e geração de casos de teste por IA a partir da especificação da API.

Ponto importante: o Apidog não substitui o recurso de captura via eBPF do Keploy. Ele não grava tráfego de produção nem gera mocks automaticamente a partir de dependências reais. Se esse fluxo é essencial, mantenha o Keploy para essa parte. A migração para o Apidog é indicada quando você quer testes mais explícitos, colaborativos e fáceis de manter.

Abordagem Keploy Abordagem Apidog
keploy record captura tráfego real via eBPF Importe sua API como OpenAPI, Postman ou cURL
Testes são gerados a partir de chamadas capturadas Testes são criados a partir da especificação e de cenários definidos
keploy test --delay 10 reproduz gravações apidog run executa cenários no terminal ou CI
Mocks vêm do tráfego real de dependências Mocks são projetados e controlados por você
Dados ficam embutidos na gravação Dados externos via CSV/JSON com -d
Ambiente vem da execução gravada Ambientes explícitos com -e
Requer Linux/eBPF e privilégios elevados Roda onde a CLI estiver disponível, incluindo runners de CI

Use essa tabela como um mapa de migração. Cada comportamento implícito do Keploy vira uma configuração explícita no Apidog.

Passo 1: transforme sua superfície de API em uma especificação

O Keploy começa com um app em execução. O Apidog começa com uma descrição da API.

Se você já tem OpenAPI, use esse arquivo como ponto de partida. Se não tem, escolha uma destas opções:

  • gerar OpenAPI a partir do framework usado pela aplicação;
  • exportar uma coleção Postman existente;
  • reunir comandos cURL usados para chamar os principais endpoints.

Se você já possui gravações do Keploy, use-as como checklist. Elas mostram quais endpoints foram realmente chamados e com quais payloads. Você não precisa importar as gravações diretamente, mas pode usá-las para garantir que a especificação cobre a mesma superfície.

Exemplo de inventário prático:

GET /users/{id}
POST /auth/login
POST /orders
GET /orders/{id}
PATCH /orders/{id}/status
Enter fullscreen mode Exit fullscreen mode

Depois, verifique se cada rota existe na especificação OpenAPI ou na coleção que será importada.

Passo 2: importe a API no Apidog

Baixe o Apidog, crie um projeto e importe seu arquivo OpenAPI, coleção Postman ou comandos cURL.

Ao importar, o Apidog cria a estrutura de endpoints, parâmetros, schemas de request e modelos de response. Essa passa a ser a base para documentação, debugging, mocks e testes.

Importação no Apidog

Depois da importação, valide pelo menos estes pontos:

  • se as URLs e métodos HTTP estão corretos;
  • se parâmetros obrigatórios aparecem como obrigatórios;
  • se os exemplos de request e response fazem sentido;
  • se os códigos de status esperados estão documentados;
  • se os schemas estão completos o suficiente para gerar mocks e testes.

Para uma visão completa da CLI, veja o guia completo da CLI do Apidog.

Passo 3: gere uma suíte inicial e revise manualmente

Para recuperar parte da velocidade do Keploy, use a geração de casos de teste por IA do Apidog.

Ela usa os endpoints e schemas importados para criar casos iniciais, como:

  • request válida;
  • campos obrigatórios ausentes;
  • valores de limite;
  • payload inválido;
  • respostas comuns de erro.

Geração de testes por IA

Trate esses testes como rascunho. Revise:

  • se as asserções refletem a regra de negócio real;
  • se os dados de exemplo são válidos;
  • se os cenários negativos fazem sentido;
  • se algum endpoint crítico ficou de fora.

A diferença em relação ao Keploy é importante: a IA do Apidog trabalha a partir da especificação, não a partir do tráfego real. Se existe uma peculiaridade que só aparece em produção, você precisa adicioná-la manualmente ao cenário.

Para comparar abordagens, veja também o resumo dos melhores geradores de casos de teste por IA.

Passo 4: crie cenários end-to-end explícitos

Depois da suíte inicial, crie os fluxos que realmente validam a API.

Um cenário típico pode encadear chamadas assim:

1. Criar usuário
2. Fazer login
3. Extrair token da resposta
4. Buscar perfil autenticado
5. Atualizar perfil
6. Excluir usuário
Enter fullscreen mode Exit fullscreen mode

O objetivo é transformar uma sequência real de uso em um teste legível e revisável.

Em cada etapa, defina asserções como:

Status code = 201
response.body.id existe
response.body.email = email enviado no request
token não está vazio
Enter fullscreen mode Exit fullscreen mode

Esse é o trabalho que o Keploy fazia implicitamente ao gravar uma execução. No Apidog, você escreve o fluxo de forma explícita. O esforço inicial é maior, mas o resultado é mais fácil de entender, revisar e alterar.

O guia sobre como escrever casos de teste com assistência de IA ajuda a combinar geração automática com revisão manual.

Passo 5: configure ambientes

Uma gravação do Keploy carrega os valores de uma execução específica. No Apidog, o ideal é separar teste e ambiente.

Crie ambientes como:

  • local
  • staging
  • production

Cada ambiente pode ter variáveis próprias:

base_url=https://api-staging.example.com
auth_token=...
tenant_id=...
Enter fullscreen mode Exit fullscreen mode

Na execução, escolha o ambiente com -e:

apidog run \
  --access-token "$APIDOG_ACCESS_TOKEN" \
  -i 123456 \
  -e "staging"
Enter fullscreen mode Exit fullscreen mode

Esse padrão permite rodar o mesmo cenário contra ambientes diferentes sem duplicar testes.

Passo 6: use dados externos com CSV ou JSON

Para testes orientados a dados, mantenha entradas em arquivos versionados junto com o projeto.

Exemplo de CSV para login:

email,password,expected_status
user@example.com,correct-password,200
user@example.com,wrong-password,401
blocked@example.com,any-password,403
Enter fullscreen mode Exit fullscreen mode

Execute o cenário usando -d:

apidog run \
  --access-token "$APIDOG_ACCESS_TOKEN" \
  -i 123456 \
  -e "staging" \
  -d ./test-data/login-cases.csv
Enter fullscreen mode Exit fullscreen mode

Isso substitui a limitação de uma gravação fixa. Agora os dados de teste são explícitos, revisáveis em pull request e fáceis de expandir.

O guia de testes orientados a dados mostra os formatos suportados e como vincular variáveis.

Passo 7: execute no CI com apidog run

No pipeline, o comando que substitui keploy test é apidog run.

Exemplo:

apidog run \
  --access-token "$APIDOG_ACCESS_TOKEN" \
  -i 123456 \
  -e "staging" \
  -r html,cli \
  --upload-report
Enter fullscreen mode Exit fullscreen mode

Esse comando:

  • executa o cenário ou coleção indicada;
  • aplica o ambiente escolhido;
  • usa dados externos, se configurados;
  • gera relatório em CLI, HTML ou JSON;
  • pode enviar o relatório para a nuvem com --upload-report.

Em CI, o fluxo básico é:

1. Instalar a CLI do Apidog
2. Configurar APIDOG_ACCESS_TOKEN como secret
3. Rodar apidog run
4. Falhar a build se o comando retornar erro
5. Publicar ou armazenar o relatório
Enter fullscreen mode Exit fullscreen mode

Para YAMLs prontos e exemplos de integração, consulte:

Passo 8: crie mocks controlados

O Keploy gera mocks capturando dependências durante a gravação. O Apidog usa outra abordagem: mocks projetados a partir do schema.

Como sua API já foi importada, você pode gerar um servidor de mock baseado nos modelos, exemplos e regras definidas. Isso permite controlar:

  • payloads de sucesso;
  • respostas de erro;
  • códigos de status;
  • latência;
  • formatos de campos;
  • cenários específicos para frontend ou testes de contrato.

Mocks no Apidog

A diferença prática é:

Mock capturado: reflete o que aconteceu em uma execução real.
Mock projetado: reflete o contrato que você quer garantir.
Enter fullscreen mode Exit fullscreen mode

Para CI estável e desenvolvimento desacoplado, mocks projetados costumam ser mais previsíveis. Para entender melhor esse fluxo, veja:

O que você ganha e o que perde

Ao migrar do Keploy para o Apidog, seja explícito com a equipe.

Você perde:

  • captura automática via keploy record;
  • mocks gerados a partir de tráfego real;
  • reprodução direta de execuções capturadas;
  • a camada eBPF agnóstica à linguagem.

Você ganha:

  • testes legíveis e revisáveis;
  • cenários criados com intenção;
  • ambientes alternáveis com -e;
  • dados versionados com -d;
  • documentação, debugging, mocks e testes na mesma plataforma;
  • execução simples em CI com apidog run.

Se captura de comportamento real é essencial, use Keploy e Apidog juntos. Por exemplo:

Keploy: regressões baseadas em tráfego capturado.
Apidog: testes end-to-end projetados, documentação, mocks e CI.
Enter fullscreen mode Exit fullscreen mode

Para comparar opções, veja a pesquisa de ferramentas de automação de testes de API e o guia prático de como testar uma API com Apidog.

Se você ainda está avaliando a troca, leia também a comparação Apidog vs Keploy e o resumo das melhores alternativas ao Keploy.

Checklist de migração

Use este checklist para começar com baixo risco:

[ ] Escolher um serviço pequeno
[ ] Exportar ou criar a especificação OpenAPI
[ ] Importar a API no Apidog
[ ] Validar endpoints, schemas e exemplos
[ ] Gerar casos iniciais com IA
[ ] Revisar e remover testes irrelevantes
[ ] Criar um cenário end-to-end real
[ ] Configurar ambiente staging
[ ] Criar arquivo CSV/JSON de dados
[ ] Rodar com apidog run localmente
[ ] Adicionar execução ao CI
[ ] Publicar relatório para a equipe
[ ] Expandir para outros endpoints
Enter fullscreen mode Exit fullscreen mode

FAQ

O Apidog pode importar minhas gravações existentes do Keploy?

Não diretamente. As gravações do Keploy são capturas em tempo de execução. O Apidog trabalha a partir de especificações de API, coleções Postman ou comandos cURL. Use as gravações como checklist para cobrir os mesmos endpoints.

O Apidog grava tráfego em tempo real como o Keploy?

Não. O Apidog não captura tráfego via eBPF e não gera mocks automaticamente a partir de dependências reais. Essa é uma capacidade específica do Keploy.

O que substitui keploy record?

Não há equivalente direto. No Apidog, o fluxo é importar uma especificação, gerar uma suíte inicial, criar cenários e configurar mocks controlados.

O que substitui keploy test?

O equivalente operacional no pipeline é:

apidog run \
  --access-token "$APIDOG_ACCESS_TOKEN" \
  -i 123456 \
  -e "staging"
Enter fullscreen mode Exit fullscreen mode

Ele executa os cenários criados no Apidog.

Vale a pena migrar?

Sim, se sua prioridade é ter testes legíveis, revisáveis, parametrizados e mantidos pela equipe. Se sua prioridade principal é capturar comportamento real com o mínimo de configuração, o Keploy continua sendo mais adequado para essa parte.

Posso usar Keploy e Apidog juntos?

Sim. Essa pode ser a melhor estratégia em muitos times: Keploy para regressão baseada em captura e Apidog para design, documentação, mocks, testes end-to-end e CI.

Por onde começar

Escolha um serviço pequeno. Exporte a especificação OpenAPI, importe no Apidog, gere casos iniciais com IA e crie um cenário real com ambiente e dados externos. Depois, rode com apidog run e integre ao CI.

Quando esse fluxo estiver estável, expanda para mais endpoints.

Para aprofundar na CLI, comece pelo guia de instalação e pelo passo a passo de testes de API REST por linha de comando.

Top comments (0)