cơ bản
Trong các chiến lƣợc trên chƣa đề cập đến việc lựa chọn điểm ON và điểm OFF nhƣ nào cho hợp lý và đem lại kết tốt nhất. Sau đây ta sẽ tiếp tục nghiên cứu các phƣơng pháp để tìm ra điểm ON và OFF phù hợp nhất. Lƣu ý các chiến lƣợc kiểm thử miền xác định ở trên rất nhiều, vì vậy trong phần này ta sẽ chỉ chọn một số trƣờng hợp thật đặc trƣng để chứng minh cho các kỹ thuật lựa chọn điểm ON và OFF.
a. Khả năng phát hiện lỗi của các điểm ON và OFF
Ta giả sử miền D1 đang cần kiểm thử với biên đƣợc xây dựng từ d, trong đó ta coi d là biên thực tế nhận đƣợc. Lựa chọn 2 điểm ON là A, B và một điểm OFF là C.
Theo dõi vào Hình 2.1 ta thấy: giả sử d’ là biên dự kiến của miền D1 và ta hoàn toàn không xác định chính xác đƣợc biên dự kiến, nó có thể nhận các giá trị d’, d’’ và d’’’. Từ các kỹ thuật chứng minh trong Phần 1.2.5.b ta thấy rằng nếu trong trƣờng hợp lỗi xuất hiện, có nghĩa là biên dự kiến không trùng với biên xác định (d không trùng với d’) thì các điểm ON và OFF đã xác định chỉ phát hiện lỗi đƣợc khi điểm OFF là C nằm trong khoảng giữa d và d’. Có nghĩa là biên dự kiến có thể ở vị trí d’ hoặc d’’ thì khi đó các ca kiểm thử của chúng ta đã xây dựng theo các điểm ON và OFF sẽ phát hiện đƣợc lỗi.
Tuy nhiên nếu biên dự kiến nằm ở vị trí d’’’ thì ta hoàn toàn không xác định đƣợc lỗi xảy ra (khi đó biên dự kiến sẽ nằm trong khoảng giữa điểm OFF và hai điểm ON). Vậy bài toán về chất lƣợng điểm ON và điểm OFF sẽ tỷ lệ nghịch với diện tích tứ giác ABEF nhận đƣợc (trong đó E, F là hai điểm giao giữa biên dự kiến d’ và hai biên khác của miền D1, chú ý ở đây ta giả sử miền D1 đƣợc bao quanh bởi 4 biên, trên thực tế có thể khác nhƣng về ý tƣởng thì hoàn toàn tƣơng tự). Trƣờng hợp biên nghiêng so với biên dự kiến cũng tƣơng tự. Tuy nhiên trong trƣờng hợp lỗi đóng biên thì hoàn toàn không ảnh hƣờng đến việc lựa chọn điểm ON và OFF.
Qua đó ta thấy, cần xác định điểm ON và OFF sao cho khoảng không gian ABEF càng nhỏ sẽ càng thể hiện đƣợc chất lƣợng của các ca kiểm thử đó. Ta gọi khoảng ABEF là miền che lỗi
b. Kỹ thuật xác định điểm ON hiệu quả:
Cơ sở ban đầu: biên đƣợc tạo ra từ đƣờng thẳng d là biên đóng với miền D1, d cắt hai cạnh biên khác của miền D1 tại A và B. Biên d’ là biên dự kiến của miền D1 và cắt hai cạnh biên khác của D1 tại E và F. Chọn hai điểm ON là A,B và một điểm OFF là C. Giả sử A’ là một lựa chọn khác cho điểm ON thay thế cho A. Điểm OFF trong trƣờng hợp này là cố định.
Xét trong 3 trƣờng hợp phát sinh lỗi của kiểm thử miền:
*) Trƣờng hợp biên dịch chuyển một khoảng so với biên dự kiến:
Biên thực tế luôn song song với biên dự kiến. Từ Hình 2.2 ta thấy việc lựa chọn điểm ON không ảnh hƣớng tới việc thay đổi miền ABEF, do đó không ảnh hƣớng tới chất lƣợng của các ca kiểm thử tƣơng ứng với các điểm ON, OFF.
*) Trƣờng hợp biên nghiêng so với biên dự kiến:
Trong trƣờng hợp lỗi nghiêng biên, từ Hình 2.3 ta đã thấy đƣợc sự ảnh hƣởng trực tiếp giữa điểm ON, điểm OFF và biên dự kiến tới khoảng dịch chuyển che lỗi.
Trong trƣờng hợp nếu một điểm ON ta chọn là A thì miền che lỗi lúc này chuyển thành khoảng ABE (Hình 2.3). Tuy nhiên nếu điểm ON là A’ thì miền che lỗi đã có phần gia tăng.
Mặt khác ta gọi m là một biên khác của D1. Giả sử rằng m không phải ở vị trí hiện tại mà có xu hƣớng tịnh tiến theo chiều v, khi đó điểm giao giữa m và d’’ ngày càng xa và thậm chí có xu hƣớng không gặp nhau tạo nên một miền che lỗi vô hạn, khi đó chất lƣợng của ca kiểm thử giảm rõ rệt. Tất nhiên khi đó điểm giao E giữa d’ và m cũng sẽ xa nhƣng khoảng che của nó so với trƣờng hợp trên là không thể bằng.
Hình 2.3: Lựa chọn điểm ON trong trường hợp lỗi nghiêng biên
Vậy tại trƣờng hợp này ta dễ dàng nhận ra rằng việc lựa chọ điểm ON tại vị trí càng gần các điểm cực biên càng tốt.
*) Trƣờng hợp do lỗi đóng biên:
Theo dõi hHình 2.4 ta thấy việc lựa chọn điểm ON tên biên hoàn toàn không ảnh hƣởng gì.
Hình 2.4: Lựa chọn điểm ON trong trường hợp lỗi đóng biên
*) Kết luận:
Từ 3 trƣờng hợp nêu ra ở trên ta đã kết luận đƣợc rằng việc lựa chọn hai điểm ON càng gần điểm cực biên càng tốt và đem lại hiệu quả cao nhất cho các ca kiểm thử. *) Phƣơng pháp xác định các ca kiểm thử gần biên:
Theo chứng minh trên ta biết đƣợc rằng các ca kiểm thử càng gần điểm cực biên càng tốt. Vì vật mà lý tƣởng nhất ta sẽ xác định đƣợc điểm ON từ hệ phƣơng trình của hai biên đó theo các trƣờng hợp sau:
- Điểm cực biên là giao của hai biên đóng: Khi đó điểm ON trùng với điểm cực biên
- Điểm cực biên là giao của một biên đóng với một biên mở. Khi đó điểm ON xác định sẽ nằm trên biên mà nó đang xét và gần điểm cực biên nhất.
- Điểm cực biên là giao của hai biên mở: Khi đó điểm ON trùng với điểm cực biên
c. Kỹ thuật xác định điểm OFF hiệu quả:
Cơ sở ban đầu: biên đƣợc tạo ra từ đƣờng thẳng d là biên đóng với miền D1, d cắt hai cạnh biên khác của miền D1 tại A và B. Biên d’ là biên dự kiến của miền D1 và cắt hai cạnh biên khác của D1 tại E và F. Chọn hai điểm ON là A,B và một điểm OFF là C. Hai điểm ON trong trƣờng hợp này là cố định, giả sử C’ là một lựa chọn khác cho điểm OFF thay thế cho C.
Tƣơng tự nhƣ trƣờng hợp đi tìm điểm ON, ta xét 3 trƣờng hợp đặc biệt nhất đại diện cho các lỗi xuất hiện trong kiểm thử miền:
Từ Hình 2.5 ta thấy, việc lựa chọn điểm c theo phƣơng ngang hoàn toàn không ảnh hƣởng gì đến miền che ABEF. Diện tích miền che lỗi chỉ thay đổi khi kích thƣớc từ C với biên thực tế d thay đổi. Do đó trong trƣờng hợp này ta có thể kết luận rằng điểm OFF phù hợp nhất là điểm nằm gần biên thực tế nhất.
Hình 2.5: Lựa chọn điểm OFF trong trường hợp lỗi dịch chuyển biên
*) Trƣờng hợp biên nghiêng so với biên dự kiến:
Dựa vào Hình 2.6 ta có hai điểm OFF tƣơng đƣơng với C và C’. Tƣơng tự ta thấy trƣờng hợp điểm OFF C càng nằm gần về phía các điểm cực biên thì xu hƣớng tạo ra các miền che lỗi càng lớn và có thể sẽ tạo ra miền che lỗi vô hạn nếu một biên khác của D1 có xu hƣớng dịch chuyển theo chiều v.
Hình 2.6: Lựa chọn điểm OFF trong trường hợp lỗi nghiêng biên
Từ đó ta thấy vị trí hợp lý nhất của điểm OFF là nằm giữa hai điểm ON (có hình chiếu xuống biên nằm ở giữa A và B).
Tƣơng tự nhƣ trƣờng hợp lỗi đóng biên khi xác định điểm ON ở hình 2.4. Điểm OFF trong trƣờng hợp này không ảnh hƣởng tới chất lƣợng của các ca kiểm thử sinh ra từ điểm ON và OFF.
*) Kết luận:
Từ 3 trƣờng hợp tiêu biểu của các chiến lƣợc sinh ca kiểm thử trong kiểm thử miền ta xác định đƣợc vị trí điểm OFF hợp lý nhất khi hình chiếu vuông góc của nó xuống biên thực tế nằm ngay giữa hai điểm ON là A và B.