Nghiên Cứu Ứng Dụng Trí Tuệ Nhân Tạo Trong Kiểm Thử Phần Mềm

Tài liệu nghiên cứu Nghiên cứu ứng dụng một số công cụ kiểm thử có ứng dụng trí tuệ nhân tạo, tổng hợp lý thuyết và thực hành, cung cấp kiến thức chuyên sâu về .

Trường đại học

Đại học Quốc gia Hà Nội

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

luận văn thạc sĩ

2020

59
5
0

Phí lưu trữ

30 Point

Tóm tắt

I. Tổng Quan Nghiên Cứu Ứng Dụng Trí Tuệ Nhân Tạo Trong Kiểm Thử

Kiểm thử phần mềm ngày càng trở nên phức tạp và đòi hỏi cao về tốc độ, độ chính xác. Kiểm thử thủ công dần bộc lộ nhiều hạn chế, không đáp ứng được nhu cầu hiện tại. Sự trỗi dậy của trí tuệ nhân tạo (AI)học máy (ML) mở ra một kỷ nguyên mới cho kiểm thử phần mềm, giúp quá trình này trở nên thông minh, nhanh chóng và hiệu quả hơn. Các công cụ kiểm thử dựa trên AI, từ phân tích mã nguồn đến kiểm thử giao diện, đang dần thay đổi cách thức kiểm thử phần mềm. Theo tài liệu gốc, việc phát triển phần mềm sử dụng trí tuệ nhân tạo đang ở giai đoạn khởi đầu, hứa hẹn nhiều tiềm năng phát triển vượt bậc. Việc ứng dụng AI trong kiểm thử phần mềm không chỉ giúp giảm thiểu công sức thủ công mà còn nâng cao chất lượng và độ tin cậy của sản phẩm phần mềm.

1.1. Tầm Quan Trọng Của Kiểm Thử Tự Động Với Trí Tuệ Nhân Tạo

Kiểm thử tự động, đặc biệt là với sự hỗ trợ của AI, đóng vai trò then chốt trong việc đảm bảo chất lượng phần mềm. Kiểm thử tự động giúp thực hiện các ca kiểm thử lặp đi lặp lại một cách nhanh chóng và chính xác, giảm thiểu sai sót do yếu tố con người. Hơn nữa, AI còn giúp tự động sinh ca kiểm thử, cập nhật ca kiểm thử khi giao diện thay đổi, và phân tích kết quả kiểm thử một cách thông minh. Điều này giúp các nhà phát triển tập trung vào việc xây dựng các tính năng mới, thay vì tốn thời gian vào việc kiểm thử thủ công. Tài liệu nhấn mạnh rằng, việc kết hợp trí tuệ nhân tạokiểm thử tự động đang dần giải quyết các bài toán kiểm thử giao diện phức tạp.

1.2. Lợi Ích Thiết Thực Của Ứng Dụng AI Trong Kiểm Thử Phần Mềm

Ứng dụng AI trong kiểm thử phần mềm mang lại nhiều lợi ích thiết thực, bao gồm: giảm thiểu chi phí, tăng tốc độ kiểm thử, nâng cao độ chính xác, cải thiện độ tin cậy của phần mềm, và giảm thiểu rủi ro. AI có thể tự động phân tích mã nguồn để tìm ra các lỗi tiềm ẩn, sinh ca kiểm thử phù hợp, và dự đoán các vấn đề có thể xảy ra trong tương lai. Theo tài liệu, AI có khả năng tính toán để chỉ ra chính xác số lượng ca kiểm thử nhỏ nhất cần thiết để kiểm tra một thay đổi mã, giúp tiết kiệm thời gian và công sức. Từ đó, AI giúp các doanh nghiệp phát triển phần mềm nhanh hơn, hiệu quả hơn, và với chi phí thấp hơn.

II. Thách Thức Vấn Đề Với Kiểm Thử Phần Mềm Truyền Thống Hiện Nay

Kiểm thử phần mềm truyền thống, đặc biệt là kiểm thử thủ công, đang đối mặt với nhiều thách thức lớn. Quá trình này thường tốn thời gian, công sức, và dễ mắc lỗi do yếu tố con người. Khi giao diện người dùng thay đổi, các ca kiểm thử cần được cập nhật thủ công, gây tốn kém và mất thời gian. Theo tài liệu gốc, kiểm thử hệ thống dựa vào giao diện đang là xu thế trong bối cảnh của kiểm thử tự động, nhưng nó vẫn là điểm nhức nhối lớn, bởi vì chúng có xu hướng “dễ vỡ, tốn kém để viết, và tốn thời gian để thực hiện”. Điều này cho thấy sự cần thiết phải có một giải pháp kiểm thử thông minh, tự động, và có khả năng thích ứng với các thay đổi.

2.1. Khó Khăn Trong Kiểm Thử Giao Diện Người Dùng UI Thủ Công

Kiểm thử giao diện người dùng (UI) thủ công đặc biệt khó khăn và tốn kém. Người kiểm thử phải thực hiện các ca kiểm thử lặp đi lặp lại trên nhiều nền tảng và thiết bị khác nhau. Khi giao diện thay đổi, các ca kiểm thử cần được cập nhật thủ công, gây mất thời gian và công sức. Tài liệu nhấn mạnh rằng, khi cần cập nhật hàng trăm, hàng nghìn ca kiểm thử sẽ là bài toán về thời gian và độ chính xác. Do đó, việc tự động hóa kiểm thử UI là một nhu cầu cấp thiết.

2.2. Giới Hạn Của Các Phương Pháp Kiểm Thử Tự Động Truyền Thống

Các phương pháp kiểm thử tự động truyền thống, mặc dù giúp giảm thiểu công sức thủ công, vẫn còn nhiều hạn chế. Các phương pháp này thường dựa trên các tập lệnh được viết sẵn, và dễ bị lỗi khi giao diện thay đổi. Việc bảo trì và cập nhật các tập lệnh này cũng tốn kém và mất thời gian. Theo tài liệu, với kiểm thử tự động thông thường, con người viết các dòng lệnh để thực hiện ca kiểm thử tự động, sau đó công cụ sẽ thực hiện chạy và so sánh đưa ra kết quả dựa vào các dòng lệnh đã được viết. Do đó, cần có một giải pháp kiểm thử tự động thông minh hơn, có khả năng tự học và thích ứng với các thay đổi.

III. Giải Pháp Ứng Dụng Machine Learning Trong Kiểm Thử Phần Mềm

Machine Learning (ML), một nhánh của trí tuệ nhân tạo, mang đến một giải pháp đầy hứa hẹn cho các thách thức trong kiểm thử phần mềm. ML cho phép máy tính học từ dữ liệu, tự động phát hiện lỗi, và dự đoán các vấn đề có thể xảy ra. Theo tài liệu, việc sử dụng trí tuệ nhân tạo trong phát triển phần mềm vẫn còn ở mức độ tự chủ thấp hơn nhiều so với các lĩnh vực phát triển hơn như hệ thống tự lái hoặc điều khiển hỗ trợ giọng nói. Ứng dụng của AI trong các công cụ kiểm thử phần mềm tập trung vào việc làm cho vòng đời phát triển phần mềm trở nên dễ dàng hơn.

3.1. Học Máy Giúp Nhận Dạng Trạng Thái Ứng Dụng Như Thế Nào

Machine Learning có thể được sử dụng để nhận dạng trạng thái ứng dụng bằng cách học từ hàng ngàn ảnh chụp màn hình và các nhãn tương ứng. Ví dụ, máy có thể học cách nhận diện màn hình đăng nhập, màn hình kết quả tìm kiếm, và màn hình trang chủ. Khi đã được huấn luyện, máy có thể tự động nhận diện trạng thái ứng dụng và chọn các ca kiểm thử phù hợp. Tài liệu cho biết, hàng ngàn ảnh chụp màn hình của ứng dụng thật được thu thập và phân loại theo nhóm trạng thái giao diện người dùng. Sau đó là bước ghi nhãn, thao tác ghi nhãn cho mỗi màn hình.

3.2. Tự Động Áp Dụng Tập Đầu Vào Bằng Thuật Toán Học Máy

Sau khi nhận diện trạng thái ứng dụng, ML có thể được sử dụng để tự động áp dụng các tập đầu vào phù hợp. Ví dụ, khi máy nhận diện màn hình đăng nhập, nó có thể tự động nhập tên người dùng và mật khẩu. Khi máy nhận diện màn hình tìm kiếm, nó có thể tự động nhập từ khóa tìm kiếm. Việc này giúp tiết kiệm thời gian và công sức cho người kiểm thử. Dữ liệu huấn luyện cần rất lớn, trong đó đầu vào ở đây là tập hợp tất cả các phần tử của màn hình, nhãn, và đầu ra là tập của: • Dữ liệu huấn luyện đầu vào: [“nhãn màn hình”:tìm kiếm, “phần tử”: nút, hộp văn bản]. • Dữ liệu huấn luyện đầu ra: [“hộp văn bản”: nhập văn bản, “nút bấm”: xuống dòng….

IV. Nghiên Cứu Top Các Công Cụ Kiểm Thử Ứng Dụng Trí Tuệ Nhân Tạo Phổ Biến

Hiện nay, có nhiều công cụ kiểm thử ứng dụng trí tuệ nhân tạo đang được sử dụng rộng rãi. Các công cụ này giúp tự động hóa nhiều công đoạn trong quá trình kiểm thử, từ sinh ca kiểm thử đến phân tích kết quả kiểm thử. Các công cụ này có thể tự sinh ca kiểm thử, con người chỉ cần trỏ cho công cụ biết ứng dụng cần sinh ca kiểm thử ở đâu. Khi một đoạn mã thay đổi, ML cũng có khả năng tính toán để chỉ ra chính xác số lượng ca kiểm thử nhỏ nhất để kiểm tra việc thay đổi đoạn mã. ML cũng được sử dụng để tạo ca kiểm thử đáng tin cậy hơn, nó tìm hiểu và quan sát cách ứng dụng thay đổi, sau đó tự đưa ra quyết định trong thời gian chạy về việc sử dụng bộ định vị nào để xác định phần tử.

4.1. Applitools Kiểm Thử Hình Ảnh Dựa Trên AI Cho Độ Chính Xác Cao

Applitools là một công cụ kiểm thử hình ảnh dựa trên AI giúp tự động phát hiện các lỗi giao diện một cách chính xác. Công cụ này sử dụng Computer Vision (CV) để so sánh hình ảnh và tìm ra các điểm khác biệt, giúp đảm bảo giao diện người dùng hiển thị đúng như mong đợi. Applitools hoạt động bằng cách so sánh ảnh cơ sở với ảnh kiểm tra, dựa trên rất nhiều tiêu chí như so sánh màu sắc, nội dung, sự sai khác đến từng đơn vị điểm ảnh.

4.2. Testim.io Tạo Và Duy Trì Kiểm Thử Tự Động Dễ Dàng Hơn Với AI

Testim.io là một nền tảng kiểm thử tự động dựa trên AI giúp tạo và duy trì các ca kiểm thử một cách dễ dàng hơn. Công cụ này sử dụng AI để tự động tạo các ca kiểm thử từ các tương tác của người dùng, và tự động cập nhật các ca kiểm thử khi giao diện thay đổi. Testim.io sử dụng bộ định vị thông minh, trí thông minh máy móc được đào tạo giúp cho các công cụ kiểm thử tự động thực hiện các ca kiểm thử trên hàng nghìn giao diện, nền tảng trong thời gian ngắn.

4.3. TestComplete Kiểm Thử Toàn Diện Với Tính Năng AI Tích Hợp

TestComplete là một công cụ kiểm thử toàn diện với các tính năng AI tích hợp. TestComplete hỗ trợ nhiều loại kiểm thử khác nhau, từ kiểm thử đơn vị đến kiểm thử hệ thống, và có thể được sử dụng để kiểm thử các ứng dụng trên nhiều nền tảng và thiết bị. Với TestComplete, dòng lệnh được rút gọn, nhưng sự so sánh đưa ra kết quả lại dựa trên rất nhiều tiêu chí như so sánh màu sắc, nội dung, sự sai khác đến từng đơn vị điểm ảnh.

V. Thực Nghiệm Đánh Giá Hiệu Quả Các Công Cụ AI Trong Kiểm Thử Phần Mềm

Để đánh giá hiệu quả của các công cụ AI trong kiểm thử phần mềm, cần thực hiện các thử nghiệm trên các ứng dụng thực tế. Các thử nghiệm này nên bao gồm các ca kiểm thử khác nhau, từ kiểm thử chức năng đến kiểm thử hiệu năng, và được thực hiện trên nhiều nền tảng và thiết bị khác nhau. Ngoài ra kết quả khảo sát cũng được đưa ra ở cuối chương để kết quả đánh giá có thêm phần khách quan, học viên đã thực hiện cuộc khảo sát quy mô nhỏ về các công cụ được sử dụng trong luận văn, đối tượng tham gia là đồng nghiệp của học viên.

5.1. Phương Pháp Thực Nghiệm Các Bước Thực Hiện Chi Tiết

Phương pháp thực nghiệm nên tuân thủ các bước sau: 1) Lựa chọn các công cụ AI để thử nghiệm. 2) Xác định các ứng dụng để thử nghiệm. 3) Thiết kế các ca kiểm thử. 4) Thực hiện các ca kiểm thử trên các công cụ AI. 5) Thu thập và phân tích dữ liệu. 6) Đánh giá kết quả và đưa ra kết luận.

5.2. Kết Quả Thực Nghiệm So Sánh Hiệu Suất Giữa Các Công Cụ AI

Kết quả thực nghiệm nên được trình bày một cách rõ ràng và chi tiết, bao gồm các số liệu về thời gian kiểm thử, số lượng lỗi phát hiện, và độ chính xác của các công cụ AI. So sánh hiệu suất giữa các công cụ AI để xác định công cụ nào phù hợp nhất cho từng loại kiểm thử và từng loại ứng dụng.

VI. Tương Lai Xu Hướng Phát Triển Của AI Trong Kiểm Thử Phần Mềm

Ứng dụng trí tuệ nhân tạo trong kiểm thử phần mềm đang phát triển với tốc độ nhanh chóng. Trong tương lai, có thể kỳ vọng các công cụ AI sẽ trở nên thông minh hơn, tự động hơn, và có khả năng giải quyết các vấn đề kiểm thử phức tạp hơn. Theo tài liệu gốc, việc sử dụng trí tuệ nhân tạo trong phát triển phần mềm vẫn còn ở mức độ tự chủ thấp hơn nhiều so với các lĩnh vực phát triển hơn như hệ thống tự lái hoặc điều khiển hỗ trợ giọng nói. Do đó, vẫn còn rất nhiều tiềm năng để AI phát triển và ứng dụng rộng rãi hơn trong kiểm thử phần mềm.

6.1. Tích Hợp Sâu Rộng AI Trong Vòng Đời Phát Triển Phần Mềm

Trong tương lai, AI sẽ được tích hợp sâu rộng hơn vào vòng đời phát triển phần mềm, từ giai đoạn thiết kế đến giai đoạn triển khai. AI có thể được sử dụng để tự động tạo mã, tự động kiểm thử, và tự động triển khai ứng dụng, giúp tăng tốc độ phát triển và giảm thiểu chi phí.

6.2. Kiểm Thử Tự Động Hóa Hoàn Toàn Với AI Ước Mơ Hay Thực Tế

Ước mơ về kiểm thử tự động hóa hoàn toàn với AI có thể trở thành hiện thực trong tương lai. AI có thể tự động học từ dữ liệu, tự động phát hiện lỗi, và tự động sửa lỗi, giúp giảm thiểu sự can thiệp của con người vào quá trình kiểm thử. Tuy nhiên, để đạt được điều này, cần có những đột phá lớn trong lĩnh vực trí tuệ nhân tạohọc máy.

23/05/2025

Trích đoạn nội dung tài liệu

LỜI MỞ ĐẦU Công nghệ đang phát triển với tốc độ cực nhanh và giữ vai trò quan trọng trong cuộc sống. Trên phạm vi toàn cầu, các doanh nghiệm đang tung ra các ứng dụng được sử dụng bởi hàng ngàn, hàng triệu người trên nhiều nền tảng khác nhau. Nó đòi hỏi các doanh nghiệp phải cung cấp sản phẩm nhanh và liên tục. Trước mỗi lần ra mắt sản phẩm, những ứng dụng đó phải được kiểm thử để đảm bảo sự tối ưu, đúng đắn cho người dùng đầu cuối.

Kiểm thử thủ công đang đơn giản dần không đáp ứng được nhu cầu hiện tại. Quá trình kiểm thử phần mềm cần thông minh hơn, nhanh hơn và tốt hơn. Các công nghệ hiện tại như trí tuệ nhân tạo, học máy đang ngày càng được áp dụng để đẩy nhanh quá trình phát triển phần mềm. Việc phát triển phần mềm sử dụng trí tuệ nhân tạo đang ở giai đoạn khởi đầu.

