IT nói tiếng người
Kiểm thửMốc 1 · Nói chuyện được

💨 Smoke Test là gì?

Thử nhanh vài thứ sống còn xem có chạy nổi không.

1
Hiểu nó là gì

Smoke Test là bộ test ngắn kiểm tra các chức năng quan trọng nhất, chạy ngay khi có bản build mới trước khi test sâu.

Nói theo đời thường:
Như nổ máy xe trước khi lên đường: chưa cần kiểm tra kỹ, chỉ cần biết nó còn nổ được hay chết hẳn.

⚠ Chỗ ẩn dụ này hỏng

Xe nổ máy được thì ít ra còn chạy. Nhưng smoke test xanh không có nghĩa bản build dùng được — chỉ nghĩa là nó chưa chết hẳn.

Nguy hiểm khi có người nhìn smoke test xanh rồi kết luận “ổn rồi, phát hành thôi”. Nó chỉ trả lời đúng một câu: có đáng bỏ công test tiếp không.

2
Code trông thế nào
// Chỉ 5-10 ca, chạy dưới 2 phút
test('@smoke trang chủ mở được', ...)
test('@smoke đăng nhập được', ...)
test('@smoke tìm kiếm ra kết quả', ...)

Tiêu chí chọn: hỏng cái này thì mọi ca test khác đằng nào cũng đỏ.

3
Khi nào bạn dùng nó

✓ Dùng khi

  • Ngay sau khi có bản build mới
  • Sau khi deploy lên môi trường test
  • Trước khi cho cả đội bắt đầu test tay

✗ Đừng dùng khi

  • Thay cho bộ hồi quy đầy đủ
  • Đưa vào quá nhiều ca, mất luôn tính “nhanh”
Chưa cần biết: cổng chặn tự động trong pipeline, tự rollback khi smoke đỏ.
Để dành tới Mốc 3 — Tự sửa được khi nó hỏng: Test đỏ trên CI mà xanh ở máy bạn, và bạn biết bắt đầu tìm từ đâu.
Dấu hiệu bạn đã cần học nó: Khi bạn đã ba lần ngồi chờ bộ test đầy đủ chạy 40 phút chỉ để phát hiện trang chủ không mở nổi.
4
Đi đâu tiếp

🧪 Thử 2 phút, không cần cài gì

Liệt kê ra giấy 5 chức năng mà nếu hỏng thì sản phẩm coi như chết. Đó là bộ smoke test của bạn. Nếu liệt kê quá 10 cái, bạn đang nhầm nó với hồi quy.

⚖ Hay bị nhầm với thuật ngữ khác

← Xem tất cả thuật ngữ