Hành trình dành cho Android Studio

Tính năng Hành trình cho Android Studio tận dụng khả năng nhận dạng và suy luận của AI để điều hướng và kiểm thử ứng dụng dựa trên hướng dẫn bằng ngôn ngữ tự nhiên của bạn. Tập hợp hướng dẫn của bạn (gọi là hành trình) sẽ được chuyển đổi thành các hành động mà AI thực hiện trên ứng dụng của bạn. Ngoài ra, bạn có thể viết và mô tả các câu khẳng định phức tạp hơn mà AI đánh giá dựa trên những gì AI thấy trên thiết bị.

Journeys cho Android Studio.
Tính năng Hành trình cho Android Studio.

Vì Gemini suy luận về những hành động cần thực hiện để đạt được mục tiêu, nên các hành trình sẽ có khả năng thích ứng tốt hơn với những thay đổi nhỏ đối với bố cục hoặc hành vi của ứng dụng. Nhờ đó, bạn sẽ gặp ít bài kiểm thử không ổn định hơn khi chạy trên các phiên bản khác nhau của ứng dụng và các cấu hình thiết bị khác nhau.

Bạn có thể viết và chạy hành trình ngay trong Android Studio hoặc qua dòng lệnh trên mọi thiết bị chạy Android cục bộ hoặc từ xa. IDE cung cấp trải nghiệm trình chỉnh sửa mới để tạo hành trình cũng như kết quả phong phú giúp bạn theo dõi tốt hơn quá trình suy luận và thực thi hành trình của Gemini.

Viết hành trình

Android Studio cung cấp một tệp mẫu và trải nghiệm trình chỉnh sửa mới giúp bạn tạo và chỉnh sửa hành trình dễ dàng hơn. Hành trình được viết bằng cú pháp XML để sắp xếp nội dung mô tả và các bước trong hành trình.

Trình chỉnh sửa hành trình trong Android Studio, cho thấy một tệp XML có các bước trong hành trình.

Để tạo và bắt đầu chỉnh sửa hành trình, hãy làm như sau:

  1. Trong bảng điều khiển Project (Dự án) trong Android Studio, hãy nhấp chuột phải vào mô-đun ứng dụng mà bạn muốn viết hành trình.
  2. Chọn New > Journey Test (Mới > Kiểm thử hành trình).
  3. Trong hộp thoại xuất hiện, hãy cung cấp tên và nội dung mô tả cho hành trình của bạn.

    Một hộp thoại trong Android Studio mà bạn dùng để tạo tệp hành trình.
    Hộp thoại trong Android Studio dùng để tạo tệp hành trình.

  4. Nhấp vào Hoàn tất. Android Studio sẽ tạo một tệp XML cho hành trình của bạn với tên mà bạn đã chọn. Bạn có thể sử dụng khung hiển thị Code (Mã) để chỉnh sửa trực tiếp XML hoặc khung hiển thị Design (Thiết kế) để có trải nghiệm chỉnh sửa đơn giản hơn.

  5. Khi xem hành trình trong khung hiển thị Design (Thiết kế), hãy dùng trường văn bản để mô tả từng bước trong hành trình. Mỗi bước có thể bao gồm các hành động mô tả mà bạn muốn Gemini thực hiện hoặc các câu khẳng định mà bạn muốn Gemini đánh giá.

  6. Nhấn Enter trên bàn phím để bắt đầu một bước mới trong cùng một hành trình. Bạn có thể lặp lại thao tác này khi cần cho từng bước trong hành trình mà bạn muốn xác định.

Định cấu hình biến thể bản dựng

Hành trình chạy trên các biến thể bản dựng cụ thể của ứng dụng. Khi bạn tạo hành trình lần đầu tiên bằng trình hướng dẫn, bộ kiểm thử được tạo sẽ được định cấu hình để chạy trên biến thể bản dựng đang hoạt động trong Android Studio.