Các công cụ kiểm thử dựa vào trí tuệ nhân tạo từ phân tích mã nguồn sinh ca kiểm thử đơn vị, đến các nền tảng kiểm thử toàn bộ. Kiểm thử hệ thống dựa vào giao điện đang là xu thế trong bối cảnh của kiểm thử tự động và nó vẫn là điểm nhức nhối lớn, bởi vì chúng có xu hướng “dễ vỡ, tốn kém để viết, và tốn thời gian để thực hiện” [1]. Với ca kiểm thử thủ công, người kiểm thử thực hiện các ca kiểm thử lần lượt từng bước và đưa ra kết luận sau mỗi bước thực hiện. Các ca kiểm thử cần được thực hiện trên tất cả các giao diện, nền tảng hỗ trợ thủ công.

Trong hường hợp các bản vá được cập nhật liên tục, người kiểm thử cần lặp đi lặp lại ca kiểm thử liên tục. Với kiểm thử tự động, người kiểm thử tạo ra các lệnh để công cụ thực hiện ca kiểm thử và so sánh kết quả đầu ra thay vì chạy thủ công. Bài toán chạy ca kiểm thử lặp lại nhiều lần được giải quyết. Khi giao diện thay đổi phần tử, người kiểm thử cần cập nhật lại các lệnh.

Một vài ca kiểm thử cần thay đổi có thể không làm khó người kiểm thử, nhưng khi cần cập nhật hàng trăm, hàng nghìn ca kiểm thử sẽ là bài toán về thời gian và độ chính xác. Bằng sự kết hợp trí tuệ nhân tạo và kiểm thử tự động các bài toán kiểm thử giao diện dần được giải quyết. Dữ liệu lớn, trí thông minh máy móc được đào tạo giúp cho các công cụ kiểm thử tự động thực hiện các ca kiểm thử trên hàng nghìn giao diện, nền tảng trong thời gian ngắn, đưa ra các quyết luận cuối cùng về ca kiểm thử một cách thông minh như con người. Các ca kiểm thử được sinh ra, cập nhật tự động phù hợp với hoàn cảnh ứng dụng mà không cần người kiểm thử cập nhật các dòng lệnh.

Từ đó, học viên muốn tìm hiểu về ứng dụng của trí tuệ nhân tạo trong kiểm thử tự động như thế nào và một vài công cụ có sử dụng trí tuệ nhân tạo: “Nghiên cứu ứng dụng một số công cụ kiểm thử có ứng dụng trí tuệ nhân tạo”. 1 Phạm vi nghiên cứu: Trí tuệ nhân tạo và học máy được ứng dụng trong các lĩnh vực của kiểm thử, ví dụ như kiểm thử xác minh giao diện, kiểm thử API, kiểm thử bảo mật. Phạm vi của luận văn là đưa ra cái nhìn tổng quát về trí tuệ nhân tạo trong kiểm thử giao diện tự động dựa vào học máy. Bên cạnh đó, luận văn còn tìm hiểu trí tuệ nhân tạo được sử dụng như thế nào trong một vài công cụ kiểm thử giao diện.

Phương pháp nghiên cứu: Lý thuyết liên quan đến kiểm thử tự động, trí tuệ nhân tạo và mối liên hệ được nghiên cứu. Sau đó học viên lựa chọn và tìm hiểu về các công cụ kiểm thử giao diện có ứng dụng trí tuệ nhân tạo (Applitools, Testim.io, Testcomplete, Mabl) và thực hiện các ca kiểm thử trên các công cụ đó để đưa ra kết quả thực hiện. Để kết quả đánh giá có thêm phần khách quan, học viên đã thực hiện cuộc khảo sát quy mô nhỏ về các công cụ được sử dụng trong luận văn, đối tượng tham gia là đồng nghiệp của học viên. Cuối cùng, dựa vào kết quả nghiên cứu lý thuyết, kết quả thực nghiệm và kết quả khảo sát, học viên đưa ra những phân tích và đánh giá và đề xuất hướng phát triển.

Cấu trúc luận văn: Nội dung chính của luận văn được trình bày qua bốn chương. Trí tuệ nhân tạo trong kiểm thử phần mềm tự động. Chương này trình bày về các khái niệm kiểm thử tự động, trí tuệ nhân tạo, học máy, xu thế sử dụng học máy vào kiểm thử phần mềm tự động nói chung và kiểm thử giao diện tự động nói riêng. Việc huấn luyện học máy trong kiểm thử giao diện tự động cũng được chỉ ra trong chương này.

