Phân tích giá trị biên đơn biến (Single-Variable BVA)

Một phần của tài liệu Nghiên cứu về mức bao phủ của kiểm thử (Trang 34 - 36)

Xem xét giá trị đầu vào để chỉ ra giá trị biên. Tất cả các giá trị biên này sẽ được kết hợp chặt chẽ trong việc thiết lập các ca kiểm thử. Những giá trị gần biên sẽ được thêm vào và sẽ được sử dụng để kiểm tra. Giá trị gần biên sẽ trợ giúp kiểm soát logic các đường biên của chương trình. Ví dụ khi kiểm tra dải giá trị trong một nhánh hoặc câu lệnh lặp người phát triển có thể sử dụng toán tử nhỏ hơn (<), toán tử nhỏ hơn hoặc bằng (), toán tử lớn hơn (>). Các đoạn code được biên dịch nhưng chạy không chính xác với các điều kiện sẽ dẫn đến lỗi. Các giá trị gần giá trị biên phải có trong các ca kiểm thử để kiểm tra các loại lỗi này [4].Trong các ca kiểm thử thêm vào đường biên các giá trị gần biên, quá trình phân tích giá trị biên baseline sẽ gồm một vài giá trị đầu vào tồn tại trên danh nghĩa. Ví dụ sau sẽ minh hoạ cho quá trình phân tích giá trị biên baseline: Xem xét chương trình với một giá trị đầu vào N, dải giá trị của N là : a ≤ N ≤ c. Các ca kiểm thử được chọn trong tập hợp giá trị baseline ={a, a+, b, c-, c}. a+ là giá trị lớn hơn a, c- là giá trị nhỏ hơn c và b là một giá trị tồn tại trên danh nghĩa, b nằm trong khoảng a+ và c-. Trong ví dụ này, quá trình phân tích giá trị biên baseline sẽ chỉ ra năm ca kiểm thử. Minh hoạ bằng hình bên dưới.

baseline

Hình 11 : Tập hợp các giá trị biên baseline cho đơn biến trên một khoảng đầu vào

Nếu như quản lý lỗi là một việc then chốt sau khi kiểm tra phần mềm thì cần phải tăng thêm các ca kiểm thử kiểm tra một cách mạnh mẽ thông qua quá trình phân tích giá trị biên baseline, cần thêm vào các giá trị bên ngoài dải cho phép. Các ca kiểm tra baseline được chỉ ra ở trên sẽ được thêm vào giá trị {a-,c+}, giá trị a- là giá trị bên dưới giá trị chấp nhận a và c+ là giá trị ngay trên giá trị chấp nhận c. Cả hai giá trị {a-,c+} dùng trong các ca kiểm thử cần phải được thực thi để xử lý trường hợp ngoại lệ hoặc để che dấu khuyết điểm code. Quay trở lại với ví dụ trên giá trị đầu vào đơn lúc này sẽ gồm bẩy giá trị hết sức mạnh mẽ: robust={a-, a, a+, b, c-, c, c+}. Minh hoạ bằng hình bên dưới :

baseline robust

Quá trình phân tích giá trị biên baseline hay quá trình phân tích biên rubust đều có thể được áp dụng cho giá trị đầu vào có nhiều dải giá trị. Xem xét biến đầu vào đơn M với hai dải giá trị con liền nhau, dải 1 được là d ≤ M < f và dải 2 là f ≤ M ≤ h. Thiết lập các ca kiểm thử lúc này là kết hợp tất cả các ca kiểm thử được chỉ ra khi cách áp dụng quá trình phân tích giá trị biên đối với từng dải giá trị riêng lẻ. Do vậy kết hợp kết quả tất cả các ca kiểm thử áp dụng cho từng dải riêng rẽ ta được :

Mbaseline= {d, d+, e, f-, f} {f, f+, g, h-, h}

= {d, d+, e, f-, f, f+, g, h-, h}

Áp dụng phân tích giá trị biên robust làm M baseline tăng thêm các giá trị {d-, h+} mang lại kết quả Mrobust= {d-, d, d+, e, f-, f, f+, g, h-, h, h+} được minh hoạ bằng hình bên dưới

baseline robust augmentation

Hình 13 : Tập hợp các giá trị baseline và rubust trường hợp đơn biến trên hai khoảng đầu vào

Thêm vào nhiều dải giá trị con hiển nhiên sẽ làm tăng số ca kiểm thử. Đối với hai dải giá trị liền nhau của một biến đầu vào, phân tích giá trị biên baseline chỉ ra 9 ca kiểm thử và phân tích giá trị biên rubust chỉ ra 11 ca kiểm thử.

Một phần của tài liệu Nghiên cứu về mức bao phủ của kiểm thử (Trang 34 - 36)