DSpace About DSpace Software
 

DSpace at UET-VNU >
3. Đồ án, Khoá luận tốt nghiệp >
Khoa Công nghệ thông tin >
Khóa luận năm 2016 (FIT) >

Please use this identifier to cite or link to this item: http://data.uet.vnu.edu.vn:8080/xmlui/handle/123456789/747

Title: Xây dựng công cụ hỗ trợ kiểm thử tích hợp cho các chương trình C++
Authors: Sầm Đức Vũ
Issue Date: 2016
Abstract: Hiện nay, phần mềm đã trở thành một phần không thể thiếu trong cuộc sống hàng ngày của mọi người. Nhu cầu về phần mềm đã và đang tăng lên một cách đáng kể. Đi cùng với đó, yêu cầu về chất lượng của phần mềm cũng ngày càng cao. Quá trình kiểm thử trong một dự án phần mềm là một quá trình quan trọng để đảm bảo chất lượng phần mềm. Nhưng vấn đề là chi phí của quá trình kiểm thử trong một dự án phần mềm có thể lên tới 40 – 60% tổng chi phí trong toàn bộ quá trình phát triển phần mềm. Có nhiều ngôn ngữ lập trình được sử dụng để phát triển phần mềm. Trong số đó, ngôn ngữ C/C++ thường được sử dụng để phát triển các hệ thống nhúng, nhân hệ điều hành, các hệ thống điều khiển v.v. Đặc trưng của các hệ thống này là yêu cầu về độ chính xác rất cao. Do vậy, yêu cầu về đảm bảo chất lượng đối với các hệ thống này là rất cao, dẫn đến chi phí kiểm thử cao. Để tiết kiệm chi phí, quá trình kiểm thử được tự động hóa hết mức có thể. Hiện tại, có nhiều nghiên cứu đã được triển khai để giải quyết nhu cầu này, tuy nhiên các nghiên cứu này chỉ tập trung vào một dạng đầu vào nhất định, hơn nữa đa phần chỉ hỗ trợ cho các hàm đơn vị (unit). Vì thế, khóa luận này đề xuất một phương pháp sinh ca kiểm thử tự động một dự án được viết bằng ngôn ngữ lập trình C/C++. Phương pháp bao gồm hai quá trình. Quá trình đầu tiên là sử dụng kĩ thuật kiểm thử hộp trắng luồng điều khiển để kiểm thử các hàm đơn vị. Bước đầu tiên quá trình này là phân tích mã nguồn sinh đồ thị dòng điều khiển. Sau đó, phân tích đồ thị dòng điều khiển xây dựng tập đường đi độc lập. Tiếp theo, các đường đi độc lập chứa vòng lặp được cấu trúc lại để mô phỏng vòng lặp. Kế tiếp, sử dụng kĩ thuật thực thi tượng trưng (Symbolic Execution) để xây dựng hệ ràng buộc. Cuối cùng, sinh ca kiểm thử bằng kĩ thuật sinh ngẫu nhiên hoặc tận dụng thế mạnh các công cụ SMT-Solver hiện nay để tìm kiếm ca kiểm thử nhanh hơn. Quá trình thứ hai được tiến hành dựa trên kết quả của quá trình trước. Trong quá trình này, kĩ thuật kiểm thử tích hợp được sử dụng để kiểm thử tích hợp các hàm.
URI: http://data.uet.vnu.edu.vn:8080/xmlui/handle/123456789/747
Appears in Collections:Khóa luận năm 2016 (FIT)

Files in This Item:

File Description SizeFormat
50.docx13.88 kBMicrosoft Word XMLView/Open

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

 

Valid XHTML 1.0! DSpace Software Copyright © 2002-2010  Duraspace - Feedback