Một số công cụ kiểm thử giao diện tự động có ứng dụng trí tuệ nhân tạo. Chương này trình bày về một số công cụ kiểm thử giao diện có ứng dụng trí tuệ nhân tạo, đó là Applitools, Testim.io, Testcomplete, Mabl và cách trí tuệ nhân tạo được sử dụng trong từng công cụ. Thực nghiệm Chương này trình bày về phương pháp thực nghiệm của học viên. Nội dung chương về các ca kiểm thử được thực hiện và kết quả thực hiện đối với từng công cụ ở chương trước.

Kết quả thực nghiệm được tính toán và so sánh. Ngoài ra kết quả khảo sát cũng được đưa ra ở cuối chương. 2 Sau phần lý thuyết và thực nghiệm ở ba chương trước, kết luận và đề xuất hướng phát triển của học viên được trình bày ở chương này. TRÍ TUỆ NHÂN TẠO TRONG KIỂM THỬ PHẦN MỀM TỰ ĐỘNG 1.

Giới thiệu chung Kiểm thử tự động là gì? Trong kiểm thử phần mềm, kiểm thử tự động là việc sử dụng phần mềm tách biệt với phần mềm đang được kiểm tra để kiểm soát việc thực hiện ca kiểm thử và so sánh kết quả thực tế với kết quả dự đoán [2]. Nó được sử dụng nhiều lần cho kiểm thử hồi quy. Người kiểm thử tạo các tập lệnh và chạy tập lệnh, về cơ bản nó là sự tự động hóa ca kiểm thử thủ công. Kiểm thử tự động cũng được sử dụng để kiểm tra khả năng tải và hiệu năng của ứng dụng.

Mục tiêu chính của kiểm thử tự động là giảm kiểm thử thủ công, tăng hiệu quả kiểm thử và giá trị của phần mềm. Trí tuệ nhân tạo là gì? Trong khoa học máy tính, trí tuệ nhân tạo (tên tiếng anh là Artificial Intelligence - AI ) là trí thông minh được thể hiện bằng máy móc. Nó xử lý những phép tính cấp cao, vấn đề phức tạp và hỗ trợ hệ thống đưa ra những quyết định nhằm tăng cường độ chính xác, như hình 1. Thông thường, thuật ngữ trí tuệ nhân tạo được dùng để mô tả máy móc bắt chước nhận thức của con người như học tập và giải quyết vấn đề [3][4].

Ví dụ như các ứng dụng để giúp tài xế tìm các tuyến đường hiệu quả, dữ liệu thời gian thực của các tuyến đường được truyền về và phân tích, học hỏi để ứng dụng đưa ra kết luận về tuyến đường. Học máy là một lĩnh vực của trí tuệ nhân tạo liên quan đến việc nghiên cứu và xây dựng các kĩ thuật cho phép các hệ thống "học" tự động từ dữ liệu để giải quyết những vấn đề cụ thể. Ví dụ như các máy có thể "học" cách phân loại thư điện tử xem có phải thư rác hay không và tự động xếp thư vào thư mục tương ứng. Học máy rất gần với suy diễn thống kê tuy có khác nhau về thuật ngữ [3].

Học máy nghiên cứu cách thức để mô hình hóa bài toán cho phép máy tính tự động hiểu, xử lý và học từ dữ liệu để thực thi nhiệm vụ được giao cũng như cách đánh giá giúp tăng tính hiệu quả. Xu thế sử dụng học máy trong kiểm thử tự động Việc sử dụng trí tuệ nhân tạo trong phát triển phần mềm vẫn còn ở mức độ tự chủ thấp hơn nhiều so với các lĩnh vực phát triển hơn như hệ thống tự lái hoặc điều khiển hỗ trợ giọng nói. Ứng dụng của AI trong các công cụ kiểm thử phần mềm tập trung vào việc làm cho vòng đời phát triển phần mềm trở nên dễ dàng hơn.2 chỉ ra việc trí tuệ nhân 4 tạo sẽ học việc quan sát và đưa ra quyết định của con người trong kiểm thử thủ công để tự động đưa ra quyết .Học máy có thể được sử dụng để giúp tự động hóa và giảm số lượng các nhiệm vụ thủ công trong phát triển và thử nghiệm [5].1: Trí tuệ nhân tạo1 Hình 1.2: Xu thế trí tuệ nhân tạo trong kiểm thử tự động2 Người kiểm thử có sự thông minh và khả năng quan sát trạng thái kết quả, máy kiểm thử có hiệu suất cao. Để nâng cao hiệu quả và giảm chi phí chất lượng, cần cải thiện kiểm thử phần mềm bằng cách đưa ra hành vi kiểm thử tự động thông minh thứ có khả năng bắt chước hình vi con người [6].

