Pular para o conteúdo principal
Devin pode testar sua aplicação de ponta a ponta após abrir um PR — executando a aplicação localmente, interagindo com ela pelo navegador e gravando um vídeo de todo o processo. A gravação é enviada diretamente para você como anexo, para que possa verificar se as alterações funcionam sem precisar fazer pull da branch por conta própria.

Como Funciona

Depois que o Devin cria uma PR, ele pode entrar em modo de teste — um fluxo de trabalho estruturado em que o Devin:
  1. Prepara o ambiente — instala dependências, inicia serviços, faz login nas contas necessárias
  2. Planeja o teste — lê o diff e a base de código para criar um plano de teste enxuto e focado
  3. Grava um vídeo — inicia uma gravação de tela, executa o plano de teste na área de trabalho e anota os momentos-chave
  4. Envia o resultado para você — encerra a gravação, processa o vídeo e o envia para você como anexo de uma mensagem
O objetivo é uma gravação curta que a pessoa revisando o código assista e imediatamente pense “sim, funciona” — e então faça o merge da PR.

Iniciando um teste

Depois de criar um PR, o Devin vai se oferecer para testar o app para você. Clique em Test the app para que o Devin inicie o fluxo de testes.
Botão Test the app
Em breve haverá uma configuração para executar os testes automaticamente após a criação do PR — sem precisar clicar no botão.
Você também pode pedir para o Devin testar a qualquer momento durante uma sessão — por exemplo, “teste as alterações que você acabou de fazer e me envie uma gravação” ou “verifique se a página de login funciona e me envie um vídeo”.

Fluxo de testes

Quando Devin entra em modo de teste, ele segue um processo estruturado em três fases:

Fase 1: Configuração

Antes de iniciar qualquer teste, Devin prepara o ambiente:
  • Lê o PR e a base de código para entender o que precisa ser testado
  • Verifica se há skills relevantes no repositório (em .agents/skills/) e as segue se as encontrar
  • Faz login nos serviços necessários e resolve problemas de acesso
  • Verifica os ambientes disponíveis (staging, dev, local) e confirma a conectividade
  • Solicita segredos que estiverem faltando, se necessário — Devin pedirá as credenciais antecipadamente e as salvará para sessões futuras
Concluir a configuração do repositório com antecedência torna os testes muito mais rápidos — Devin pode pular a instalação de dependências, a configuração de serviços e o login no início de cada sessão.
Quando Devin pede credenciais durante os testes, ele as salva como segredos para sessões futuras, então você só precisa fornecê-las uma vez.

Fase 2: Planejamento de testes

Depois que a configuração é concluída, Devin escreve um plano de teste conciso:
  • Identifica o fluxo ponta a ponta mais importante que comprova que a funcionalidade funciona
  • Escreve etapas concretas e sem ambiguidades (por exemplo, “clique no botão rotulado Save no canto superior direito” — não “encontre a opção de salvar”)
  • Fundamenta o plano em código real — percorre o frontend para encontrar o caminho exato na UI até a funcionalidade
  • Só adiciona fluxos de teste adicionais se houver um caso extremo realmente crítico
Devin envia o plano para você como uma mensagem curta antes de executá-lo, para que você possa fazer ajustes se necessário.

Fase 3: Gravação e execução

Depois que o CI estiver verde e quaisquer comentários da revisão forem resolvidos, Devin executa o teste:
  1. Inicia a gravação — captura a tela inteira
  2. Anota momentos-chave — adiciona rótulos de texto em pontos importantes (por exemplo, “Testando fluxo de login”, “Funcionalidade confirmada em funcionamento”) que aparecem no vídeo final
  3. Executa o plano de teste — interage com o app pelo navegador, seguindo cada etapa
  4. Encerra a gravação — o vídeo é processado automaticamente com anotações e ajustes de velocidade em torno de momentos-chave
  5. Envia o vídeo — anexa a gravação a uma mensagem para que você possa assistir ao vídeo diretamente

Detalhes da Gravação de Vídeo

