เวิร์กโฟลว์เอเจนต์ครบวงจร: ตั้งแต่ PRD ถึงวงจรการทดสอบด้วย Apidog CLI

มาดูตัวอย่างจริงกัน: ทีมหนึ่งมีเอกสาร PRD สำหรับการคืนเงินคำสั่งซื้อและโค้ดเบส มาดูกันว่า Agent ใช้ Apidog CLI + SKILL เพื่อสร้าง OpenAPI, สร้างชุดทดสอบ, ตรวจสอบความถูกต้อง และยืนยันได้อย่างไร

Oliver Kingsley

Oliver Kingsley

6 July 2026

เวิร์กโฟลว์เอเจนต์ครบวงจร: ตั้งแต่ PRD ถึงวงจรการทดสอบด้วย Apidog CLI

Apidog สำหรับองค์กร

การติดตั้งแบบ On-Premises

SSO & RBAC

รองรับมาตรฐาน SOC 2

สำรวจ Apidog Enterprise

นี่คือซีรีส์ 10 ตอนที่เล่าถึงวิธีที่ Apidog พัฒนา Apidog CLI ซึ่งเป็นเครื่องมือบรรทัดคำสั่งสำหรับการทดสอบ API และการจัดการวงจรชีวิต API คุณสามารถอ่านตามลำดับหรือเลือกอ่านตอนที่สนใจได้เลย:

หัวข้อ จุดเน้น
1 เราสร้างเครื่องมือ MCP ไป 126 ตัว แต่นั่นไม่ใช่ทางออกที่ดีที่สุดสำหรับ Agent การค้นพบปัญหา
2 ทำไมเราถึงพัฒนา Apidog CLI ใหม่ทั้งหมด การพัฒนาสถาปัตยกรรม
3 กฎทอง: CLI สร้างข้อเท็จจริง, โมเดลดำเนินการตามข้อเท็จจริง ปรัชญาหลัก
4 agentHints: การสอน CLI ให้สื่อสารกับ Agent ผลลัพธ์ที่มีโครงสร้าง
5 SKILL: การส่งมอบประสบการณ์การดำเนินงานเป็นโค้ด ประสบการณ์การดำเนินงาน
6 ตัวเลขไม่โกหก: ลดการเรียกใช้เครื่องมือลง 30%, ลดโทเค็นลง 25% ผลลัพธ์เชิงปริมาณ
7 จาก PRD สู่ Testing Loop: เวิร์กโฟลว์ Agent ที่สมบูรณ์ด้วย Apidog CLI บทช่วยสอนเชิงปฏิบัติ
8 ทำไมความเข้ากันได้กับ CI/CD จึงเป็นสิ่งที่ไม่สามารถต่อรองได้สำหรับเครื่องมือ Agent มุมมองของ DevOps
9 AI Branch: การเปลี่ยนแปลงโปรเจกต์ที่ปลอดภัยยิ่งขึ้นด้วย AI Agents เลเยอร์ความปลอดภัย
10 Spec-First เป็นเรื่องเมื่อวานนี้ ยินดีต้อนรับสู่ Skill-First. วิสัยทัศน์และอนาคต

มาดูตัวอย่างจริง: ทีมมี PRD และโค้ดเบสสำหรับการคืนเงินคำสั่งซื้อ ลองดูว่า Agent ใช้ Apidog CLI + SKILL อย่างไรในการสร้าง OpenAPI, สร้างการทดสอบ, ตรวจสอบความถูกต้อง และยืนยันผล ตั้งแต่ต้นจนจบ

สถานการณ์

มาทำให้ทุกอย่างเป็นรูปธรรมด้วยเวิร์กโฟลว์จริงกัน

บริบท:

ทีมเพิ่งเขียน PRD "การคืนเงินคำสั่งซื้อ" เสร็จสิ้น โค้ดเบสมีเส้นทาง (routes) และคอนโทรลเลอร์ที่เกี่ยวข้องอยู่แล้ว

คำขอของผู้ใช้ถึง Agent:

