Bỏ qua, đến nội dung

Khám phá app ​

Để AI khám phá app như người dùng và báo cáo những gì tìm thấy.

Khám phá app cho AI dùng thử app như một người dùng thật và báo cáo những gì nó thấy: các màn hình, bug và flow đề xuất. Tester và QA dùng nó để tìm bug hoặc tạo flow mà chưa biết trước phải test gì.

Ở mỗi step, Astra Scout đọc màn hình và dựng một danh sách thao tác an toàn (bấm, điền, cuộn, quay lại). AI chọn một thao tác kèm lý do, và Astra Scout thực hiện nó.

Đây là một trong nhiều cách tạo flow. Xem Tạo flow.

Bắt đầu khám phá ​

Trước khi bắt đầu, kết nối một device iOS hoặc Android. Khám phá chạy trong cửa sổ Khám phá app riêng.

  1. Kết nối một device ở cửa sổ chính.
  2. Chọn Device > Khám phá app… (Shift+Cmd+E), hoặc bấm nút la bàn dưới mirror của device (Khám phá…). Cả hai bị vô hiệu cho đến khi có device kết nối. Cửa sổ Khám phá app mở ra với form.

Cửa sổ Khám phá app trước khi bắt đầu

  1. Trong Khám phá gì, điền:
ÔÝ nghĩa
DeviceDevice đang kết nối (chỉ đọc). Ô ghi "chưa kết nối" khi chưa có device.
AppApp cần khám phá, dưới dạng appId (bundle id trên iOS). Ban đầu là app đang chọn trên toolbar, hoặc app khám phá lần trước. Nút đồng hồ (Dùng gần đây) liệt kê các app đã dùng.
PersonaAI đóng vai ai. Một dòng dưới ô chọn mô tả hành vi. Xem bảng bên dưới.
Mục tiêu (không bắt buộc)Cần làm tới đâu, ví dụ "open General → About". Giá trị trong dấu ngoặc kép sẽ được gõ vào ô nhập, ví dụ search "California".
  1. Trong Giới hạn và an toàn, đặt Số step tối đa (mặc định 40, từ 1 đến 200) và Số phút tối đa (mặc định 10, từ 1 đến 60). Nút thông tin cạnh tiêu đề liệt kê các rule an toàn.
  2. Bấm Bắt đầu khám phá trên toolbar (hoặc nhấn Return). Nút bị vô hiệu cho đến khi có device kết nối và ô App không trống.

Dưới form là Các lần khám phá trước: mỗi lần khám phá cũ một hàng gồm app, persona, cách đây bao lâu, kết quả, và "N screens · N issues". Bấm một hàng để mở kết quả của nó. Nếu không đọc được kết quả cũ, cửa sổ ghi "Không tải được lần khám phá này." kèm Bắt đầu lần khám phá mới.

Persona ​

Tên persona luôn gồm tên tiếng Việt và tên tiếng Anh trong ngoặc, dù app đang dùng ngôn ngữ nào.

PersonaHành vi
Người mới cẩn thận (methodical newcomer)Đọc từng màn hình và làm theo gợi ý theo thứ tự.
Người chơi tốc độ (speedrunner)Đi đường ngắn nhất tới mục tiêu, bỏ qua mọi màn hình không bắt buộc, bấm nút hợp lý đầu tiên.
Quỷ phá rối (chaos gremlin)Làm điều bất ngờ: hay quay lại, bấm lộn xộn, điền ô rồi bỏ đi.
Người vội (overloaded manager)Muốn xong một việc trong vài giây, đọc lướt, dùng tìm kiếm.
Người lo quyền riêng tư (privacy-paranoid)Từ chối tracking và quyền, chọn không tham gia, tìm cài đặt quyền riêng tư.
Người khám phá tính năng (feature explorer)Mở mọi tab, menu và cài đặt một lần.

Mặc định là methodical newcomer.

Khi đang chạy ​

Cửa sổ hiện một dải tiến trình: ảnh nhỏ của màn hình hiện tại, "Step 3/40 · persona", số màn hình, issue và lần gọi AI, thanh tiến trình, tên màn hình, thao tác và lý do của AI. Bên dưới, bản đồ lớn dần khi tìm thấy màn hình. Bấm Dừng trên toolbar để kết thúc sớm.

AI có thể làm gì ​

AI chọn từ danh sách do Astra Scout dựng: bấm một phần tử, điền dữ liệu test (như test@example.com), cuộn, quay lại, chờ hoặc kết thúc. Chính Astra Scout thực hiện thao tác.

An toàn

Nút mua hàng và paywall được đưa cho AI với nhãn "(mua hàng – sandbox)", nên chỉ khám phá trên device test. Ô mật khẩu và ô thẻ không bao giờ được gõ, chúng hiện trong phần Bị loại của tab Step với nhãn như "bị loại (mật khẩu)". Ngoại lệ duy nhất là mật khẩu sandbox trên sheet mua hàng của hệ thống iOS: Astra Scout gõ nó từ biến SANDBOX_PASSWORD của môi trường đang chọn ở thanh Runner (xem Môi trường và biến). Không có biến này, lần khám phá dừng ở trạng thái Cần tester.

Lần khám phá được quay video. AI cũng có thể kiểm tra một màn hình mới để tìm bug giao diện. Nó làm việc này tối đa một lần cho mỗi màn hình và tối đa 3 lần cho mỗi lần khám phá. Nếu ngân sách lần gọi AI không đủ, phần đầu kết quả cho biết đã bỏ qua bao nhiêu lần kiểm tra thêm.

Khám phá dừng khi hết step, thời gian hoặc số lần gọi AI, không có tiến triển (cùng màn hình và cùng thao tác ba lần), app crash, bấm Dừng, có error, hoặc AI báo đã xong. Phần đầu kết quả hiện lý do, ví dụ "AI kết thúc", "Hết số step", "Hết thời gian", "Không tiến triển", "App bị crash", "Hết lần gọi AI" hoặc "Đã dừng".

Kết quả ​

Khi lần khám phá kết thúc, toolbar hiện một ô chọn với các tab kết quả. Kết quả được lưu và mở lại được ở Các lần khám phá trước. Các tab có kèm số lượng:

  • Bản đồ: các màn hình đã tìm thấy và số lần ghé mỗi màn hình.
  • Hành trình N: các đường đi nó đã thực hiện. Mỗi hành trình là một chuỗi màn hình AI đi qua để làm một việc.
  • Issue N: phát hiện, chia thành issue chức năng và warning, kèm severity.
  • Flow N: một flow Maestro đề xuất cho mỗi hành trình.
  • Step N: mọi step kèm màn hình, thao tác, lý do của AI và error.

Phía trên các tab, phần đầu hiện lý do dừng kèm biểu tượng pass hoặc fail, các số Step, Màn hình, Issue và Lần gọi AI, Xem video, và Báo bug lên Jira… kèm số issue. Liên kết tới các issue Jira đã tạo hiện bên cạnh. Bấm Bắt đầu lần khám phá mới trên toolbar để xoá kết quả và quay lại form.

Kết quả của một lần khám phá

Đọc bản đồ ​

  1. Mở tab Bản đồ.
  2. Bấm một màn hình. Thanh kiểm tra bên phải hiện ảnh chụp, mã định danh, số lần ghé, step đầu tiên thấy nó, cách đến được đó, các hành động từ đó, các hành trình đi qua và các issue tìm thấy ở đó. Màn hình mua hàng được đánh dấu. Khi chưa chọn gì, thanh kiểm tra ghi Chọn một màn hình trên bản đồ. Hiện hoặc ẩn nó bằng nút Thanh kiểm tra trên toolbar.
  3. Bản đồ vẽ lần đến đầu tiên của mỗi màn hình. Bật Mọi chuyển tiếp trên toolbar để vẽ mọi chuyển tiếp giữa các màn hình.
  4. Thu phóng bằng các nút ở góc dưới bên phải bản đồ, Cmd+-, Cmd+0 (Vừa khung) và Cmd++, hoặc chụm hai ngón trên trackpad.

