Danh mục

Báo cáo khoa học: ỨNG DỤNG KỸ THUẬT KIỂM THỬ ĐỘT BIẾN ĐỂ KIỂM THỬ CÁC CHƯƠNG TRÌNH C-SHARP

Số trang: 8      Loại file: pdf      Dung lượng: 253.46 KB      Lượt xem: 6      Lượt tải: 0    
10.10.2023

Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Kiểm thử phần mềm luôn là một trong những hoạt động quan trọng nhằm đánh giá chất lượng phần mềm. Một trong những kỹ thuật kiểm thử có khả năng tự động hóa cao là kỹ thuật kiểm thử đột biến (mutation testing). Bài báo trình bày ứng dụng kỹ thuật kiểm thử đột biến trong việc kiểm thử các chương trình được phát triển bởi ngôn ngữ lập trình C-Sharp. Kỹ thuật kiểm thử đột biến được trình bày và phân tích các hạn chế, cũng như các phương pháp cải tiến.......
Nội dung trích xuất từ tài liệu:
Báo cáo khoa học: "ỨNG DỤNG KỸ THUẬT KIỂM THỬ ĐỘT BIẾN ĐỂ KIỂM THỬ CÁC CHƯƠNG TRÌNH C-SHARP" TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 5(34).2009 ỨNG DỤNG KỸ THUẬT KIỂM THỬ ĐỘT BIẾN ĐỂ KIỂM THỬ CÁC CHƯƠNG TRÌNH C-SHARP APPLYING MUTATION TESTING TO C-SHARP PROGRAM TESTS Nguyễn Thanh Bình Nguyễn Quang VũTrường Đại học Bách khoa, Đại học Đà Nẵng Trường CĐ CNTT Hữu nghị Việt Hàn TÓM T ẮT Kiểm thử phần mềm luôn là một trong những hoạt động quan trọng nhằm đánh giá chấtlượng phần mềm. Một trong những kỹ thuật kiểm thử có khả năng tự động hóa cao là kỹ thuậtkiểm thử đột biến (mutation testing). Bài báo trình bày ứng dụng kỹ thuật kiểm thử đột biếntrong việc kiểm thử các chương trình được phát triển bởi ngôn ngữ lập trình C-Sharp. Kỹ thuậtkiểm thử đột biến được trình bày và phân tích các hạn chế, cũng như các phương pháp cảitiến. Từ đó, một quy trình kiểm thử các chương trình C-Sharp ứng dụng kiểm thử đột biến sửdụng các công cụ Nester và Nunit được đề xuất. Bài báo minh họa một ứng dụng cụ thể chothấy kết quả khả quan. Kết quả của bài báo có thể áp dụng vào các quy trình kiểm thử trongcác đơn vị phát triển phầ n mềm. ABSTRACT Software testing is always one of the important activities in order to evaluate thesoftware quality. One of the testing techniques with high automation is mutation testing. Thispaper presents the application of mutation testing to testing programs developed by C-Sharplanguage. Thus, mutation testing is introduced, its limitations and some methods forimprovement are also analyzed. Then, a testing process for C-Sharp programs applyingmutation testing using Nester and Nunit tools is proposed. The paper also shows somepromising experimental results. This approach can be applied to testing processes of softwaredevelopment companies.1. Đặt vấn đề Kiểm thử phần mềm là một trong những hoạt động quan trọng trong tiến trìnhphát triển phần mềm. Nó góp một phần rất lớn trong việc đánh giá chất lượng của mộtphần mềm và là qui trình bắt buộc trong các dự án phát triển phần mềm trên thế giớicũng như trong nước. Tuy nhiên, hoạt động kiểm thử thường gặp nhiều khó khăn. Thứ nhất, kiểm thửcác hệ thống phức tạp đòi hỏi rất nhiều nguồn tài nguyên và chi phí cao. Thứ hai, tiếntrình phát triển phần mềm luôn trải qua nhiều hoạt động biến đổi thông tin, sự mất mátthông tin trong quá trình biến đổi là yếu tố chính làm cho hoạt động kiểm thử khó khăn.Thứ ba, kiểm thử chưa được chú trọng trong đào tạo con người. Cuối cùng, không tồntại kỹ thuật kiểm thử cho phép khẳng định một phần mềm hoàn toàn đúng đắn haykhông chứa lỗi.8 TẠP CHÍ KHOA HỌC VÀ CÔNG NGHỆ, ĐẠI HỌC ĐÀ NẴNG - SỐ 5(34).2009 Với mục đích phát hiện lỗi, kiểm thử phần mềm thường phải trãi qua các bước:tạo dữ liệu thử, thực thi phần mềm trên dữ liệu thử và quan sát kết quả nhận được.Trong các bước này, bước tạo dữ liệu đóng vai trò quan trọng nhất, bởi vì chúng takhông thể tạo ra mọi dữ liệu từ miền vào của chương trình, mà chúng ta chỉ có thể tạo racác dữ liệu thử có khả năng phát hiện lỗi cao nhất. Vấn đề đặt ra là làm sao để đánh giáđược khả năng phát hiện lỗi của một bộ dữ liệu thử ? Chính kỹ thuật kiểm thử đột biếnlà câu trả lời. Kỹ thuật này cho phép đánh giá chất lượng (khả năng phát hiện lỗi) củamột bộ dữ liệu thử. Trong bài báo này chúng tôi sẽ tập trung vào vấn đề đánh giá chấtlượng của các bộ dữ liệu thử dùng để kiểm thử các chương trình C-Sharp.2. Kỹ thuật kiểm thử đột biến2.1 Khái niệm Kiểm thử đột biến (mutation testing) được đề xuất đầu tiên năm 1978 bởiDeMillo [5], và được thiết kế để tạo ra một bộ dữ liệu kiểm thử hiệu quả có khả năngphát hiện lỗi của chương trình. Kiểm thử đột biến tập trung vào việc đánh giá khả năng phát hiện lỗi của dữ liệudùng để kiểm thử. Kiểm thử đột biến được dùng kết hợp với các kỹ thuật kiểm thửthông thường nhưng không thể được dùng để thay thế cho các kỹ thuật kiểm thử thôngthường đó. Kiểm thử đột biến là một kỹ thuật kiểm thử hộp trắng hay kiểm th ử cấu trúc,được xây dựng dựa vào hai gi thuyết cơ bản [4]: giả thuyết “lập trình viên giỏi” ả(competent programmer) và giả thuyết “ hiệu ứng liên kết” (coupling effect). Giả thuyết“lập trình viên giỏi” giả thiết rằng lập trình viên chỉ phạm những lỗi đơn giản do sơsuất. Giả thuyết “hiệu ứng liên kết” giả thuyết rằng, nếu dữ liệu thử phát hiện được cáclỗi đơn giản thì dữ liệu đó cũng cho phép phát hiện các lỗi phức tạp. Kiểm thử đột biến bao gồm việc tạo ra các phiên bản lỗi của chương trình gốcđược kiểm thử nhờ vào các toán tử đột biến. Các phiên bản lỗi đó được gọi là các độtbiến (mutant). Hình 1. Một ví dụ về đột biến ...

Tài liệu được xem nhiều:

Gợi ý tài liệu liên quan: