Các độ đo kiểm thử

Một phần của tài liệu (LUẬN văn THẠC sĩ) phương pháp sinh dữ liệu kiểm thử tự động từ biểu đồ tuần tự UML, biểu đồ lớp và ràng buộc OCL (Trang 30 - 33)

Chƣơng 1 : GIỚI THIỆU

2.4 Các độ đo kiểm thử

Độ đo kiểm thử là một công cụ giúp ta đo mức độ bao phủ chƣơng trình của một tập ca kiểm thử cho trƣớc. Mức độ bao phủ của một bộ kiểm thử (tập các ca kiểm thử) đƣợc đo bằng tỷ lệ các thành phần thực sự đƣợc kiểm thử so với tổng thể sau khi đã thực hiện các ca kiểm thử. Bài nghiên cứu này chia ra 3 tiêu chuẩn bao phủ, để dễ hình dung hơn về 3 tiêu chuẩn bao phủ này chúng ta sẽ bám theo ví dụ về kiểm thử phân đoạn Par đã đƣợc biến đổi sang đồ thị dòng điều khiển nhƣ Hình 2.16.

I1 I2 I3 m1 par m2 m3 m5 Bi B1 B2 Bk Bi B1 B2 Bk m4 FN1 JN1

Hình 2.16 Đồ thị dòng điều khiển tƣơng ứng của phân đoạn Par.

C1: Độ bao phủ yếu: Đƣờng kiểm thử đi qua tất cả các nốt rẽ nhánh (các nốt quyết định) của đồ thị dòng điều khiển. Đối với ví dụ Hình 2.16 ta có bảng các ca kiểm thử nhƣ sau:

ảng 2.1 Ca kiểm thử độ bao phủ yếu

ID Input EO RO Note

tc1 Bi-FN1-B1-JN1-Bk

C2: Độ bao phủ trung bình: Đƣờng kiểm thử đi qua tất cả các nhánh của đồ thị dòng điều khiển. Bảng các ca kiểm thử tƣơng ứng cho ví dụ Hình 2.16 nhƣ sau:

ảng 2.2 Ca kiểm thử độ bao phủ trung bình

ID Input EO RO Note

tc1 Bi-FN1-B1-JN1-Bk

tc2 Bi-FN1-B2-JN1-Bk

C3: Độ bao phủ mạnh: Đƣợc áp dụng cho các thiết kế có sử dụng các phân đoạn song song có các luồng chạy song song nhƣ Par, Seq. Khi đó các nốt chạy song song có chia sẻ dữ liệu với nhau sẽ đƣợc hoán đổi vị trí để tạo ra các đƣờng kiểm thử phủ đƣợc nhiều trƣờng hợp hơn.

ảng 2.3 Ca kiểm thử độ bao phủ mạnh

ID Input EO RO Note

tc1 Bi-FN1-B1-JN1-Bk

tc2 Bi-FN1-B2-JN1-Bk

tc3 Bi-FN1-B1-B2-JN1-Bk

Với ví dụ Hình 2.16, ngoài các ca kiểm thử thông thƣờng không xét đến trƣờng hợp các thông điệp song song có điểm chia sẻ dữ liệu ta thu đƣợc hai ca kiểm thử ct1 và ct2 nhƣ ảng 2.3. Ngoài ra, vì hai thông điệp B1 và B2 nằm trong phân đoạn Par nên chúng có thể đƣợc thực hiện song song hoặc đảo trật theo một thứ tự bất kì. Trong trƣờng hợp này ta thu đƣợc một ca kiểm thử khác là tc3 (Bi-FN1-B1-B2-JN1-Bk) nhƣ ảng 2.3. Ví dụ Hình 2.16 còn một cách đảo lộn thứ tự khác là Bi-FN1-B2-B1-JN1-Bk. Thứ tự thực thi này hoàn toàn có thể sảy ra, tuy nhiên ở phƣơng pháp tôi đề xuất chỉ kiểm tra chia sẻ dữ liệu một lần cho cặp hai thông điệp song song bất kì có chia sẻ dữ liệu. Điều này đảm bảo số lƣợng ca kiểm thử sinh ra là không quá nhiều mà vẫn đảm bảo mức độ hiệu quả kiểm thử đặc biệt cho các bài toán phức tạp. Ví dụ Hình 2,16 là một ví dụ đơn giản chứa hai luồng thực thi song song với hai điểm chia sẻ dữ liệu 1 và 2. Với những bài toán sử dụng nhiều phân đoạn Par lồng nhau và có nhiều nhánh thì việc kiểm tra tất cả các thông điệp thực thi song song và có chia sẽ dữ liệu sẽ trở nên phức tạp hơn nếu muốn tìm tất cả các đƣờng đi có thể sảy ra. Tuy nhiên, dựa trên phƣơng pháp này chúng ta hoàn toàn có thể phát triển nhiều hơn các đƣờng thực thi muốn kiểm tra tùy theo mục đích kiểm thử và sử dụng.

Chƣơng 3:PHƢƠNG PHÁP SINH ĐỒ THỊ DÒNG ĐIỀU KHIỂN TỪ BIỂU ĐỒ TUẦN TỰ

Một phần của tài liệu (LUẬN văn THẠC sĩ) phương pháp sinh dữ liệu kiểm thử tự động từ biểu đồ tuần tự UML, biểu đồ lớp và ràng buộc OCL (Trang 30 - 33)

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

(74 trang)