Hành trình, issue, flow và step ​

  • Hành trình: mỗi hàng có hành trình, dấu Pass mục tiêu khi nó pass mục tiêu, và các hành động của nó. Bấm Hiện trên bản đồ để làm nổi bật nó trên bản đồ. Bấm tên hành trình ở góc trên bên trái bản đồ để bỏ làm nổi bật.
  • Issue: mỗi hàng hiện mức (1 đến 5), loại issue, mô tả và màn hình. Bấm một hàng để xem ảnh chụp, hành vi mong đợi và thực tế, cùng các step của nó trong thanh kiểm tra, kèm Báo bug lên Jira… cho riêng issue đó.
  • Flow: mỗi flow đề xuất hiện tên, tên file và Hợp lệ hoặc Không hợp lệ. Flow không hợp lệ hiện "Không lưu được: …" và không tick được. Bấm một flow để đọc YAML của nó trong thanh kiểm tra.
  • Step: khi có thứ bị bỏ ra, một ô chọn hiện Step và Bị loại N. Bị loại liệt kê loại (như "bị loại (mật khẩu)", "bị loại (mua hàng)" hoặc "bị loại (hệ thống)"), văn bản, lý do và màn hình.

Lưu các flow bạn muốn ​

  1. Mở tab Flow.
  2. Tick những flow cần giữ. Flow không tick thì không được lưu.
  3. Bấm Lưu N flow đã chọn. Các flow được ghi vào workspace và hiện trong navigator File. Một dòng cạnh nút sau đó ghi "Đã lưu: …" kèm tên file. Nếu tên file đã có, app dùng một tên còn trống.

Nút bị vô hiệu khi chưa tick flow nào hoặc chưa mở workspace.

Issue và severity ​

Mỗi phát hiện có một loại issue, một mức từ 1 (nhẹ) đến 5 (chặn người dùng), màn hình, hành vi mong đợi và thực tế, các step và ảnh chụp màn hình. Các loại issue là Crash, Kẹt màn hình, Bấm không phản hồi, Bug giao diện, Hộp thoại error và Thao tác không thành công.

NhómVí dụLàm lần khám phá fail?
Issue chức năngCrash, hộp thoại error, bug giao diện mà AI đánh giá là chặn người dùngCó
Warning (giao diện hoặc trải nghiệm)Bug thẩm mỹ, kẹt ở một màn hình, bấm không phản hồi, thao tác failKhông

Báo bug ​

  1. Mở một phát hiện ở tab Issue và bấm Báo bug lên Jira… trong thanh kiểm tra. Hoặc bấm Báo bug lên Jira… ở phần đầu kết quả để báo tất cả phát hiện. Hoặc chọn Device > Báo bug lên Jira… (Shift+Cmd+B) ở cửa sổ chính.
  2. Sheet Báo lên Jira mở ra. Xem lại và gửi.

Sheet Báo lên Jira

Xem Jira.

Mua hàng ​

Nút mua hàng và paywall được đưa cho AI như mọi điều khiển khác, với nhãn "(mua hàng – sandbox)". Chỉ chạy Khám phá trên device test. Với hộp thoại mật khẩu, hoặc sau khi bấm mua trên iOS device, lần khám phá có thể dừng ở trạng thái Cần tester. AI không tự làm tiếp được và cần một người. Phần đầu ghi "Cần tester làm tiếp trên device" kèm lý do. Làm tiếp trên device, rồi bắt đầu lần khám phá mới nếu muốn đi tiếp.

Từ terminal ​

Một AI CLI (Claude Code, Codex, Gemini CLI) đã cài plugin scout cũng chạy được khám phá, không cần bấm trong app. Nó dùng các tool MCP explore_app và get_explore (skill explore-app của plugin). Flow đề xuất chỉ được trả về, và việc lưu cần save_flow sau khi người dùng đồng ý. Xem Plugin scout.