"สร้างการทดสอบ API สำหรับฟังก์ชันการคืนเงินตาม PRD และโค้ดเบส จากนั้นรันการยืนยัน"

ปัญหาของแนวทางเดิม

ด้วยเครื่องมือ MCP (Multi-Component Platform) Agent ต้องเผชิญกับสถานการณ์ที่กลืนไม่เข้าคายไม่ออกหลายอย่าง:

จุดตัดสินใจ ความไม่แน่นอน
ค้นหาโปรเจกต์ก่อน? หรือสร้าง Endpoint ก่อน?
เขียน Test Case ก่อน? หรือสร้าง Schema ก่อน?
รันการทดสอบโดยตรง? หรืออ่านทรัพยากรกลับมาก่อน?
เครื่องมือใดสำหรับแต่ละขั้นตอน? ค้นหาผ่าน 126 เครื่องมือ

Agent ใช้ความพยายามอย่างมากเพียงแค่ตัดสินใจเส้นทาง ไม่ใช่การดำเนินการงาน


เส้นทาง CLI + SKILL

CLI + SKILL ตอบสนองกระบวนการ R&D จริงด้วยลำดับที่ชัดเจน:

สร้าง OpenAPI จาก PRD & โค้ดเบส
        ↓
นำเข้าสู่ Apidog
        ↓
เพิ่ม Test Case สำหรับ Single-Endpoint
        ↓
ตรวจสอบความถูกต้องก่อนเขียน
        ↓
สร้าง Test Scenario สำหรับกระบวนการทางธุรกิจ
        ↓
ตรวจสอบความถูกต้องก่อนเขียน
        ↓
รันการทดสอบอัตโนมัติ

มาดูแต่ละขั้นตอนกัน


ขั้นตอนที่ 1: สร้าง OpenAPI และนำเข้า

Agent อ่าน PRD และโค้ดเบส จากนั้นสร้างข้อมูลจำเพาะ OpenAPI

ส่วนหนึ่งของ PRD:

Order Refund API

POST /api/orders/{orderId}/refund
- Request body: { "reason": string, "amount": number }
- Response: { "refundId": string, "status": string, "processedAt": datetime }

GET /api/orders/{orderId}/refund/{refundId}
- Response: { "refundId": string, "status": string, "amount": number }

Agent สร้าง OpenAPI:

{
  "openapi": "3.0.0",
  "paths": {
    "/api/orders/{orderId}/refund": {
      "post": {
        "summary": "Create refund request",
        "parameters": [...],
        "requestBody": {...},
        "responses": {...}
      }
    },
    "/api/orders/{orderId}/refund/{refundId}": {
      "get": {
        "summary": "Get refund status",
        ...
      }
    }
  }
}

นำเข้าสู่ Apidog:

apidog import --project <projectId> --format openapi --file ./openapi.json

เอาต์พุต CLI:

{
  "success": true,
  "data": {
    "importedEndpoints": ["POST /refund", "GET /refund/{refundId}"],
    "endpointIds": ["ep-001", "ep-002"]
  },
  "agentHints": {
    "summary": "นำเข้า OpenAPI สำเร็จแล้ว สร้าง 2 Endpoint.",
    "nextSteps": [
      "แสดงรายการ Endpoint ที่นำเข้าเพื่อยืนยันโครงสร้าง",
      "เพิ่ม Test Case สำหรับแต่ละ Endpoint",
      "สร้าง Test Scenario สำหรับกระบวนการคืนเงินที่สมบูรณ์"
    ]
  }
}

ขั้นตอนที่ 2: Test Case สำหรับ Single-Endpoint

Agent จะเน้นที่ "refund endpoint" ก่อน

Agent อ่าน Endpoint:

apidog endpoint get ep-001 --project <projectId>

CLI คืนค่าโครงสร้าง Endpoint:

{
  "id": "ep-001",
  "method": "POST",
  "path": "/api/orders/{orderId}/refund",
  "requestBody": {
    "schema": {
      "type": "object",
      "properties": {
        "reason": { "type": "string" },
        "amount": { "type": "number" }
      },
      "required": ["reason", "amount"]
    }
  },
  "responses": {
    "200": {...}
  }
}

