Trong testing, có 3 kiểu “hành hạ” hệ thống rất hay bị nhầm lẫn:
Load Testing – ép làm việc đều đều
Stress Testing – ép đến khi gục
Chaos Testing –… bắn lén 😈
Nếu bạn từng tự hỏi:
“Ủa, đều là làm hệ thống đau mà khác gì nhau?”
Thì bài này dành cho bạn.
Xem hệ thống chạy ổn không khi user dùng đúng như dự kiến.
Response time
Throughput
CPU / Memory
Bottleneck
1,000 user cùng login
500 user checkout trong 5 phút
👉 Hệ thống không bị sốc, chỉ đang… đi làm giờ hành chính.
Trước release lớn
Khi có feature ảnh hưởng nhiều user
Khi cần benchmark hiệu năng
Tìm:
Giới hạn chịu đựng
Điểm gãy
Hành vi khi quá tải
Max user bao nhiêu thì sập?
Sập kiểu gì?
Có phục hồi được không?
Tăng user từ 1,000 → 10,000 → 50,000
Gửi request liên tục cho đến khi timeout
👉 Stress test không hỏi “có chạy không”,
mà hỏi “chết lúc nào”.
Có crash toàn bộ không?
Có queue request không?
Sau khi giảm tải → hệ thống có sống lại không?
Test khả năng chịu lỗi và phục hồi.
Failure của service
Network chập chờn
Dependency chết
Data inconsistency
Kill payment service giữa lúc checkout
Delay API 10 giây
Random restart pod
👉 Chaos test không cần đông user,
chỉ cần đúng thời điểm xấu.
User thấy gì?
Có fallback không?
Có dead-end scenario không?
Dữ liệu có lệch không?
| Tiêu chí | Load | Stress | Chaos |
|---|---|---|---|
| Mục tiêu | Chạy ổn | Tìm giới hạn | Chịu lỗi |
| Tác động | Dự đoán được | Tăng dần | Bất ngờ |
| User | Nhiều | Rất nhiều | Không cần nhiều |
| Failure | Không mong muốn | Có thể xảy ra | Chủ động tạo |
| Focus | Performance | Stability | Resilience |
❌ Dùng stress test để test resilience
❌ Dùng load test để test error handling
❌ Nghĩ chaos test = phá bừa
📌 Mỗi loại test trả lời một câu hỏi khác nhau.
Muốn biết hệ thống chạy mượt không
Chuẩn bị mở chiến dịch lớn
Muốn biết giới hạn chịu tải
Chuẩn bị traffic spike
Hệ thống phân tán
Microservices / Cloud
Lo nhất là… sự cố bất ngờ
👉 Dự án trưởng thành thường dùng cả 3.
Tester không cần:
Viết tool load
Setup infra
Tester rất nên:
Đặt câu hỏi đúng
Thiết kế scenario xấu
Quan sát trải nghiệm user
Phát hiện dead-end flow
💡 Tester là người hỏi: “User sẽ khổ thế nào nếu chuyện này xảy ra?”
Load Test: “Chạy có mượt không?”
Stress Test: “Chết lúc nào?”
Chaos Test: “Chết rồi có sống lại không?”
Hệ thống tốt không phải là hệ thống chưa từng sập,
mà là hệ thống sập mà không kéo cả thế giới đi theo.
😈 Test đúng kiểu
☕ Ngủ ngon khi deploy
You need to login in order to like this post: click here
YOU MIGHT ALSO LIKE