Một số kỹ thuật thiết kế test case (P2)
2. Kỹ thuật phân tích giá trị biên (Boundary-value Analysis)
2.1. Ý tưởng:
Hầu hết các lỗi được tìm thấy khi kiểm tra ở các giá trị biên. Vì vậy phương pháp này tập trung vào việc kiểm thử các giá trị biên này.
Phân tích giá trị biên là trường hợp đặc biệt của phân vùng tương đương, dựa trên những phân vùng tương đương tester sẽ xác định giá trị biên giữa những phân vùng này và lựa chọn test case phù hợp.
Các case chuẩn được lựa chọn dựa vào quy tắc sau:
Giá trị biên nhỏ nhất – 1
Giá trị biên nhỏ nhất
Giá trị biên lớn nhât
Giá trị biên lớn nhất + 1
Nhưng nếu bạn muốn kiểm tra sâu hơn thì bạn cũng có thể lựa chọn theo quy tắc:
Giá trị biên nhỏ nhất – 1
Giá trị biên nhỏ nhất
Giá trị biên nhỏ nhất + 1
Giá trị biên lớn nhất – 1
Giá trị biên lớn nhất
Giá trị biên lớn nhất + 1
2.2. Ví dụ:
(*) Form login bao gồm:
User: Text-box
PassWord: Text-box
Yêu cầu:
Thiết kế test case sao cho người dùng nhập vào ô text-box user chỉ cho nhập ký tự chữ với độ dài trong khoảng [6-20]
Nếu nhập giá trị với số ký tự không nằm trong khoảng [6-20] => hiển thị lỗi “Bạn chỉ được phép nhập chuỗi từ 6 => 20 ký tự”
Nếu để trống ô hoặc nhập ký tự khác ký tự chữ => hiển thị lỗi “Tên người dùng chưa hợp lệ! Vui lòng nhập ký tự chữ”
(*)Theo phương pháp phân vùng tương đương ở trên ta xây dựng được các miền tương đương:
+ Phân vùng 1: Nhập giá trị hợp lệ từ 6 => 20
+ Phân vùng 2: Nhập giá trị không hợp lệ < 6 ký tự
+ Phân vùng 3: Nhập giá trị không hợp lệ > 20 ký tự
+ Phân vùng 4: Trường hợp để trống không nhập gì hay nhập ký tự không phải dạng chữ
Áp dụng kỹ thuật phân tích giá trị biên ta chọn được các case sau:
+ Case 1: Nhập giá trị với 5 ký tự => hiển thị lỗi “Bạn chỉ được phép nhập chuỗi từ 6 => 20 ký tự”
+ Case 2: Nhập giá trị với 6 ký tự => pass
+ Case 3: Nhập giá trị với 20 ký tự => pass
+ Case 4: Nhập giá trị với 21 ký tự => hiển thị lỗi “Bạn chỉ được phép nhập chuỗi từ 6 => 20 ký tự”
+ Case 5: Để trống không nhập gì hay nhập ký tự không phải dạng chữ => hiển thị lỗi “Tên người dùng chưa hợp lệ! Vui lòng nhập ký tự chữ
2.3. Ưu/ nhược điểm:
(*) Ưu điểm:
Thay vì phải test hết toàn bộ các giá trị trong từng vùng tương đương, kỹ thuật phân tích giá trị biên tập trung vào việc kiểm thử các giá trị biên của miền giá trị inputs để thiết kế test case do “lỗi thường tiềm ẩn tại các ngõ ngách và tập hợp tại biên”.
Tiết kiệm thời gian thiết kế test case và thực hiện test.
(*) Nhược điểm:
Phương pháp này chỉ hiệu quả trong trường hợp các đối số đầu vào (input variables) độc lập với nhau và mỗi đối số đều có một miền giá trị hữu hạn.
3. Đoán lỗi (Error Guessing)
3.1. Ý tưởng:
Phương pháp này không có quy trình cụ thể vì có tính trực giác cao và không thể dự đoán trước.
Phương pháp chỉ phù hợp với những Tester có kinh nghiệm. Họ được đưa cho 1 chương trình, họ phỏng đoán dựa vào trực giác, dựa vào kinh nghiệm, dữ liệu lịch sử về các lỗi đã từng xảy ra với chương trình trước đó… và sau đó viết các ca kiểm thử để đưa ra các lỗi đó.
3.2. Ví dụ:
Ở màn hình login, đôi khi developer code thì gán user name là “admin” và pass là rỗng hoặc “123” vì vậy khi thực hiện test mình nên test cả case này
3.3. Ưu/ nhược điểm:
(*) Ưu điểm:
Sử dụng phương pháp này có thể giúp tester tìm ra những lỗi điển hình thường xảy ra trong phần mềm hoặc những lỗi không thể tìm thấy khi thiết kế test case theo hình thức formal
(*) Nhược điểm:
Kỹ thuật này thường được thực hiện bởi các Tester có kinh nghiệm và không theo một quy tắc nhất định, thiết kế test case dựa nhiều vào cảm tính
Tổng kết:
Ngoài 3 kỹ thuật thiết kế test case đã nói ở trên, bạn cũng có thể tìm hiểu và sử dụng rất nhiều các kỹ thuật khác nữa như: thiết kế test case dựa trên đồ thị nguyên nhân – kết quả(Cause-Effect Diagram), dựa trên bảng quyết định(Decision Tables)…
Để giảm thiểu số case đến mức tối ưu mà vẫn đảm bảo chất lượng phần mềm, mỗi tester cần linh hoạt trong việc lựa chọn các kỹ thuật thiết kế test case.
» Tin mới nhất:
» Các tin khác: