Nhƣ đƣợc mô tả trong Phần 3.5.3, các đƣờng dẫn trừu tƣợng đƣợc tạo theo tiêu chí bao phủ và dữ liệu kiểm thử đƣợc tạo cho từng đƣờng dẫn trừu tƣợng bằng cách sử dụng ngôn ngữ lập trình AMPL và các bộ giải liên quan. Các ca kiểm thử trừu tƣợng đƣợc tạo ra cũng nhƣ dữ liệu kiểm thử cụ thể đƣợc lƣu trữ trong cấu trúc dữ liệu. Hình 3.8 cho thấy cấu trúc dữ liệu này.
44
Hình 3.8: Siêu mô hình kiểm thử đơn vị.
Nhƣ thể hiện trong Hình 3.8, một bộ kiểm thử có thể chứa không hoặc nhiều ca kiểm thử và mỗi ca kiểm thử chứa một đƣờng dẫn trừu tƣợng cũng nhƣ không hoặc nhiều biến có giá trị của chúng. Hơn nữa, mỗi đƣờng dẫn trừu tƣợng chứa một số chuyển tiếp. Mỗi quá trình chuyển đổi có một trạng thái đích và có thể có một số điều kiện trƣớc và sau. Ngoài ra, mỗi quá trình chuyển đổi có thể có hoặc không có một số sự kiện, có hoặc không có một số tham số. Hơn nữa, mỗi trạng thái có thể có hoặc không có một trạng thái bất biến. Bộ kiểm thử đƣợc liên kết với SUT, có hai thuộc tính chỉ định lớp và gói mà kiểm thử phải đƣợc thực thi trên đó. Cuối cùng, hàm xử lý các sự kiện đƣợc chỉ định trong lớp SUT.
3.6. Tổng kết chƣơng
Kiểm thử dựa trên mô hình (Model Based Testing - MBT) thu hút sự chú ý trong cả hai ngành công nghiệp và học thuật. Điều này có thể nhìn thấy từ việc một số lƣợng lớn các công cụ MBT liên tục đƣợc phát hành trong những năm gần đây [14].
Chƣơng này đã trình bày kiến thức hỗ trợ sự phát triển các mô hình cấp cao ở mức hệ thống nhƣ là máy trạng thái (state machine) từ mô hình ca sử dụng (UCMods), sau đó đƣợc tinh chỉnh để các ca kiểm thử đƣợc tạo bằng các công cụ MBT hiện có để có thể thực thi đƣợc các ca kiểm thử.
45
CHƢƠNG 4: CÀI ĐẶT VÀ THỰC NGHIỆM
4.1. Giới thiệu chƣơng
Trong chƣơng này, luận văn trình bày phƣơng pháp sinh tự động các ca kiểm thử từ đặc tả ca sử dụng dựa trên mô hình. Dƣới dạng mô hình kiểm thử, biểu đồ lớp (class diagrams) và biểu đồ trạng thái (state diagrams) đƣợc sử dụng, các ràng buộc đƣợc biểu diễn bằng OCL. Kỹ thuật đề xuất này đƣợc thực thi bởi công cụ ParTeG. Công cụ cho thấy kết quả tốt về mặt thời gian thực thi việc sinh các ca kiểm thử, tỉ lệ hài lòng về mục tiêu kiểm thử, độ bao phủ mã nguồn, và việc tạo ra các giá trị biên
Kiểm thử dựa trên mô hình là sự đối chiếu hệ thống dƣới hệ thống kiểm thử với các thông số kĩ thuật tham chiếu dƣới dạng các mô hình. Công cụ hỗ trợ cho việc kiểm thử dựa trên mô hình là hết sức quan trọng. Trong phần này, luận văn trình bày về công cụ kiểm thử dựa trên mô hình, đó là ParTeG. Luận văn mô tả cách tiếp cận để sinh tự động các ca kiểm thử, cũng nhƣ thuật toán, cấu trúc dữ liệu và siêu mô hình để xây dựng công cụ này.