Agent สร้าง Test Case:

{
  "name": "สร้างการคืนเงิน - สำเร็จ",
  "endpointId": "ep-001",
  "request": {
    "path": "/api/orders/order-123/refund",
    "body": {
      "reason": "คำขอของลูกค้า",
      "amount": 99.99
    }
  },
  "assertions": [
    {
      "subject": "responseJson.status",
      "comparator": "equal",
      "target": "ดำเนินการแล้ว"
    }
  ]
}

ตรวจสอบความถูกต้องก่อนเขียน:

apidog cli-schema validate test-case-create --file ./test-case-create.json

ผลการตรวจสอบความถูกต้องของ CLI:

{
  "success": true,
  "agentHints": {
    "summary": "โครงสร้าง Test Case ถูกต้อง",
    "nextSteps": [
      "สร้าง Test Case ใน Apidog",
      "อ่าน Test Case ที่สร้างขึ้นกลับมาเพื่อยืนยัน",
      "เพิ่ม Assertions เพิ่มเติมหากจำเป็น"
    ]
  }
}

สร้าง Test Case:

apidog test-case create --project <projectId> --file ./test-case-create.json

เอาต์พุต CLI:

{
  "success": true,
  "data": {
    "id": "tc-001",
    "name": "สร้างการคืนเงิน - สำเร็จ"
  },
  "agentHints": {
    "summary": "สร้าง Test Case สำเร็จแล้ว",
    "nextSteps": [
      "อ่าน Test Case tc-001 กลับมาเพื่อยืนยัน Assertions",
      "สร้าง Test Case สำหรับ GET /refund/{refundId}",
      "สร้าง Test Scenario สำหรับกระบวนการคืนเงินที่สมบูรณ์"
    ]
  }
}

ขั้นตอนที่ 3: Test Scenario สำหรับกระบวนการที่สมบูรณ์

ตาม PRD กระบวนการทางธุรกิจที่สมบูรณ์คือ:

สร้างคำสั่งซื้อ → ชำระเงิน → คืนเงิน → สอบถามสถานะการคืนเงิน

Agent สร้าง Scenario:

{
  "name": "กระบวนการคืนเงินคำสั่งซื้อที่สมบูรณ์",
  "steps": [
    { "type": "case", "caseId": "tc-create-order" },
    { "type": "case", "caseId": "tc-pay" },
    { "type": "case", "caseId": "tc-001" },
    { "type": "case", "caseId": "tc-get-refund" }
  ]
}

ตรวจสอบความถูกต้องก่อนเขียน:

apidog cli-schema validate test-scenario-update --file ./scenario-update.json

สร้าง Scenario:

apidog test-scenario create --project <projectId> --file ./scenario-update.json

ขั้นตอนที่ 4: รันการยืนยัน

เมื่อ Test Case และ Scenario พร้อมแล้ว:

apidog run --project <projectId> \
  --test-scenario scenario-001 \
  --environment env-production \
  -r "cli,html,junit" \
  --out-dir ./apidog-reports

เอาต์พุต CLI:

{
  "success": true,
  "stats": {
    "total": 4,
    "passed": 4,
    "failed": 0
  },
  "reportFiles": {
    "cli": "./apidog-reports/cli-report.txt",
    "html": "./apidog-reports/report.html",
    "junit": "./apidog-reports/junit.xml"
  },
  "agentHints": {
    "summary": "การทดสอบทั้งหมดผ่าน สำเร็จ 4 ขั้นตอน",
    "nextSteps": [
      "ตรวจสอบรายงาน HTML สำหรับผลลัพธ์โดยละเอียด",
      "หากเกิดข้อผิดพลาด ให้แก้ไขโดยใช้รายละเอียดข้อผิดพลาดของ CLI",
      "รวมการทดสอบนี้เข้ากับ CI Pipeline"
    ]
  }
}

