Một đường đi bao phủ tất cả các trạng thái của FSM C1

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Nghiên cứu kỹ thuật sinh ca kiểm thử từ mô hình máy hữu hạn trạng thái (Trang 40 - 42)

Tuy nhiên, độ bao phủ trạng thái là điều kiện lựa chọn yếu nhất trong tất cả các điều kiện lựa chọn để tạo ra ca kiểm thử [5]. Đường đi q1 → q4 → q3 → q5 → q2 → q1 mới ch bao phủ được 5/10 chuyển trạng thái, như vậy còn 5 chuyển trạng thái không được bao phủ và lỗi khi cài đặt có thể xuất hiện ở phần không được bao phủ này. Chúng ta x t một dạng điều kiện bao phủ mạnh hơn đó

là bao phủ chuyển trạng thái. Độ bao phủ chuyển trạng thái sẽ được trình bày trong mục 5.1.2.

5.1.2. Độ bao phủ chuyển trạng thái (transition coverage)

Để đạt được độ bao phủ chuyển trạng thái ta lựa chọn chuỗi các chuyển trạng thái sao cho mỗi chuyển trạng thái được thăm ít nhất một lần [5]. ài toán này sẽ tương đương với việc tìm đường đi qua tất cả các cạnh của một đồ thị có hướng sao cho mỗi cạnh được qua ít nhất một lần. Vì mỗi cạnh của đồ thị tương đương với một sự chuyển trạng thái mà các trạng thái là hữu hạn nên việc tìm đường đi này là hoàn toàn có thể thực hiện được.

Để tìm độ bao phủ chuyển trạng thái trước tiên ta xây dựng cây kiểm thử từ mô hình FSM. Cây kiểm thử của một FSM là một cây có gốc là trạng thái ban đầu. Từ trạng thái ban đầu, nó chứa ít nhất một đường đi từ trạng thái ban đầu tới các trạng thái còn lại của FSM [2].

Theo [2], phương pháp xây dựng cây kiểm thử như sau:

Bước 1: Gốc của cây kiểm thử là trạng thái ban đầu.

Bước 2: Giả sử rằng cây kiểm thử đã được xây dựng đến mức k, mức thứ

k+1 sẽ được xây dựng như sau: Chọn một nút n tại mức k,

 Nếu n xuất hiện ở mức bất kỳ từ 1 đến k thì n là nút lá và không xây dựng thêm nhánh này.

 Nếu n không phải là nút lá thì tiếp tục xây dựng nhánh này bằng cách thêm một nhánh từ n tới nút mới m nếu d(n,x) = m. Gán nhãn của nhánh này là x y với y = λ(n,x).

Lặp lại bước này với tất cả các nút ở mức k.

Ví dụ: Xây dựng cây kiểm thử từ mô hình FSM C1 ở Hình 5.1. Theo các bước trên, ta xây dựng cây kiểm thử như sau:

1.Xây dựng gốc của cây:

Trạng thái ban đầu của FSM C1 là q1, là gốc của cây, có mức là 1.

2.Phát triển nhánh của cây:

 Mức 2: Từ trạng thái ban đầu của q1 có thể tới trạng thái q1 hoặc q4. Do vậy, từ gốc q1 của cây ta phát triển 2 nhánh tới 2 nút có nhãn là

q1. Ở các mức 1, 2, 3 chưa tồn tại nút nào có nhãn là q5 nên tiếp tục phát triển thêm nhánh cho nút này.

 Mức 5: Tại mức 5, q5 là nút lá vì ở các mức trên đã tồn tại nút có nhãn là q5. Ở các mức 1, 2, 3, 4 chưa tồn tại nút nào có nhãn là q2 nên tiếp tục phát triển thêm nhánh cho nút này.

 Mức 6: Tại mức 6, cả q1 và q5 đều là nút lá vì ở các mức trên đã tồn tại nút có nhãn là q1 và q5.

Cuối cùng ta được cây kiểm thử như Hình 5.3 dưới đây:

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Nghiên cứu kỹ thuật sinh ca kiểm thử từ mô hình máy hữu hạn trạng thái (Trang 40 - 42)

Tải bản đầy đủ (PDF)

(57 trang)