Tuy nhiên, nếu sau này bạn chuyển biến thể bản dựng đang hoạt động trong Android Studio (ví dụ: sang một hương vị sản phẩm khác như demoDebug) mà không cập nhật cấu hình, thì việc chạy hành trình sẽ không thành công. Để khắc phục vấn đề này, bạn phải thêm biến thể mới vào thuộc tính targetVariants trong khối testSuites của tệp build.gradle.kts (hoặc build.gradle) ở cấp mô-đun.

Ví dụ: để định cấu hình bộ journeysTest cho biến thể demoDebug:

android {
    // ...
    testSuites {
        create("journeysTest") {
            // ...
            targetVariants += listOf("demoDebug")
        }
    }
}

Mẹo viết hành trình

Mặc dù AI có thể hiểu hầu hết các bước được viết bằng các ngôn ngữ được hỗ trợ, nhưng việc làm theo những mẹo viết hành trình này có thể giúp bạn nhận được kết quả chính xác và như mong đợi hơn:

  • Giả sử ứng dụng của bạn đã ở nền trước: Việc chạy hành trình sẽ tự động khởi chạy ứng dụng của bạn. Các bước trong hành trình phải bắt đầu sau khi ứng dụng đã khởi chạy hoàn toàn. Tức là bạn không cần thêm bước "khởi chạy ứng dụng".
  • Sử dụng ngôn ngữ rõ ràng: Việc sử dụng ngôn ngữ chính xác sẽ giảm thiểu tình trạng hiểu sai và cải thiện độ tin cậy.
Thay vì Nên
"Chọn nút đóng" "Nhấn vào "Đóng"" hoặc chỉ "Đóng"
"Nhập "cần tây"" "Nhập "cần tây" vào thanh tìm kiếm ở đầu màn hình chính"
"Vuốt để đóng" "Vuốt sang trái để đóng, sau đó thẻ sẽ không còn xuất hiện nữa"
  • Thêm tiêu chí thành công vào bước: Điều này giúp Gemini hiểu rõ hơn ý định của bạn và làm rõ thời điểm hành động hoàn tất và hành động tiếp theo có thể bắt đầu.
Thay vì Nên
"Chọn nút gửi" "Gửi email bằng cách nhấn vào nút gửi. Thao tác này sẽ đóng email và đưa bạn quay lại hộp thư đến."
"Chuyển đến giỏ hàng" "Nhấn vào biểu tượng giỏ hàng để chuyển đến trang giỏ hàng. Xác minh rằng giỏ hàng không có mặt hàng nào"
"Nhấp vào video đầu tiên" "Nhấp vào video đầu tiên và đợi video tải xong"
  • Tinh chỉnh hành trình: Nếu hành trình không thực thi như mong đợi, bạn có thể xem kết quả và kiểm tra "Action Taken" (Hành động đã thực hiện) và "Reasoning" (Lý do) tương ứng để hiểu lý do Gemini có thể không thực thi các bước như bạn mong đợi. Hãy sử dụng thông tin này để làm rõ thêm hướng dẫn của bạn.
  • Chia hành trình thành các bước cụ thể hơn: Mặc dù AI có thể diễn giải các bước có nhiều hành động, nhưng đôi khi các bước rời rạc chi tiết hơn có thể cải thiện độ chính xác và khả năng tái tạo của hành trình.
    • "Lỗi: Không thể hoàn tất hành động trong số lần thử tối đa cho phép": Nếu bạn gặp lỗi này, hãy thử chia các bước không thành công thành 2 hoặc nhiều bước nhỏ hơn. Đó là vì lỗi này xảy ra nếu AI không thể hoàn tất hành động sau khi thử tương tác với ứng dụng của bạn số lần tối đa.

Các tính năng được hỗ trợ và không được hỗ trợ

Sau đây là thông tin tổng quan về các tính năng được hỗ trợ và chưa được hỗ trợ đầy đủ khi viết hành trình. Các danh sách sau đây chưa đầy đủ.

Các hành động sau đây được hỗ trợ trong hành trình:

  • Nhấn vào các phần tử trên giao diện người dùng.
  • Nhập để nhập văn bản vào các trường văn bản.
  • Vuốt/Cuộn theo một hướng nhất định để di chuyển trên giao diện người dùng.

Các tính năng sau đây chưa được hỗ trợ đầy đủ tại thời điểm này hoặc có thể hoạt động không nhất quán:

  • Cử chỉ nhiều ngón tay (ví dụ: chụm để thu phóng) – Các tương tác yêu cầu 2 hoặc nhiều điểm tiếp xúc trên màn hình cùng lúc, chẳng hạn như chụm để phóng to hoặc thu nhỏ, hoặc vuốt bằng 2 ngón tay.
  • Nhấn và giữ – Nhấn và giữ ngón tay trong khoảng thời gian dài hơn thao tác nhấn tiêu chuẩn.
  • Nhấn đúp – Nhanh chóng nhấn vào cùng một vị trí trên màn hình 2 lần liên tiếp trong thời gian ngắn.
  • Xoay/gập màn hình – Xử lý các thay đổi về hướng thiết bị (ví dụ: giữa hướng dọc và hướng ngang) hoặc trạng thái thực của thiết bị có thể gập lại (ví dụ: mở hoặc đóng).
  • Bộ nhớ – Giữ lại và thu hồi thông tin, bối cảnh hoặc thông tin đầu vào cụ thể của người dùng trong các tương tác hoặc bước trước đó.
  • Đếm – Theo dõi chính xác số lượng, tần suất hoặc tiến trình.
  • Câu lệnh có điều kiện – Thực thi các hành động dựa trên việc các điều kiện được chỉ định khác có được đáp ứng hay không.

Các tính năng và khả năng không ngừng được cải thiện. Bạn nên kiểm tra lại trang này sau để tìm hiểu về các tính năng và khả năng bổ sung. Để giúp chúng tôi cải thiện tính năng Hành trình, hãy chia sẻ ý kiến phản hồi của bạn.

Chạy hành trình

Bạn có thể chạy hành trình trên mọi thiết bị cục bộ hoặc từ xa hiện có, tương tự như mọi bài kiểm thử đo lường khác. Android Studio sẽ tạo ra kết quả phong phú giúp bạn hiểu rõ quá trình thực thi hành trình.

Để kiểm thử hành trình, hãy làm như sau:

  1. Chọn thiết bị mục tiêu trên thanh công cụ chính, giống như khi bạn chạy bài kiểm thử đo lường.
  2. Chuyển đến tệp XML hành trình mà bạn muốn kiểm thử rồi mở tệp đó trong trình chỉnh sửa.
  3. Trong trình chỉnh sửa, hãy làm theo một trong những cách sau:
    1. Nếu bạn đang ở khung hiển thị Design (Thiết kế), hãy nhấp vào Run Journey (Chạy hành trình).
    2. Nếu bạn đang ở khung hiển thị Code (Mã), hãy nhấp vào Run 'test' (Chạy "kiểm thử") trong rãnh bên cạnh vị trí tên của hành trình được xác định trong XML.

Android Studio sẽ tạo cấu hình Journeys Test (Kiểm thử hành trình) cho bạn và chạy cấu hình đó trên thiết bị mục tiêu. Trong quá trình thực thi, Android Studio sẽ tạo và triển khai ứng dụng của bạn, đồng thời kết nối với Gemini để xác định những hành động cần thực hiện cho từng bước trong hành trình.

Bảng kết quả kiểm thử hành trình trong Android Studio, hiển thị thông tin chi tiết về từng bước và lý do của Gemini.
Bảng kết quả kiểm thử hành trình trong Android Studio, hiển thị thông tin chi tiết về bước và lý do của Gemini.

Chạy hành trình trên mọi ứng dụng được cài đặt sẵn