ห่วงโซ่ที่สมบูรณ์

ตอนนี้องค์ประกอบทั้งหมดเชื่อมต่อกันแล้ว:

องค์ประกอบ สถานะ
PRD อ่านและประมวลผลแล้ว
โค้ดเบส วิเคราะห์เส้นทางแล้ว
OpenAPI สร้างและนำเข้าแล้ว
Endpoint assets สร้างใน Apidog แล้ว
การทดสอบ Single-Endpoint สร้างและตรวจสอบความถูกต้องแล้ว
Scenario ทางธุรกิจ สร้างและยืนยันแล้ว

ทุกอย่างสามารถตรวจสอบและติดตามได้


agentHints ตลอดกระบวนการ

สังเกตว่า agentHints แนะนำแต่ละการเปลี่ยนผ่านอย่างไร:

หลังจาก agentHints แนะนำ
นำเข้า Endpoint "แสดงรายการ Endpoint, เพิ่ม Test Case"
สร้าง Test Case "อ่านกลับมา, สร้าง Test Case เพิ่มเติม, สร้าง Scenario"
สร้าง Scenario "เพิ่ม Assertions, ตรวจสอบความถูกต้อง, รัน"
รันการทดสอบ "ตรวจสอบรายงาน, แก้ไขข้อบกพร่องหากจำเป็น, รวมเข้ากับ CI"

Agent ไม่ต้องเดาเลยว่าจะทำอะไรต่อไป


การเปรียบเทียบ: MCP vs. CLI + SKILL สำหรับงานนี้

มิติ แนวทาง MCP แนวทาง CLI + SKILL
จุดเริ่มต้น Agent ค้นหาเครื่องมือโปรเจกต์ SKILL ระบุประเภทงาน
การสร้าง Endpoint Agent เดาว่าเครื่องมือไหน, ฟิลด์ไหน CLI นำเข้าจาก OpenAPI
การสร้าง Test Case ลองใหม่หลายครั้งกับข้อผิดพลาดของฟิลด์ ตรวจสอบความถูกต้องภายในก่อนเขียน
การสร้าง Scenario Agent เขียนโครงสร้างด้วยตนเอง นำเข้าขั้นตอน, อ่านกลับ, อัปเดต
การยืนยัน Agent ค้นหาเครื่องมือรัน agentHints แนะนำหลังจาก Scenario
จำนวนขั้นตอนทั้งหมด ~20-25 การเรียกใช้พร้อมการลองใหม่ ~10-12 การเรียกใช้ที่ตรวจสอบความถูกต้องแล้ว

อะไรจะเกิดขึ้นต่อไป

ตัวอย่างเชิงปฏิบัตินี้แสดงให้เห็นว่า CLI + SKILL ทำงานอย่างไรในเวิร์กโฟลว์จริง

แต่มีรากฐานอยู่ภายใต้สิ่งเหล่านี้ทั้งหมด: ความเข้ากันได้กับ CI/CD

ในตอนที่ 8 ทำไมความเข้ากันได้กับ CI/CD จึงเป็นสิ่งที่ไม่สามารถต่อรองได้สำหรับเครื่องมือ Agent เราจะสำรวจว่าทำไม apidog run จึงตอบสนองทั้ง CI pipeline และ AI Agent — และเหตุใดวัตถุประสงค์คู่จึงมีความสำคัญต่อการออกแบบเครื่องมือที่ยั่งยืน


ประเด็นสำคัญ


ดาวน์โหลด Apidog เพื่อ ออกแบบ, จำลอง, ทดสอบ, และ จัดทำเอกสาร API ในพื้นที่ทำงานเดียว เรียนรู้เพิ่มเติมเกี่ยวกับ Apidog CLI สำหรับการทดสอบ API ด้วยบรรทัดคำสั่ง, การทำงานอัตโนมัติของ CI และเวิร์กโฟลว์ AI Agent

button

ฝึกการออกแบบ API แบบ Design-first ใน Apidog

ค้นพบวิธีที่ง่ายขึ้นในการสร้างและใช้ API