As gravações de tela do Devin têm vários recursos que as tornam úteis para revisão:
  • Anotações — Rótulos de texto aparecem em momentos-chave do vídeo, marcando o que o Devin está testando. O vídeo desacelera em torno dos pontos anotados para que você possa ver os detalhes.
  • Zoom automático — O vídeo aplica zoom automaticamente onde o Devin clica e interage, movendo-se suavemente para seguir o cursor e afastando novamente durante momentos ociosos.
  • Processamento automático — As gravações brutas são processadas para destacar ações importantes e comprimir o tempo ocioso
  • Enviadas como anexos — Os vídeos são anexados às mensagens na sua sessão, podendo ser visualizados diretamente no aplicativo web do Devin ou no Slack
As gravações são projetadas para serem curtas e focadas — uma checagem rápida com um fluxo principal ponta a ponta que comprova que o recurso funciona. Se você precisar de uma cobertura mais exaustiva, use suas suítes de teste e CI existentes em vez de gravações em vídeo.

Sugestões de Skills

Depois de testar seu app, Devin anota o que tentou e o que funcionou — etapas de configuração, configuração de ambiente, como iniciar o app — e propõe criar ou atualizar uma Skill via PR. Você pode mesclar o PR como está ou ajustá-lo para refinar as instruções. Com o tempo, isso significa que Devin fica melhor em testar seu projeto — os aprendizados de cada sessão se acumulam sobre os anteriores. Você também pode pedir ao Devin que faça isso a qualquer momento (por exemplo, “crie uma skill explicando como testar este app”). Consulte o guia de Skills para ver todos os detalhes sobre criação e gerenciamento de Skills. Aqui está um exemplo de uma skill de teste:
---
name: test-before-pr
description: Run the local dev server and verify pages before opening any PR that touches frontend code.
---

## Setup

1. Install dependencies: `npm install`
2. Start the database: `docker-compose up -d postgres`
3. Run migrations: `npx prisma migrate dev`
4. Start the dev server: `npm run dev`
5. Wait for "Ready on http://localhost:3000"

## Verify

1. Read the git diff to identify which pages changed
2. Open each affected page in the browser
3. Check for: console errors, layout issues, broken links
4. Screenshot each page at desktop (1280px) and mobile (375px) widths

## Before Opening the PR

1. Run `npm run lint` and fix any issues
2. Run `npm test` and confirm all tests pass
3. Include screenshots in the PR description
Ao escrever ou refinar skills, seja específico sobre o que deve ser verificado:

Boas instruções

  • “Teste o fluxo de checkout: adicione um item ao carrinho, vá para o checkout, preencha o formulário e verifique se a página de confirmação do pedido mostra o total correto”
  • “Verifique se o botão de alternância para modo escuro funciona na página de configurações — o texto deve ser legível e nenhum elemento deve desaparecer”
  • “Teste se a exportação em CSV faz o download de um arquivo com os cabeçalhos corretos”

Instruções vagas

  • “Teste tudo”
  • “Garanta que o aplicativo funcione”
  • “Verifique se nada está com problema”

Solução de problemas

O Devin não se ofereceu para testar

O modo de teste fica disponível em sessões em que o Devin cria um PR com alterações de código. Se o Devin não tiver oferecido essa opção, você sempre pode pedir diretamente: “Você pode testar essas alterações e gravar um vídeo?”

Falha na gravação

Se o processamento da gravação falhar, Devin avisará você. As causas mais comuns incluem o app travar durante o teste ou o processamento do vídeo atingir o tempo limite. Devin pode tentar novamente — basta pedir “Tente gravar novamente”. Os arquivos de gravação são armazenados na máquina do Devin, e ele pode enviá-los para você a qualquer momento, se você solicitar.

Devin não consegue acessar o app

Se Devin não conseguir acessar seu app durante os testes (por exemplo, por causa de telas de login ou necessidade de VPN), ele pedirá sua ajuda. Forneça credenciais usando secrets, use o Interactive Browser para concluir manualmente as etapas de autenticação ou conclua o Repo Setup para pré-configurar o acesso e evitar que Devin enfrente esses problemas.