Tác nhân Kiểm thử ứng dụng là một tác nhân tạo, quản lý và thực thi trường hợp kiểm thử dựa trên Gemini trong Firebase. Bạn xác định các mục tiêu kiểm thử bằng ngôn ngữ tự nhiên và tác nhân sẽ sử dụng AI để hiểu và điều hướng ứng dụng của bạn, mô phỏng các hoạt động tương tác của người dùng và cung cấp kết quả kiểm thử chi tiết.
Cách tác nhân Kiểm thử ứng dụng sử dụng dữ liệu của bạn
Tác nhân Kiểm thử ứng dụng được cung cấp bởi Gemini trong Firebase và chịu sự điều chỉnh theo các điều khoản tương tự. Xem phần Cách Gemini trong Firebase sử dụng dữ liệu của bạn để biết thêm thông tin về cách Gemini trong Firebase sử dụng dữ liệu của bạn.
Trước khi bắt đầu
Nếu bạn chưa thực hiện, hãy đăng ký ứng dụng của bạn với Firebase.
Nếu không sử dụng bất kỳ sản phẩm nào khác của Firebase, bạn chỉ cần tạo một dự án và đăng ký ứng dụng của mình. Bạn không cần thêm bất kỳ SDK nào vào ứng dụng. Tuy nhiên, nếu quyết định sử dụng các sản phẩm khác trong tương lai, hãy nhớ hoàn tất tất cả các bước trong phần Thêm Firebase bằng bảng điều khiển Firebase.
Tạo một trường hợp kiểm thử
Để chạy các kiểm thử dựa trên AI, tác nhân Kiểm thử ứng dụng sẽ sử dụng các trường hợp kiểm thử bằng ngôn ngữ tự nhiên của bạn để thực thi các kiểm thử đối với ứng dụng.
Mỗi trường hợp kiểm thử được chia thành các bước sẽ được thực thi theo trình tự. Các bước cho phép bạn chia trường hợp kiểm thử thành nhiều giai đoạn, mỗi giai đoạn có một câu khẳng định riêng. Tác nhân có thể thực hiện nhiều hành động trong một bước bất kỳ.
Có hai cách để tạo một trường hợp kiểm thử: sử dụng tệp YAML hoặc sử dụng bảng điều khiển của Firebase. Tệp YAML cho phép bạn tự quản lý các trường hợp kiểm thử, thường là trong một kho lưu trữ mã nguồn có phiên bản. Ngoài ra, bảng điều khiển của Firebase có thể lưu trữ các trường hợp kiểm thử từ xa cùng với dữ liệu App Distribution.
Sử dụng tệp YAML
Ví dụ sau đây cho thấy một tệp YAML xác định 2 trường hợp kiểm thử:
tests:
- displayName: Login as guest
id: login-as-guest
steps:
- goal: Log in as a guest
finalScreenAssertion: The home screen is visible
- displayName: View biography card birth date
prerequisiteTestCaseId: login-as-guest
steps:
- goal: Open the article on "Bob Dylan"
hint: Use the search function to find it
finalScreenAssertion: >-
The article is opened and the title "Bob Dylan" is visible.
- goal: Find Bob Dylan's birthday in the article
hint: >-
Look for the "Born" section in the infobox on the right side of the page.
finalScreenAssertion: >-
The text "May 24, 1941" is visible on the screen.
Bạn có thể sắp xếp các nhóm kiểm thử trong một tệp duy nhất và tách các bộ kiểm thử này thành nhiều tệp. Bạn có thể thêm một trường hợp kiểm thử tiên quyết bằng cách thêm một mã nhận dạng vào kiểm thử, sau đó tham chiếu mã nhận dạng đó bằng prerequisiteTestCaseId.
Sử dụng bảng điều khiển App Distribution
Ngoài ra, bạn có thể tạo và quản lý các trường hợp kiểm thử trong Bảng điều khiển Firebase. Để tạo một trường hợp kiểm thử, hãy mở trang App Distribution của bảng điều khiển Firebase rồi thực hiện các bước sau:
- Trên thẻ Trường hợp kiểm thử, hãy nhấp vào Trường hợp kiểm thử mới. Nếu không muốn tạo trường hợp kiểm thử của riêng mình, bạn có thể sửa đổi hoặc sử dụng trường hợp kiểm thử mẫu được cung cấp.
- Trong hộp thoại Thêm trường hợp kiểm thử, hãy đặt tên cho trường hợp kiểm thử. Thông tin này dùng để xác định bài kiểm tra, nhưng tác nhân sẽ bỏ qua.
- (Không bắt buộc) Chọn một Trường hợp kiểm thử tiên quyết có chứa các bước thiết lập để chạy trước khi kiểm thử chính. Nếu bài kiểm thử tiên quyết không thành công, toàn bộ bài kiểm thử sẽ được đánh dấu là không thành công. Các bước và kết quả của các kiểm thử tiên quyết và kiểm thử chính sẽ xuất hiện cùng nhau trong kết quả kiểm thử.
- Hãy cân nhắc việc chia bài kiểm thử thành nhiều bước bằng cách nhấp vào nút Thêm một bước khác.
- Đặt cho mỗi bước một Mục tiêu mô tả những việc mà tác nhân Kiểm thử ứng dụng cần làm trong bước đó.
- (Không bắt buộc) Thêm Gợi ý để cung cấp thêm thông tin giúp Nhân viên kiểm thử ứng dụng hiểu và thao tác trong ứng dụng của bạn ở bước đó.
- Thêm Final screen assertion (Quyết định cuối cùng về màn hình) để giúp tác nhân Kiểm thử ứng dụng xác định thời điểm hoàn tất thành công bước này. Câu khẳng định này chỉ nên đề cập đến những gì xuất hiện trên màn hình.
- Nhấp vào Lưu sau khi bạn tuỳ chỉnh xong bài kiểm tra.
Ví dụ về trường hợp kiểm thử
Sau đây là ví dụ về cách tạo một trường hợp kiểm thử bằng cách sử dụng tác nhân Kiểm thử ứng dụng:
Tiêu đề thử nghiệm |
Lượt tải trang chủ |
Mục tiêu |
Tải trang chủ |
Gợi ý |
Bỏ qua mọi màn hình giới thiệu. Đóng mọi cửa sổ bật lên. Không đăng nhập. |
Xác nhận màn hình cuối cùng |
Màn hình chính của ứng dụng chính xuất hiện trên màn hình, tất cả hình ảnh đã tải xong và không có lỗi nào xuất hiện. |
Chạy thử nghiệm
Cách bạn chạy các bài kiểm thử phụ thuộc vào cách bạn tạo và quản lý các trường hợp kiểm thử. Nếu xác định các trường hợp kiểm thử bằng tệp YAML, bạn sẽ chạy các kiểm thử đó bằng Firebase CLI. Nếu tạo các trường hợp kiểm thử trong bảng điều khiển App Distribution, bạn sẽ chạy các trường hợp đó từ bảng điều khiển hoặc thông qua một trong các công cụ CLI App Distribution.
Sử dụng tệp YAML
Bạn có thể thực thi các trường hợp kiểm thử được xác định trong tệp YAML bằng cách sử dụng Giao diện dòng lệnh (CLI) của Firebase.
- Cài đặt hoặc cập nhật lên phiên bản mới nhất của Firebase CLI. Bạn nên tải tệp nhị phân độc lập cho CLI dành riêng cho hệ điều hành của mình.
- Đăng nhập và kiểm tra xem bạn có thể truy cập vào các dự án của mình hay không. Xin lưu ý rằng nếu đang sử dụng Giao diện dòng lệnh (CLI) của Firebase trong môi trường CI, bạn cũng có thể xác thực bằng tài khoản dịch vụ hoặc bằng cách sử dụng login:ci.
Chạy lệnh
apptesting:execute. Ví dụ:firebase apptesting:execute \ --app=1:1234567890:android:0a1b2c3d4e5f67890 \ --test-dir=./mytests \ ./app/build/outputs/apk/debug/app-debug.apk
| apptesting:execute [options] [/path/to/app/binary] | |
|---|---|
--app
|
Bắt buộc: Mã ứng dụng Firebase của ứng dụng. Bạn có thể tìm thấy Mã ứng dụng trong bảng điều khiển Firebase, trên trang Cài đặt chung.
|
--test-dir
|
Đường dẫn đến một thư mục chứa các tệp YAML của trường hợp kiểm thử. Lệnh này sẽ tìm kiếm đệ quy trong thư mục này, vì vậy, bạn có thể sắp xếp các tệp vào các thư mục con (không bắt buộc). Nếu bạn không đặt, "./tests" sẽ được sử dụng theo mặc định. |
--test-devices hoặc --test-devices-file
|
Các thiết bị kiểm thử mà bạn muốn phân phối bản dựng đến tính năng tác nhân Kiểm thử ứng dụng. Bạn có thể chỉ định các thiết bị kiểm thử dưới dạng danh sách thiết bị kiểm thử được phân tách bằng dấu chấm phẩy: --test-devices
"model=tokay,version=36,locale=en,orientation=portrait;model=b0q,version=33,locale=en,orientation=portrait"
Hoặc bạn có thể chỉ định đường dẫn đến một tệp văn bản thuần tuý chứa danh sách các thiết bị kiểm thử được phân tách bằng dấu chấm phẩy: --test-devices-file
"/path/to/test-devices.txt" Bạn có thể tra cứu các mẫu thiết bị hiện có bằng cách sử dụng giao diện dòng lệnh gcloud. |
--test-non-blocking
|
Nếu được đặt, lệnh này sẽ bắt đầu các kiểm thử rồi trả về ngay lập tức thay vì chờ các kiểm thử hoàn tất. |
--test-file-pattern
|
Mẫu biểu thức chính quy. Chỉ những kiểm thử có trong các tệp khớp với mẫu này mới được thực thi. |
--test-name-pattern
|
Mẫu biểu thức chính quy. Chỉ những kiểm thử có tên hiển thị trùng khớp với mẫu này mới được thực thi. |
/path/to/app/binary
|
Không bắt buộc: Đường dẫn đến tệp nhị phân của ứng dụng. Nếu bạn bỏ qua, tác nhân sẽ sử dụng bản phát hành gần đây nhất được tải lên App Distribution cho ứng dụng đã chỉ định. |
Sử dụng bảng điều khiển App Distribution
Để chạy các trường hợp kiểm thử được lưu trữ trong App Distribution, bạn có thể sử dụng bảng điều khiển Firebase, Firebase CLI hoặc các trình bổ trợ Gradle hoặc fastlane của App Distribution.
Nhập và xuất các trường hợp kiểm thử bằng tệp YAML
Việc nhập các trường hợp kiểm thử từ tệp YAML sẽ hữu ích khi bạn muốn quản lý các trường hợp kiểm thử bên ngoài bảng điều khiển Firebase. Bạn cũng có thể xuất các trường hợp kiểm thử để di chuyển chúng giữa các dự án. Bạn có thể sử dụng LLM để tinh chỉnh các trường hợp kiểm thử hiện có hoặc tạo các trường hợp kiểm thử mới. Bạn có thể nhập và xuất các trường hợp kiểm thử từ trang Trường hợp kiểm thử trong bảng điều khiển Firebase hoặc theo cách lập trình bằng Firebase CLI. Để xem ví dụ về trường hợp kiểm thử YAML, hãy xem phần Tạo trường hợp kiểm thử YAML.
Xem kết quả kiểm tra
Bạn có thể xem kết quả kiểm thử trên trang Bản phát hành trong thẻ Tác nhân kiểm thử ứng dụng của một bản phát hành. Nút Xem chi tiết sẽ mở hộp thoại Kết quả kiểm thử và cho bạn thấy mọi vấn đề, ảnh chụp màn hình của ứng dụng và các hành động mà Gemini đã thực hiện trong quá trình kiểm thử.
Nếu một thử nghiệm có chứa các thao tác được phát lại, bạn có thể xem lần chạy thử nghiệm ban đầu do AI hướng dẫn hoặc xoá bộ nhớ đệm.
Để tìm hiểu thêm về kết quả kiểm thử, hãy sử dụng bảng sau:
| Biểu tượng | Tên | Mô tả |
|---|---|---|
| spark | Thao tác do AI thực hiện | Cho biết rằng tác nhân Kiểm thử ứng dụng đã sử dụng Gemini để quyết định thực hiện một hành động hoặc kết thúc bước. |
| replay | Hành động đã phát lại | Cho biết rằng tác nhân Kiểm thử ứng dụng đã phát lại một hành động từ lần chạy kiểm thử thành công trước đó. |
| spark | Câu nhận định của AI | Cho biết rằng tác nhân Kiểm thử ứng dụng đã sử dụng Gemini để xác thực một câu khẳng định cuối cùng trên màn hình, sau khi phát lại các thao tác từ một lần chạy thành công trước đó của cùng một kiểm thử. |
Gỡ lỗi kết quả kiểm thử
Nếu kết quả kiểm thử khác với kết quả bạn mong đợi, bạn có thể gỡ lỗi kiểm thử bằng cách sử dụng nút bật/tắt Hiện chế độ xem tác nhân trong phần Xem chi tiết trên trang Kết quả kiểm thử. Chế độ xem tác nhân cho bạn thấy các phần tử trên màn hình mà tác nhân Kiểm thử ứng dụng có thể phát hiện khi sử dụng thông tin hỗ trợ tiếp cận của ứng dụng. Nếu muốn xem kỹ hơn những gì nhân viên hỗ trợ đã thấy, bạn có thể tải thông tin đó xuống từ trình đơn mục bổ sung.
Bạn cũng có thể sử dụng nút Xem các cấu phần phần mềm trên trang Kết quả kiểm thử để xem tất cả video, nhật ký và các cấu phần phần mềm khác trên Cloud cho kết quả kiểm thử của bạn.
Các vấn đề và hạn chế đã biết
Bản xem trước của tác nhân Kiểm thử ứng dụng có một số hạn chế đã biết:
- Vì tác nhân Kiểm thử ứng dụng sử dụng AI tạo sinh để kiểm thử ứng dụng của bạn, nên đôi khi tác nhân này sẽ thực hiện các hành động khác nhau trong khi vẫn tuân theo cùng một hướng dẫn.
- Tác nhân Kiểm thử ứng dụng chỉ hỗ trợ các thao tác sau: nhấn, nhập văn bản, vuốt lên/xuống/trái/phải, nhấn và giữ, kéo và thả, quay lại và chờ.
- Tác nhân Kiểm thử ứng dụng gặp sự cố khi thực thi các kiểm thử chỉ chứa một bước duy nhất cần nhiều hành động để hoàn thành. Công cụ này hoạt động hiệu quả hơn khi các nhiệm vụ phức tạp được chia thành nhiều bước ngắn hơn.
- Đôi khi, tác nhân Kiểm thử ứng dụng sẽ không cuộn để hiển thị các phần tử khác ngoài màn hình. Điều này thường xảy ra hơn khi không có dấu hiệu trực quan nào cho thấy khả năng cuộn. Để khắc phục, bạn có thể dùng trường "gợi ý" để đề xuất thao tác cuộn.
- Đôi khi, tác nhân Kiểm thử ứng dụng gặp vấn đề khi đếm, chẳng hạn như thực hiện một hành động một số lần cụ thể.
- Tác nhân Kiểm thử ứng dụng không thể điều hướng ứng dụng của bạn nếu bạn bật
FLAG_SECURE. Thay vì ảnh chụp màn hình ứng dụng của bạn, người dùng chỉ thấy một màn hình trống.
Hạn mức kiểm thử
Trong thời gian dùng thử, bạn có thể sử dụng các bài kiểm thử dựa trên AI mà không mất phí trong hạn mức. Hạn mức mặc định là 200 thử nghiệm mỗi tháng cho mỗi dự án Firebase.
Xin lưu ý rằng nếu bạn chọn chạy nhiều trường hợp kiểm thử hoặc chạy cùng một trường hợp kiểm thử trên nhiều thiết bị, thì điều này sẽ được tính là nhiều lượt kiểm thử. Ví dụ: nếu bạn chạy 2 trường hợp kiểm thử trên 2 thiết bị, thì tổng cộng sẽ có 4 lượt kiểm thử.
Để tăng hạn mức vượt quá giới hạn mặc định, hãy liên hệ với Nhóm hỗ trợ Firebase và cho biết trường hợp sử dụng của bạn.