Tổng quan về flow
Flow là các script test YAML mô tả hành trình người dùng cho tự động hóa UI.
Flow là các script test viết bằng YAML, mô tả hành trình của người dùng để tự động hóa UI. Mỗi flow đại diện cho một đoạn của hành trình, chẳng hạn Đăng nhập, Thanh toán hay tìm một món hàng. Một flow có thể là cả hành trình hoàn chỉnh, hoặc một mảnh nhỏ để ghép thành các kịch bản lớn hơn. Astra Scout chạy flow trên iOS và Android bằng maestro-runner, theo cú pháp YAML của flow Maestro.
Cấu trúc của một flow
Flow dùng định dạng YAML dễ đọc, cả developer lẫn tester thủ công đều có thể duy trì.
Một flow chuẩn có hai phần, ngăn cách bằng ba dấu gạch ngang (---):
- Phần cấu hình: nằm phía trên dấu
---. Phần này chứaappIdcủa app cần test và các metadata không bắt buộc nhưname,tagsvà biến môi trường. - Phần lệnh: chuỗi các lệnh khai báo, như
tapOnvàinputText, mô phỏng thao tác của người dùng và kiểm tra trạng thái UI.
# --- Phần cấu hình ---
appId: com.example.app # Bắt buộc: ID của app cần test
name: My Login Flow # Tùy chọn: đặt tên cho flow
tags: # Tùy chọn: lọc các test sẽ chạy
- smoke-test
env: # Tùy chọn: map các biến môi trường
USERNAME: "user@example.com"
---
# --- Phần lệnh ---
- launchApp # Mở app
- tapOn: "Username" # Tương tác với ô username
- inputText: ${USERNAME} # Nhập giá trị biến môi trường
- tapOn: "Login" # Chạm nút đăng nhập
- assertVisible: "Welcome" # Kiểm tra thông báo thành công xuất hiệnĐể chạy một flow, mở nó trong Astra Scout, kết nối device rồi chạy. Xem Chạy flow.
Nền tảng
Astra Scout chạy flow trên iOS (simulator và iPhone thật) và Android (emulator và device thật). Flow web không được hỗ trợ. Xem Nền tảng được hỗ trợ.
Khám phá các khả năng của flow
- Điều khiển flow và logic: xây dựng hành trình linh hoạt, thông minh với subflow module hóa, rẽ nhánh theo điều kiện, vòng lặp và hook vòng đời.
- JavaScript: mở rộng YAML bằng script. Xử lý dữ liệu phức tạp, lấy output của script và gọi API bên ngoài qua HTTP.
- Quản lý workspace: chuyển từ viết lệnh sang thiết kế một hệ thống test với
config.yaml, cấu trúc repo, tag và phân tích run.
Step tiếp theo
Tìm hiểu cách xây dựng hành trình bền vững bằng cách nắm vững Điều khiển flow và logic.
