Giải thích phân tích giá trị biên và phân vùng tương đương
Đáp án mẫu
Cả hai kỹ thuật đều chọn một tập nhỏ đầu vào kiểm thử mà vẫn đạt độ bao phủ tốt.
Phân vùng tương đương chia miền đầu vào thành các nhóm (partition) mà hệ thống nên cư xử giống nhau. Bạn kiểm thử một giá trị đại diện từ mỗi nhóm thay vì mọi giá trị. Hãy bao gồm cả các nhóm không hợp lệ.
Phân tích giá trị biên bổ sung các giá trị ở mép, vì lỗi thường tập trung ở đó, hay do sai lệch một đơn vị như dùng < thay vì <=. Với mỗi biên, kiểm thử giá trị đúng tại biên và giá trị sát hai bên.
Ví dụ: một trường nhận tuổi từ 18 đến 65.
- Các nhóm: dưới 18 (không hợp lệ), từ 18 đến 65 (hợp lệ), trên 65 (không hợp lệ). Thêm đầu vào không phải số và đầu vào rỗng.
- Các biên: 17, 18, 19 và 64, 65, 66.
Nhờ vậy chỉ cần khoảng một chục test bao phủ được logic, thay vì thử mọi giá trị từ 0 đến 120. Hãy kết hợp cả hai: phân vùng tìm ra các nhóm, còn giá trị biên thăm dò các mép rủi ro của mỗi nhóm.
Chúng hiệu quả nhất khi đi cùng kiểm thử khám phá và hiểu biết về yêu cầu thật.
Ý chính
- Phân vùng tương đương: một đại diện cho mỗi nhóm có hành vi giống nhau
- Giá trị biên: kiểm thử đúng tại biên và sát hai bên
- Bao gồm các nhóm không hợp lệ như đầu vào rỗng và không phải số
- Kết hợp chúng giảm số test mà vẫn giữ độ bao phủ
Câu hỏi nối tiếp thường gặp
- Bạn áp dụng điều này cho bộ lọc khoảng ngày như thế nào?
- Bạn xử lý tổ hợp của nhiều đầu vào như thế nào?
Lỗi thường gặp
- Chỉ kiểm thử giá trị hợp lệ và bỏ qua các nhóm không hợp lệ
- Chỉ kiểm thử đúng giá trị biên mà không kiểm thử các giá trị xung quanh