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

📚 Test Suite là gì?

Một bộ nhiều test case gom lại chạy chung.

1
Hiểu nó là gì

Test Suite là tập hợp các test case liên quan, thường nhóm theo tính năng hoặc theo mục đích, để chạy một lượt cho gọn.

Nói theo đời thường:
Như cả đề thi gồm nhiều câu, thay vì đưa từng câu lẻ cho thí sinh làm rồi lại thu.

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

Đề thi thì làm câu nào trước cũng được. Bộ test thì thứ tự chạy có thể quyết định đỏ hay xanh — nếu ca số 3 để lại dữ liệu rác làm ca số 7 chết.

Bộ test tốt phải chạy được theo bất kỳ thứ tự nào, kể cả chạy song song. Ca test phụ thuộc vào ca test khác là mầm mống của flaky test.

2
Code trông thế nào
describe('Giỏ hàng', () => {
  test('thêm sản phẩm', ...)
  test('xoá sản phẩm', ...)
  test('cập nhật số lượng', ...)
})

Gom theo tính năng, không gom theo “ca dễ trước ca khó sau”.

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

✓ Dùng khi

  • Nhiều ca test cùng phục vụ một tính năng
  • Muốn chạy riêng một nhóm mà không chạy cả nghìn ca
  • Cần báo cáo tách theo từng mảng

✗ Đừng dùng khi

  • Mới có 2-3 ca test tổng cộng
  • Gom bừa cho có nhóm, sau tìm không ra ca nào ở đâu
Chưa cần biết: gắn thẻ (tag), lọc theo nhóm khi chạy, chia nhỏ để chạy song song.
Để 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ộ test chạy quá 10 phút và bạn bắt đầu ngại bấm nút chạy.
4
Đi đâu tiếp

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

Nhìn lại 3 ca test bạn vừa viết ở mục Test Case. Thử hỏi: nếu chạy ca số 3 trước ca số 1 thì có sao không? Nếu có, bạn vừa tìm ra một phụ thuộc ngầm.
← Xem tất cả thuật ngữ