On this page
Đặt vấn đề
Website thương mại điện tử cần một form để người dùng điền thông tin và đặt hàng.
Form này sẽ bao gồm các trường thông tin như tên, email, số điện thoại, địa chỉ giao hàng và lựa chọn phương thức thanh toán.
Nhiệm vụ của học viên là viết các testcase cho form này, áp dụng phương pháp phân vùng tương đương (Equivalence Partitioning) và giá trị biên (Boundary Value Analysis).
Yêu cầu (Requirements)
Họ và tên (Full Name)
Loại dữ liệu: Chuỗi văn bản.
Điều kiện hợp lệ: Bắt buộc và có độ dài từ 2 đến 100 ký tự, không chứa số hoặc ký tự đặc biệt.
Ví dụ không hợp lệ: "12345", "John@Doe"
Email
Loại dữ liệu: Địa chỉ email.
Điều kiện hợp lệ: Bắt buộc và phải chứa ký tự "@" và "." trong phần tên miền.
Ví dụ không hợp lệ: "john.doe", "johndoe@com", "john@doe."
Số điện thoại (Phone Number)
Loại dữ liệu: Chuỗi số.
Điều kiện hợp lệ: Bắt buộc và có 10 chữ số, bắt đầu bằng "0", không có ký tự khác.
Ví dụ không hợp lệ: "0987abc", "123", "0987654321x"
Địa chỉ giao hàng (Shipping Address)
Loại dữ liệu: Địa chỉ văn bản.
Điều kiện hợp lệ: Bắt buộc và có độ dài từ 5 đến 200 ký tự, không quá dài.
Phương thức thanh toán (Payment Method)
Loại dữ liệu: Dropdown (Chọn 1 trong các phương thức thanh toán)
Các giá tr ị hợp lệ: "Thanh toán qua thẻ tín dụng", "Thanh toán khi nhận hàng", "Thanh toán qua ví điện tử".
Ví dụ không hợp lệ: Không chọn phương thức thanh toán.
Hướng dẫn áp dụng các phương pháp
Phân vùng tương đương (Equivalence Partitioning)
Họ và tên (Full Name)
Hợp lệ: Tên có độ dài từ 1 đến 100 ký tự.
Không hợp lệ: Tên rỗng, tên dài hơn 100 ký tự, tên chứa số hoặc ký tự đặc biệt.
Email
Hợp lệ: Địa chỉ email đúng định dạng.
Không hợp lệ: Địa chỉ email không đúng định dạng.
Số điện thoại (Phone Number)
Hợp lệ: Số điện thoại đúng định dạng (10 chữ số, bắt đầu bằng "0").
Không hợp lệ: Số điện thoại không đúng định dạng.
Địa chỉ giao hàng (Shipping Address)
Hợp lệ: Địa chỉ có độ dài từ 5 đến 200 ký tự.
Không hợp lệ: Địa chỉ rỗng, địa chỉ dài hơn 200 ký tự, địa chỉ chứa ký tự đặc biệt.
Phương thức thanh toán (Payment Method)
Hợp lệ: Chọn một trong các phương thức thanh toán.
Không hợp lệ: Không chọn phương thức thanh toán.
Giá trị biên (Boundary Value Analysis)
Họ và tên (Full Name)
Biên dưới: 1 ký tự (hợp lệ), 0 ký tự (không hợp lệ).
Biên trên: 100 ký tự (hợp lệ), 101 ký tự (không hợp lệ).
Email
Biên dưới: Địa chỉ email hợp lệ (ví dụ: "a@b.com "), địa chỉ email không hợp lệ (ví dụ: "a@b").
Biên trên: Địa chỉ email hợp lệ (ví dụ: "a@b.com "), địa chỉ email không hợp lệ (ví dụ: "a@b.c ").
Số điện thoại (Phone Number)
Biên dưới: 10 chữ số (hợp lệ), 9 chữ số (không hợp lệ).
Biên trên: 10 chữ số (hợp lệ), 11 chữ số (không hợp lệ).
Địa chỉ giao hàng (Shipping Address)
Biên dưới: 5 ký tự (h ợp lệ), 4 ký tự (không hợp lệ).
Biên trên: 200 ký tự (hợp lệ), 201 ký tự (không hợp lệ).
Phương thức thanh toán (Payment Method)
Biên dưới: Chọn một phương thức thanh toán (hợp lệ), không chọn phương thức nào (không hợp lệ).
Biên trên: Chọn một phương thức thanh toán (hợp lệ), không chọn phương thức nào (không hợp lệ).
Các trường hợp họ và tên không hợp lệ thường thấy trong thực tế
1. Họ và tên có ký tự số
Ví dụ : John123 Doe, 1234 John
Giải thích : Họ và tên không được phép chứa số.
2. Họ và tên có ký tự đặc biệt
Ví dụ : John@Doe, J@hn Doe, John! Doe
Giải thích : Họ và tên không thể chứa ký tự đặc biệt như @, !, #, v.v.
3. Họ và tên quá ngắn (dưới 2 ký tự)
Ví dụ : J D, A B
Giải thích : Họ và tên phải có ít nhất 2 ký tự.
4. Họ và tên quá dài (vượt quá 100 ký tự)
Ví dụ : John Doe John Doe John Doe John Doe John Doe John Doe John Doe John Doe John Doe John Doe John Doe John Doe John Doe John Doe John Doe John Doe John Doe
Giải thích : Họ và tên không được phép dài quá 100 ký tự.
5. Họ và tên có khoảng trắng thừa
Ví dụ : John Doe, John Doe, John Doe
Giải thích : Không nên có khoảng trắng thừa ở đầu, giữa hoặc cuối tên.
6. Họ và tên chỉ có 1 phần tên (Không có họ)
Ví dụ : John, Doe
Giải thích : Họ và tên phải có cả họ và tên, không chỉ một phần.
7. Họ và tên chỉ có ký tự đặc biệt hoặc dấu cách
Ví dụ : #@!$, (chỉ có khoảng trắng)
Giải thích : Họ và tên không thể chỉ là các ký tự đặc biệt hoặc chỉ chứa khoảng trắng.
8. Họ và tên có ký tự dấu cách liên tiếp
Ví dụ : John Doe (2 khoảng trắng giữa họ và tên)
Giải thích : Không thể có dấu cách liên tiếp giữa họ và tên.
9. Họ và tên có dấu nháy đơn hoặc nháy kép
Ví dụ : John 'Doe', John "Doe"
Giải thích : Họ và tên không thể chứa dấu nháy đơn hoặc nháy kép.
10. Họ và tên chứa ký tự ngoài bảng chữ cái
Ví dụ : John, Doe, John. Doe, John? Doe
Giải thích : Họ và tên không thể chứa dấu chấm, dấu phẩy hoặc dấu chấm hỏi.
11. Họ và tên có số lượng ký tự quá dài cho từng phần
Ví dụ : JohnJohnJohnJohnJohnJohnJohnJohnJohnJohnJohnJohnJohnJohnJohnJohnDoe
Giải thích : Mặc dù tổng cộng họ và tên có thể hợp lệ về độ dài, nhưng mỗi phần của họ và tên không được quá dài (mỗi phần không quá 50 ký tự, ví dụ).
12. Họ và tên chứa các ký tự có dấu
Ví dụ : José Doe, Nguyễn Văn A
Giải thích : Nếu không hỗ trợ ký tự có dấu, sẽ cần kiểm tra xem hệ thống có chấp nhận hay không. Tuy nhiên, trường hợp này là hợp lệ trong nhiều ngữ cảnh.
13. Họ và tên có chữ cái viết hoa không hợp lý
Ví dụ : jOHN DOE, john doe
Giải thích : Một số hệ thống yêu cầu chữ cái đầu tiên của họ và tên phải viết hoa, và các chữ cái còn lại là viết thường.
Các trường hợp email không hợp lệ thường thấy trong thực tế
1. Email không có ký tự '@'
Ví dụ : johndoe.com, john.doe.com
Giải thích : Email phải có ký tự '@' để phân tách tên người dùng và tên miền.
2. Email không có tên miền
Ví dụ : john.doe@, johndoe@.com
Giải thích : Email phải có tên miền hợp lệ sau ký tự '@'.
3. Email có ký tự đặc biệt không hợp lệ
Ví dụ : john.doe@exam!ple.com, john@doe#.com
Giải thích : Email không thể chứa các ký tự đặc biệt như !, #, $, %, v.v.
4. Email quá ngắn (dưới 5 ký tự)
Ví dụ : j@d.c, a@b.c
Giải thích : Email phải có ít nhất 5 ký tự.
5. Email quá dài (vượt quá 254 ký tự)
Ví dụ : john.doe@ + a.repeat(245) + .com
Giải thích : Email không được phép dài quá 254 ký tự.
6. Email có khoảng trắng thừa
Ví dụ : john.doe@example.com, john.doe@ example.com, john.doe@example.com
Giải thích : Không nên có khoảng trắng thừa ở đầu, giữa hoặc cuối email.
7. Email chỉ có ký tự đặc biệt hoặc dấu cách
Ví dụ : #@!$, (chỉ có khoảng trắng)
Giải thích : Email không thể chỉ là các ký tự đặc biệt hoặc chỉ chứa khoảng trắng.
8. Email có dấu nháy đơn hoặc nháy kép
Ví dụ : john 'doe'@example.com, john "doe"@example.com
Giải thích : Email không thể chứa dấu nháy đơn hoặc nháy kép.
9. Email chứa ký tự ngoài bảng chữ cái
Ví dụ : john, doe@example.com, john.doe@example.com.
Giải thích : Email không thể chứa dấu chấm, dấu phẩy hoặc dấu chấm hỏi.
10. Email có số lượng ký tự quá dài cho từng phần
Ví dụ : john.doe@ + a.repeat(245) + .com
Giải thích : Mặc dù tổng cộng email có thể hợp lệ về độ dài, nhưng mỗi phần của email không được quá dài (mỗi phần không quá 64 ký tự, ví dụ).
Bài tập
Viết các testcase chi tiết cho từng trường dữ liệu trong form, bao gồm cả các trường hợp hợp lệ và không hợp lệ.
Sử dụng cả hai phương pháp phân vùng tương đương và giá trị biên để đảm bảo rằng tất cả các trường hợp đều được kiểm tra.
Đảm bảo rằng các testcase của bạn bao gồm các bước thực hiện, dữ liệu đầu vào, kết quả mong đợi và kết quả thực tế (nếu có thể).
Trình bày các testcase của bạn dưới dạng bảng hoặc danh sách để dễ dàng theo dõi và đánh giá.