I. Giới thiệu
Kiểm thử phần mềm là một trong những hoạt động quan trọng nhất trong chu trình phát triển phần mềm. Theo số liệu thống kê, kiểm thử phần mềm chiếm tới 50-60% tổng chi phí toàn bộ quy trình phát triển phần mềm. Để giảm chi phí kiểm thử và tăng mức độ tin cậy của phần mềm, các nhà nghiên cứu đang cố gắng tự động hóa các hoạt động phục vụ công việc kiểm thử phần mềm. Việc chuẩn bị bộ dữ liệu kiểm thử thường được thực hiện thủ công, dẫn đến việc cần nhiều nhân lực để tạo ra bộ dữ liệu đầy đủ và có tính bao phủ cao. Một trong các hoạt động quan trọng để giảm chi phí kiểm thử phần mềm là sinh các ca kiểm thử một cách tự động và có tính đầy đủ. Các tổ chức phát triển phần mềm thường phải chi một lượng lớn tài chính cho các hoạt động liên quan đến kiểm thử phần mềm. Tính hiệu quả của tiến trình xác minh và thẩm định phụ thuộc nhiều vào số lỗi được tìm ra và sửa chữa trước khi sản phẩm được chuyển giao.
1.1. Tầm quan trọng của kiểm thử phần mềm
Kiểm thử phần mềm không chỉ giúp phát hiện lỗi mà còn đảm bảo rằng sản phẩm phần mềm đáp ứng yêu cầu của khách hàng. Việc phát hiện và khắc phục lỗi trước khi sản phẩm được phát hành là rất quan trọng. Các phương pháp kiểm thử như kiểm chứng mô hình và phân tích tĩnh đều có những ưu điểm và nhược điểm riêng. Kiểm thử phần mềm là một phần trong tiến trình bảo đảm chất lượng phần mềm (SQA), giúp giảm thiểu rủi ro và nâng cao chất lượng sản phẩm.
II. Cải tiến ràng buộc xâu
Nội dung của luận án tập trung nghiên cứu về một số cải tiến trong bộ giải ràng buộc xâu áp dụng sinh các ca kiểm thử. Các cài đặt thực nghiệm và đánh giá được thực hiện bằng ngôn ngữ Java, một ngôn ngữ mạnh mẽ và hiện đại, đang được sử dụng rộng rãi trong nhiều dự án lớn. Mục tiêu nghiên cứu là cải tiến khả năng giải ràng buộc và áp dụng kỹ thuật thực thi biểu trưng trong tự động sinh các ca kiểm thử. Các phương pháp mô hình hóa ràng buộc và giải ràng buộc trên các kiểu dữ liệu dựa trên hai phương pháp Otomata và Bitvector sẽ được nghiên cứu và phân tích. Việc cải tiến mô hình hóa và giải ràng buộc trên kiểu dữ liệu xâu ký tự sẽ giúp nâng cao hiệu quả của quá trình kiểm thử.
2.1. Phương pháp nghiên cứu
Phương pháp nghiên cứu bao gồm việc phân tích, tổng hợp các liệu liên quan đến thực thi biểu trưng, vai trò của giải ràng buộc trong sinh tự động các ca kiểm thử. Các kỹ thuật mô hình hóa ràng buộc sẽ được áp dụng để cải tiến khả năng giải ràng buộc. Việc đánh giá hiệu quả và chất lượng của các ca kiểm thử được tạo ra sẽ được thực hiện so với thực tế chương trình. Các kết quả nghiên cứu sẽ cung cấp cái nhìn sâu sắc về khả năng ứng dụng của các phương pháp này trong thực tiễn.
III. Kết quả nghiên cứu
Chương này trình bày các kết quả nghiên cứu về các phương pháp mô hình hóa ràng buộc, giải ràng buộc trong thực thi biểu trưng. Các công cụ này sẽ được áp dụng vào các trường hợp cụ thể cùng với các đánh giá tính hiệu quả của các phương pháp này trên kiểu dữ liệu cụ thể. Kỹ thuật thực thi biểu trưng đang là vấn đề được nhiều nhà khoa học trên thế giới tìm hiểu và phát triển. Việc mở rộng kỹ thuật thực thi biểu trưng và cách thực hiện giải ràng buộc xâu dựa trên phương pháp Otomat sẽ được trình bày chi tiết. Các kết quả thu được sẽ được so sánh với các kết quả đã công bố trước đó để đánh giá tính khả thi và hiệu quả của các phương pháp mới.
3.1. Đánh giá hiệu quả
Đánh giá hiệu quả của các ca kiểm thử được tạo ra là một phần quan trọng trong nghiên cứu. Các phương pháp mô hình hóa và giải ràng buộc sẽ được phân tích để xác định mức độ cải tiến so với các phương pháp hiện có. Việc áp dụng các kỹ thuật mới trong thực thi biểu trưng sẽ giúp nâng cao chất lượng và hiệu quả của quá trình kiểm thử. Các kết quả nghiên cứu sẽ cung cấp thông tin quý giá cho các nhà phát triển phần mềm trong việc tối ưu hóa quy trình kiểm thử.