Agente de documentação de API e testes funcionais
Este projeto é uma coleção de agentes trabalhando juntos para escrever a documentação e os testes funcionais de uma API.
Aqui está o fluxo de trabalho:
- ExtractEntrypointsAgent: leia um arquivo e extraia o código de todos os pontos de entrada das rotas da API
- para cada ponto de entrada:
-- WalkCallStackAgent: recupera todas as funções envolvidas na rota da API
-- DocumentationAgent: escreve a documentação da API de acordo com o código das funções
-- WriteTestsAgent: leia a documentação de uma rota API e liste todos os possíveis casos de teste
-- para cada caso de teste:
--- descrever o que seria necessário para testar o caso atual (configuração, desmontagem, teste, matchers, etc.)
--- use a descrição do teste, a documentação da rota e o feedback do executor Jest (se houver) para escrever o código
--- execute o código
--- (repita até que todos os testes passem)
O WriteTestsAgent usa uma cadeia de 2 prompts.
- o primeiro prompt é usado para focar o LLM na escrita das especificações esperadas para cada caso de teste
- o segundo prompt concentra a atenção do LLM em escrever e corrigir o código de teste correspondente (ele analisa a mensagem de erro do executor Jest para corrigir o código iterativamente)
Exemplo
O código presente em exemplos/fastify/doc e exemplos/fastify/testes foi gerado pelos agentes.
Para tentar você mesmo, execute npx ts-node run.ts
e seja paciente