I. Giới thiệu
Chương 1 của Luận Văn Thạc Sĩ Kỹ Thuật Viễn Thông giới thiệu tổng quan về khái niệm tự động kiểm định (automated testing). Mục đích nghiên cứu của đề tài là xây dựng một hệ thống phần mềm tự động kiểm định ứng dụng hiệu quả, tiết kiệm thời gian và chi phí. Kiểm tra thủ công (manual testing) đòi hỏi nhiều nguồn lực và dễ gây lỗi, trong khi kiểm tra tự động (automated testing) giúp tăng tốc độ, độ chính xác và khả năng mở rộng. Đề tài tập trung vào việc phát triển một hệ thống tự động hóa đơn giản nhưng hiệu quả, với mã nguồn mở để cộng đồng có thể phát triển thêm.
1.1. Tổng quan
Kiểm tra thủ công là quá trình con người thực hiện từng bước kiểm tra ứng dụng. Kiểm tra tự động sử dụng công cụ tự động để thực hiện các bước kiểm tra, so sánh kết quả và tạo báo cáo. Tự động hóa kiểm tra giúp tiết kiệm thời gian, chi phí và nâng cao hiệu suất. Các trường hợp phù hợp cho kiểm tra tự động bao gồm các tác vụ lặp lại, phức tạp hoặc tốn thời gian. Tuy nhiên, các tác vụ mới hoặc thường xuyên thay đổi không phù hợp với kiểm tra tự động.
1.2. Mục đích nghiên cứu
Mục đích của đề tài là xây dựng một hệ thống tự động kiểm định đơn giản, hiệu quả và có mã nguồn mở. Hệ thống này đáp ứng các yêu cầu cơ bản của kiểm tra tự động, bao gồm việc xác định các thành phần giao diện (UI Element), tạo kịch bản (script) và thực thi các lệnh kiểm tra. Đề tài cũng hướng đến việc ứng dụng thực tế, như đo thời gian quay số kết nối trong hệ thống tổng đài Voice IP.
II. Lý thuyết tổng quan và tình hình nghiên cứu
Chương 2 trình bày các lý thuyết nền tảng và tình hình nghiên cứu trong lĩnh vực kiểm tra tự động. Đề tài tập trung vào hai mảng chính: kiểm tra tự động trên nền Windows và kiểm tra tự động trên nền Web. Công nghệ User Interface Automation (UIA) của Microsoft được giới thiệu chi tiết, cùng với hệ thống Selenium cho kiểm tra tự động trên web. Chương này cũng so sánh các hệ thống kiểm tra tự động nổi tiếng như HP Quick Test Pro và Selenium, đồng thời giới thiệu về trình biên dịch và cách ứng dụng vào hệ thống tự động kiểm định.
2.1. Công nghệ Automation trên Windows
Công nghệ User Interface Automation (UIA) của Microsoft kế thừa từ MS Active Accessibility (MSAA), cung cấp khả năng truy cập và tương tác với các thành phần giao diện (UI Element) trên nền Windows. UIA hỗ trợ các loại điều khiển (Control Types) và kiểu điều khiển (Control Patterns), giúp xác định và tương tác với các thành phần giao diện một cách chính xác. Đề tài sử dụng UIA để xây dựng hệ thống tự động kiểm định trên các ứng dụng Windows.
2.2. Hệ thống Automation trên Web
Hệ thống Selenium là một công cụ mã nguồn mở phổ biến cho kiểm tra tự động trên web. Selenium hỗ trợ nhiều trình duyệt và cung cấp các công cụ như Selenium WebDriver và Selenium IDE để tạo và thực thi các kịch bản kiểm tra. Đề tài so sánh Selenium với HP Quick Test Pro, một công cụ thương mại, và nhấn mạnh ưu điểm của Selenium về tính linh hoạt và chi phí thấp.
III. Cấu trúc giải thuật và kết quả thực hiện
Chương 3 trình bày cấu trúc giải thuật của hệ thống tự động kiểm định và kết quả thực hiện. Hệ thống bao gồm hai phần chính: phần bắt các thành phần giao diện (UI Element) và phần trình biên dịch để thực thi các kịch bản kiểm tra. Đề tài đã thử nghiệm hệ thống trên các ứng dụng như Calculator và Softphone 3CX, đạt được kết quả khả quan trong việc tự động hóa quy trình kiểm tra.
3.1. Cấu trúc chương trình
Hệ thống tự động kiểm định bao gồm hai phần chính: phần bắt các thành phần giao diện (UI Element) và phần trình biên dịch. Phần bắt UI Element sử dụng công nghệ UIA để xác định và tương tác với các thành phần giao diện. Phần trình biên dịch đọc và thực thi các kịch bản kiểm tra, bao gồm các lệnh cơ bản như RunApp, GetID, PushID, và lệnh điều kiện If.
3.2. Kết quả thực hiện
Hệ thống đã được thử nghiệm trên các ứng dụng Calculator và Softphone 3CX. Kết quả cho thấy hệ thống có khả năng tự động hóa quy trình kiểm tra một cách hiệu quả, tiết kiệm thời gian và nâng cao độ chính xác. Hệ thống cũng ghi nhận các bước thực hiện trong quá trình kiểm tra, giúp người dùng dễ dàng kiểm tra và xử lý lỗi.
IV. Kết luận và hướng phát triển
Chương 4 tổng kết các kết quả đạt được và đề xuất hướng phát triển cho hệ thống tự động kiểm định. Đề tài đã xây dựng thành công một hệ thống đơn giản nhưng hiệu quả, với mã nguồn mở để cộng đồng có thể phát triển thêm. Hướng phát triển trong tương lai bao gồm mở rộng hỗ trợ cho các loại điều khiển khác, bổ sung thêm các lệnh kiểm tra và xây dựng hệ thống báo cáo chuyên nghiệp hơn.
4.1. Kết quả đạt được
Đề tài đã xây dựng thành công một hệ thống tự động kiểm định trên nền Windows, với khả năng xác định và tương tác với các thành phần giao diện (UI Element) một cách chính xác. Hệ thống cũng bao gồm một trình biên dịch để thực thi các kịch bản kiểm tra, giúp tự động hóa quy trình kiểm tra ứng dụng.
4.2. Hướng phát triển
Hướng phát triển trong tương lai bao gồm mở rộng hỗ trợ cho các loại điều khiển khác, bổ sung thêm các lệnh kiểm tra và xây dựng hệ thống báo cáo chuyên nghiệp hơn. Đề tài cũng hướng đến việc ứng dụng hệ thống tự động kiểm định trong nhiều lĩnh vực khác nhau, như kiểm định sản phẩm phần mềm và tự động hóa các ứng dụng trên Windows.