Please use this identifier to cite or link to this item: https://lib.uet.vnu.edu.vn/jspui/handle/123456789/2070
Title: XÂY DỰNG CÔNG CỤ KIỂM THỬ TỰ ĐỘNG CHO CÁC CHƯƠNG TRÌNH C
Authors: Nguyễn Đức, Anh
Issue Date: 19-May-2016
Abstract: Ngày nay, ngôn ngữ C là một trong những ngôn ngữ lập trình phổ biến để phát triển phần mềm, đặc biệt là các phần mềm hệ thống. Một trong những kĩ thuật kiểm thử hiệu quả hay được sử dụng là sinh ca kiểm thử trong kiểm thử hộp trắng dòng điều khiển. Để tiết kiệm chi phí kiểm thử phần mềm, quá trình sinh ca kiểm thử nên được tự động hóa hết mức có thể. Trong khi đó, các công cụ kiểm thử hiện nay chỉ tập trung vào thực thi các ca kiểm thử mà ít quan tâm đến sinh ca kiểm thử tự động. Một vài công cụ kiểm thử sinh ca kiểm thử tự động nhưng số lượng ca kiểm thử không xác định hoặc khá lớn gây khó khăn cho quản lý, ngoài ra còn hạn chế về thời gian sinh ca kiểm thử. Vì thế, khóa luận đề xuất một phương pháp sinh ca kiểm thử tự động cho một hàm C chứa các biến số nguyên, số thực và biến mảng sử dụng kĩ thuật kiểm thử hộp trắng dòng điều khiển theo hướng tĩnh và cài đặt công cụ hỗ trợ CFT4CUnit. Đầu vào gồm một hàm C và tiêu chí phủ kiểm thử phủ. Đầu ra gồm tập ca kiểm thử thỏa mãn tiêu chí phủ kiểm thử và tập ca kiểm thử để kiểm thử vòng lặp (nếu hàm C có vòng lặp). Cụ thể bước đầu tiên, mã nguồn được phân tích để sinh đồ thị dòng điều khiển thỏa mãn tiêu chí phủ kiểm thử. Sau đó, đồ thị dòng điều khiển được phân tích để xây dựng tập đường kiểm thử. Tiếp theo, các đường kiểm thử chứa vòng lặp được cấu trúc lại để sinh thêm các đường kiểm thử mới dùng kiểm thử tính đúng đắn vòng lặp. Kế tiếp, các đường kiểm thử được phân tích bằng kĩ thuật SE để xây dựng hệ ràng buộc tương ứng. Cuối cùng, hệ ràng buộc được giải để sinh ca kiểm thử bằng cách kết hợp kĩ thuật sinh ngẫu nhiên và tận dụng thế mạnh các công cụ SMT-Solver. Kết quả thực nghiệm cho thấy khả năng phát hiện được lỗi khá tốt trong hàm C với số bộ ca kiểm thử tối thiểu mà vẫn đảm bảo tính đúng đắn cao của mã nguồn. Ngoài ra, thời gian sinh ca kiểm thử được cải thiện đáng kể và giải được nhiều hệ ràng buộc khác nhau vì kết hợp kĩ thuật sinh ngẫu nhiên và sử dụng công cụ SMT-Solver.
URI: https://lib.uet.vnu.edu.vn/jspui/handle/123456789/2070
Appears in Collections:Khóa luận Khoa Vật lý kỹ thuật và Công nghệ Nano

Files in This Item:
File Description SizeFormat 
KLTN.pdf3.06 MBAdobe PDFView/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.