เอกสาร API และตัวแทนการทดสอบการทำงาน
โปรเจ็กต์นี้คือชุดของตัวแทนที่ทำงานร่วมกันเพื่อเขียนเอกสารและการทดสอบการทำงานของ API
นี่คือขั้นตอนการทำงาน:
- ExtractEntrypointsAgent: อ่านไฟล์และแตกโค้ดของจุดเข้าใช้งานเส้นทาง API ทั้งหมด
- สำหรับแต่ละจุดเข้าใช้งาน:
-- WalkCallStackAgent: ดึงฟังก์ชันทั้งหมดที่เกี่ยวข้องกับเส้นทาง API
-- DocumentationAgent: เขียนเอกสาร API ตามโค้ดของฟังก์ชัน
-- WriteTestsAgent: อ่านเอกสารประกอบของเส้นทาง API และแสดงรายการกรณีทดสอบที่เป็นไปได้ทั้งหมด
-- สำหรับแต่ละกรณีทดสอบ:
--- อธิบายสิ่งที่จำเป็นในการทดสอบกรณีปัจจุบัน (การตั้งค่า การแยกส่วน การทดสอบ ตัวจับคู่ ฯลฯ)
--- ใช้คำอธิบายการทดสอบ เอกสารเส้นทาง และผลตอบรับจาก Jest runner (ถ้ามี) ในการเขียนโค้ด
--- เรียกใช้โค้ด
--- (ทำซ้ำจนกว่าการทดสอบทั้งหมดจะผ่าน)
WriteTestsAgent ใช้เชน 2 พรอมต์
- พรอมต์แรกใช้เพื่อเน้น LLM ในการเขียนข้อกำหนดที่คาดหวังสำหรับกรณีทดสอบแต่ละกรณี
- พรอมต์ที่สองเน้นความสนใจของ LLM ในการเขียนและแก้ไขรหัสทดสอบที่เกี่ยวข้อง (จะวิเคราะห์ข้อความแสดงข้อผิดพลาดจาก Jest runner เพื่อแก้ไขรหัสซ้ำ)
ตัวอย่าง
โค้ดที่มีอยู่ใน example/fastify/doc และ examples/fastify/tests ถูกสร้างขึ้นโดยตัวแทน
หากต้องการลองด้วยตัวเอง ให้รัน npx ts-node run.ts
และอดทนรอ