Trong kiểm thử phần mềm, một vấn đề được phát hiện ra 1 https://www.co/blog/types-of-artificial-intelligence/ 2 https://viblo.asia/p/kiem-thu-tu-dong-ung-dung-tri-tue-nhan-tao-ai-ai-test-automation-maGK7W8OKj2 5 sau quá trình áp dụng đầu vào ứng dụng, so sánh kết quả với mong đợi đầu ra. Nó chính xác với những gì học máy làm. Một tập đầu vào được cung cấp cho một thuật toán đào tạo. Trong quá trình học tập có giám sát, câu trả lời đúng cho mỗi tập đầu vào cũng được cung cấp cho thuật toán đào tạo.

Công việc của hệ thống học máy là lặp đi lặp lại sự cấu hình lại “nội bộ của bộ não”, ngày càng tốt hơn trong việc cung cấp các câu trả lời đúng dựa trên tập đầu vào đã được cung cấp [7]. Do đó, những hệ thống ML đã và đang được nghiên cứu phát triển đều cung cấp những lợi ích trực tiếp cho việc tự động hóa kiểm thử phần mềm. Với kiểm thử tự động thông thường, con người viết các dòng lệnh để thực hiện ca kiểm thử tự động, sau đó công cụ sẽ thực hiện chạy và so sánh đưa ra kết quả dựa vào các dòng lệnh đã được viết; với kiểm thử tự động có ứng dụng trí tuệ nhân tạo, việc tạo ca kiểm thử và thực hiện so sánh kết quả đều được công cụ thực hiện được mô tả ở hình 1. Ví dụ với ca kiểm thử xác minh phẩn tử “VIEW MORE”.3 là đoạn lệnh thực hiện với công cụ Selenium bình thường, khi ca kiểm thử được chạy, việc so sánh kết quả chỉ dừng ở thực hiện đúng nội dung “verify text” and “verify not text”; nếu muốn so sánh càng chính xác, càng nhiều câu lệnh cần được viết.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ

Tài liệu "Nghiên Cứu Ứng Dụng Trí Tuệ Nhân Tạo Trong Kiểm Thử Phần Mềm" khám phá cách mà trí tuệ nhân tạo (AI) có thể cải thiện quy trình kiểm thử phần mềm, từ việc tự động hóa các tác vụ lặp đi lặp lại đến việc phát hiện lỗi một cách hiệu quả hơn. Bài viết nhấn mạnh những lợi ích mà AI mang lại, bao gồm tăng cường độ chính xác, giảm thời gian kiểm thử và tối ưu hóa nguồn lực. Độc giả sẽ tìm thấy những thông tin hữu ích để áp dụng AI vào thực tiễn kiểm thử phần mềm, từ đó nâng cao chất lượng sản phẩm.

Nếu bạn muốn mở rộng kiến thức về các ứng dụng của công nghệ trong lĩnh vực khác, hãy tham khảo Luận văn tốt nghiệp xây dựng ứng dụng phát hiện khuôn mặt trong ảnh sử dụng opencv, nơi bạn có thể tìm hiểu về nhận diện khuôn mặt. Ngoài ra, Luận văn thạc sĩ hcmute ứng dụng mạng nơron trong phát hiện và phân loại sự cố trên đường dây truyền tải sẽ cung cấp cái nhìn sâu sắc về việc ứng dụng mạng nơron trong phát hiện sự cố. Cuối cùng, Hcmute ứng dụng kỹ thuật logic mờ xếp hạng tín nhiệm doanh nghiệp sẽ giúp bạn hiểu rõ hơn về cách mà công nghệ có thể hỗ trợ trong việc đánh giá tín nhiệm doanh nghiệp. Những tài liệu này sẽ là cơ hội tuyệt vời để bạn khám phá thêm về các ứng dụng công nghệ hiện đại.