GitLab CI/CD
คู่มือนี้อธิบายวิธีผสาน LoadFocus JMeter API Client กับ GitLab CI/CD สำหรับการทดสอบประสิทธิภาพอัตโนมัติ
ขั้นตอนการตั้งค่า
1. จัดเก็บ Credentials เป็น GitLab CI/CD Variables
ก่อนอื่น จัดเก็บ LoadFocus API credentials เป็น GitLab CI/CD variables:
- ไปที่โปรเจกต์ GitLab ของคุณ
- นำทางไปที่ Settings > CI/CD > Variables
- เพิ่ม variables ต่อไปนี้:
LOADFOCUS_API_KEY: API key ของ LoadFocus (ทำเครื่องหมายเป็น "Masked")LOADFOCUS_TEAM_ID: Team ID ของ LoadFocus
2. สร้าง GitLab CI/CD Pipeline
สร้างหรืออัปเดตไฟล์ .gitlab-ci.yml ใน repository ของคุณ:
stages:- build- test- performance- deployvariables:NODE_VERSION: "16"build:stage: buildimage: node:${NODE_VERSION}script:- npm install- npm run buildartifacts:paths:- dist/expire_in: 1 weektest:stage: testimage: node:${NODE_VERSION}script:- npm install- npm testperformance_test:stage: performanceimage: node:${NODE_VERSION}script:- npm install -g @loadfocus/loadfocus-api-client- loadfocus-api config set apikey $LOADFOCUS_API_KEY- loadfocus-api config set teamid $LOADFOCUS_TEAM_ID- |loadfocus-api jmeter run-test \--name "GitLab_${CI_PROJECT_NAME}_${CI_COMMIT_REF_NAME}" \--thresholds "avgresponse<=200,errors==0,p95<=250" \--format json > performance_results.jsonartifacts:paths:- performance_results.jsonexpire_in: 1 weekwhen: alwaysonly:- main- developdeploy:stage: deployscript:- echo "Deploying application..."only:- mainwhen: on_success
เคล็ดลับสำหรับการผสาน GitLab CI/CD
- Caching: แคช npm dependencies เพื่อเร่งการรัน pipeline
- การตั้งค่า Timeout: ตั้ง timeouts สำหรับทดสอบประสิทธิภาพที่ใช้เวลานาน
- Manual Triggers: อนุญาตให้ทดสอบประสิทธิภาพถูกทริกเกอร์ด้วยตนเอง
- การกำหนดค่าทดสอบแบบไดนามิก: ใช้ GitLab predefined variables เพื่อกำหนดค่าทดสอบแบบไดนามิก
- การแจ้งเตือน: ส่งการแจ้งเตือนเมื่อทดสอบประสิทธิภาพล้มเหลว
สำหรับข้อมูลเพิ่มเติม ดู เอกสาร GitLab CI/CD และ เอกสาร LoadFocus API Client