Bạn có thể chạy hành trình trên một ứng dụng được cài đặt sẵn trên thiết bị kiểm thử. Điều này rất hữu ích nếu bạn muốn kiểm thử phiên bản chính thức của ứng dụng hoặc nếu bạn chưa cập nhật ứng dụng lên Trình bổ trợ Android cho Gradle 9.0.0 trở lên.

  1. Mở hoặc tạo một dự án mới được cập nhật lên Trình bổ trợ Android cho Gradle 9.0.0 trở lên.
  2. Viết hành trình.
  3. Chỉnh sửa cấu hình chạy cho hành trình và thêm các biến môi trường sau. Cấu hình chạy sẽ tự động được tạo khi bạn cố gắng chạy hành trình trong Android Studio.
    • Đặt JOURNEYS_CUSTOM_APP_ID thành mã gói của ứng dụng mục tiêu.
  4. Chạy hành trình mà bạn đã chỉnh sửa. Android Studio sẽ thực thi các bước trong hành trình trên ứng dụng mục tiêu mà bạn đã chỉ định.

Chạy hành trình qua dòng lệnh

Để chạy tính năng Hành trình qua dòng lệnh, hãy sử dụng CLI Android.

Xem kết quả

Khi Android Studio hoàn tất việc kiểm thử hành trình, bảng kết quả kiểm thử sẽ tự động xuất hiện để cho bạn xem kết quả.

Bảng kết quả kiểm thử hành trình trong Android Studio, hiển thị thông tin chi tiết về từng bước và lý do của Gemini.
Bảng kết quả kiểm thử hành trình trong Android Studio, hiển thị thông tin chi tiết về bước và lý do của Gemini.

So với các bài kiểm thử đo lường khác mà bạn có thể chạy trong Android Studio, có một số điểm khác biệt về cách hiển thị kết quả cho hành trình.

  • Bảng điều khiển Tests (Kiểm thử) chia hành trình thành các bước rời rạc. Bạn có thể nhấp vào từng bước để tìm hiểu thêm thông tin về cách Gemini thực thi bước đó.
  • Bảng điều khiển Results (Kết quả) cho thấy thông tin phong phú giúp bạn hiểu cách Gemini hiểu và suy luận về hành trình của bạn, cũng như cách hành trình đó được thực thi.
    • Ảnh chụp màn hình được gửi đến Gemini sẽ xuất hiện để hỗ trợ trực quan cho từng hành động trong bước.
    • Mỗi hành động đã thực hiện và lý do của Gemini khi thực hiện hành động đó được mô tả bên cạnh mỗi ảnh chụp màn hình.
    • Mỗi hành động trong bước đều được đánh số.

Vấn đề đã biết

  • Vấn đề về bộ nhớ đệm cấu hình Gradle: Hành trình có thể hoạt động không như mong đợi khi bạn bật bộ nhớ đệm cấu hình Gradle. Ví dụ: điều này có thể khiến tệp hành trình không chính xác được chạy khi có nhiều tệp hành trình. Điều này cũng có thể gây ra vấn đề về xác thực.

    Để khắc phục vấn đề này, bạn có thể tắt bộ nhớ đệm cấu hình bằng cách đặt org.gradle.configuration-cache=false trong tệp gradle.properties của dự án.

  • Khi kiểm thử hành trình, tất cả quyền cho ứng dụng của bạn đều được cấp theo mặc định.

  • Khi kiểm thử hành trình trên thiết bị chạy Android 15 (API cấp 35), bạn có thể thấy cảnh báo trên thiết bị có nội dung "Unsafe App Blocked" (Ứng dụng không an toàn bị chặn) cho "AndroidX Crawler". Bạn có thể nhấp vào Install anyway (Vẫn cài đặt) để bỏ qua quy trình kiểm tra này. Ngoài ra, bạn có thể Định cấu hình các tuỳ chọn cho nhà phát triển trên thiết bị và tắt tuỳ chọn để Verify apps over USB.