Supertest · Production Workflow และ Capstone
Test Script และ Environment
จัดคำสั่งรัน E2E และแยก environment อย่างชัดเจน
สร้าง command ที่ทีมเรียกเหมือนกัน
E2E ที่รันใน local และ CI ควรเริ่มจาก script เดียวกัน ความแตกต่างของ environment ควรอยู่ที่ config/secret ไม่ใช่การ copy command คนละชุดจน behavior แยกออกจากกัน
แยก command ตามงาน ไม่ตามเครื่อง
| command | ใช้เมื่อ | ข้อกำหนด |
|---|---|---|
| test:e2e | ตรวจ suite หนึ่งรอบ | ต้องจบและคืน exit code |
| test:e2e:watch | แก้ test ใน local | เฝ้าดูไฟล์ได้ |
| test:e2e -- file | debug เฉพาะ suite | ยังใช้ setup และ env เดิม |
กฎสำคัญ
one-shot
CI ห้ามพึ่ง watch mode
process ที่รอ file change จะทำให้ job ค้างและไม่ส่งผล pass/fail กลับมา
signal
exit code เป็น contract ของ script
เมื่อ test fail command ต้อง fail เพื่อให้ CI หยุด pipeline ที่มีปัญหา