Giới thiệu tài liệu
Trong bối cảnh công nghệ thông tin phát triển mạnh mẽ, sự gia tăng nhanh chóng của các hệ thống phần mềm và mạng lưới đặt ra thách thức lớn về chất lượng và độ ổn định. Mặc dù công nghệ ngày càng phức tạp, việc đảm bảo chất lượng phần mềm vẫn là yếu tố then chốt, đặc biệt là trong các hệ thống quy mô lớn như vnEdu. Các sự cố phần mềm không chỉ gây thiệt hại về kinh tế mà còn ảnh hưởng đến uy tín. Do đó, kiểm thử phần mềm đóng vai trò quan trọng để đảm bảo sản phẩm đáng tin cậy. Nghiên cứu này tập trung vào sự cần thiết của kiểm thử chức năng tự động nhằm giải quyết các hạn chế của kiểm thử thủ công, đặc biệt trong môi trường phát triển phần mềm Agile/Scrum, nhằm nâng cao hiệu quả và độ chính xác của quy trình kiểm thử.
Đối tượng sử dụng
Các kỹ sư phần mềm, chuyên viên kiểm thử (QA/QC), quản lý dự án phần mềm, nhà nghiên cứu trong lĩnh vực công nghệ thông tin và giáo dục.
Nội dung tóm tắt
Đề tài này nghiên cứu các phương pháp kiểm thử chức năng tự động và ứng dụng chúng cho hệ thống vnEdu, một nền tảng giáo dục điện tử quan trọng của VNPT IT. Mục tiêu chính là giảm thiểu nguồn lực kiểm thử và nâng cao chất lượng phần mềm bằng cách áp dụng công cụ kiểm thử tự động. Luận văn đi sâu vào lý thuyết kiểm thử, đặc biệt là kiểm thử chức năng, và phân tích hiện trạng kiểm thử thủ công đang gặp phải nhiều khó khăn như lượng chức năng lớn, kịch bản kiểm thử đồ sộ, yêu cầu nghiệp vụ thay đổi liên tục, và chi phí, thời gian kiểm thử hồi quy tốn kém. Phương pháp tiếp cận bao gồm việc đề xuất một giải pháp kiểm thử tự động cho các chức năng chính trên nền tảng Web của vnEdu, dựa trên việc đánh giá thực trạng và lựa chọn mô hình triển khai phù hợp, đồng thời xây dựng các thư viện và keyword hỗ trợ. Giá trị ứng dụng của nghiên cứu là cung cấp một giải pháp hiệu quả để đảm bảo chất lượng và sự ổn định cho một hệ thống quy mô lớn, liên tục cập nhật như vnEdu, vốn được sử dụng bởi hàng triệu người dùng và không thể chấp nhận lỗi phát hiện muộn. Việc tự động hóa sẽ giúp khắc phục các hạn chế của kiểm thử thủ công, giảm thiểu rủi ro và tổn thất, đồng thời tăng cường hiệu suất của quy trình phát triển phần mềm.