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

🗃️ Test Data là gì?

Dữ liệu dựng riêng để chạy thử.

1
Hiểu nó là gì

Test Data là bộ dữ liệu đầu vào cho test: tài khoản mẫu, đơn hàng giả, file mẫu. Cần sạch và dựng lại được để mỗi lần chạy đều như nhau.

Nói theo đời thường:
Như bột và trứng để đầu bếp tập làm bánh: dùng nguyên liệu riêng, không lôi phần đã bán cho khách ra mà nghịch.

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

Bột và trứng dùng xong là hết. Dữ liệu test thì ở lại — và ca test sau sẽ vấp phải nó.

Kinh điển: ca test tạo tài khoản na@vd.com, chạy lần hai thì đỏ vì email đã tồn tại. Dữ liệu test phải dựng lại đượcdọn sạch được, nếu không bộ test của bạn chỉ xanh đúng lần chạy đầu tiên trên máy mới.

2
Code trông thế nào
// Dễ vỡ — chạy lần hai là đỏ
await taoTaiKhoan('na@vd.com')

// Bền — mỗi lần chạy một email khác nhau
await taoTaiKhoan(`na+${Date.now()}@vd.com`)

Mẹo đơn giản mà cứu được rất nhiều ca: gắn thêm dấu thời gian vào dữ liệu.

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

✓ Dùng khi

  • Mọi ca test cần dữ liệu đầu vào
  • Cần tình huống cụ thể: đơn hàng đã huỷ, tài khoản bị khoá

✗ Đừng dùng khi

  • Dùng dữ liệu thật của khách hàng (vừa nguy hiểm vừa vi phạm quyền riêng tư)
  • Dùng chung một tài khoản cho mọi ca test
Chưa cần biết: factory sinh dữ liệu, seed tự động, dọn dữ liệu sau mỗi ca.
Để 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 phải vào database xoá tay dữ liệu rác trước mỗi lần chạy bộ test.
4
Đi đâu tiếp

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

F12 → Console:
`na+${Date.now()}@vd.com`
Gõ lại lần nữa, ra email khác. Đó là cách đơn giản nhất để ca test chạy được nhiều lần.
← Xem tất cả thuật ngữ