CI/CD là gì?
Continuous Integration and Continuous Delivery là quy trình giúp:
- build
- test
- deploy
một cách tự động.
Trong các công ty công nghệ hiện đại, CI/CD gần như là tiêu chuẩn bắt buộc.
Vai trò của Automation Testing trong CI/CD
Automation testing giúp:
- detect bug sớm
- giảm manual regression
- tăng tốc độ release
Nếu không có automation:
- mỗi lần release phải manual test rất lâu
- risk production bug tăng cao
Quy trình CI/CD phổ biến

Các loại automation test trong CI/CD
1. Smoke Test
Smoke test thường:
- chạy nhanh
- cover critical flow
Ví dụ:
- login
- payment
- create order
2. Regression Test
Regression cover:
- full business flow
- edge case
- integration
3. API Test
API Testing thường chạy rất nhiều trong pipeline vì:
- nhanh
- stable
- reliable
Công cụ CI/CD phổ biến
Jenkins
Rất phổ biến ở enterprise.
GitHub Actions
Được dùng nhiều vì:
- setup dễ
- tích hợp GitHub tốt
Docker
Giúp:
- consistent environment
- stable execution
Best Practice khi chạy automation trong CI/CD
1. Không chạy full regression cho mọi PR
Nếu regression:
- 4 tiếng
thì không thể chạy mỗi lần push code.
Nên:
- smoke test cho PR
- regression nightly
2. Parallel execution
Parallel giúp:
- giảm execution time
- tăng feedback speed
3. Retry hợp lý
Retry giúp:
- giảm flaky fail
Nhưng không nên lạm dụng.
4. Report rõ ràng
Pipeline tốt cần:
- screenshot
- logs
- failure reason
- report dashboard
5. Test environment ổn định
Environment unstable là nguyên nhân lớn khiến pipeline fail random.
Sai lầm phổ biến
Automation quá chậm
Nếu pipeline:
- chạy 2 tiếng
developer sẽ:
- skip checking
- bypass process
Ignore flaky test
Flaky test trong CI/CD cực nguy hiểm vì:
- làm fail pipeline random
- giảm trust
Không monitor test trend
Team mature thường tracking:
- pass rate
- flaky rate
- execution time
Vì sao Playwright đang phổ biến trong CI/CD?
Playwright phù hợp CI/CD vì:
- fast
- parallel
- auto wait
- trace viewer
- Docker support tốt
Kết luận
Automation testing chỉ thực sự phát huy giá trị khi được tích hợp vào CI/CD pipeline.
Một pipeline tốt sẽ giúp:
- release nhanh hơn
- detect bug sớm hơn
- tăng confidence khi deploy production
Đây là lý do CI/CD và automation testing gần như luôn đi cùng nhau trong các dự án hiện đại.
