Test theo team
Chuẩn bị Mac và iOS device của tester từ đầu và chạy flow của team mà không cần source code của app.
Tester chuẩn bị Mac và iOS device rồi chạy flow của team mà không cần source code của app. Team đưa một thư mục flow và upload một bản QA của app lên builds của team. Phần chuẩn bị Mac áp dụng cho mỗi máy Mac, phần chuẩn bị iOS device cho mỗi iOS device.
Trước khi bắt đầu
| Ai | Đưa gì |
|---|---|
| Tester | Máy Mac, iOS device, một Apple ID miễn phí |
| Team app | Thư mục flow, bản QA đã upload của app có iOS device của tester, và các giá trị bí mật mà flow cần |
| Chủ tài khoản Apple Developer | Đăng ký iOS device của tester để cài được bản QA |
Simulator dùng hai step đầu của phần chuẩn bị Mac. Các phần sau dành cho iOS device.
1. Chuẩn bị máy Mac
- Cài Astra Scout từ file DMG. Xem Cài đặt. Các bản sau tới qua chính app: Cài đặt > Chung > Cập nhật có Tự động kiểm tra bản cập nhật (app kiểm tra mỗi ngày một lần và hỏi trước khi cài), và Astra Scout > Kiểm tra bản cập nhật… kiểm tra ngay.
- Cài Xcode từ App Store, mở một lần và để nó cài các thành phần.
- Trong Xcode > Settings > Accounts, thêm Apple ID của bạn. Apple ID miễn phí là đủ. Chọn team, rồi bấm Manage Certificates…, rồi + > Apple Development.
- Trong Astra Scout, chọn Astra Scout > Cài đặt… (
Cmd+,) và bấm iOS ở thanh bên. Danh sách Team ký app hiện Tự động và từng team tìm thấy trong Keychain. Bấm hàng của team bạn. Dấu tick cho biết lựa chọn. - Nếu team của bạn không có trong danh sách, kiểm tra chứng chỉ ở step 3 đã tạo xong, rồi bấm Quét lại. Team ID khác… cho phép bạn gõ Team ID bằng tay.

Astra Scout chỉ dùng team này để ký WebDriverAgent, app phụ điều khiển iOS device. Chữ ký của Apple ID miễn phí có hạn 7 ngày; hết hạn thì kết nối lại iOS device, Astra Scout ký lại. Bản QA của app do team app ký, không phải bạn. Chi tiết ở Device.
2. Chuẩn bị iOS device
- Cắm cáp, mở khoá iOS device và chạm Trust khi máy hỏi "Trust This Computer?".
- Trong Xcode, mở Window > Devices and Simulators, chọn iOS device và đợi tới khi sẵn sàng.
- Trên iOS device, bật Settings > Privacy & Security > Developer Mode. Máy khởi động lại; mở khoá và xác nhận.
- Đặt Settings > Display & Brightness > Auto-Lock > Never khi test.
- Gửi UDID của iOS device cho team. UDID là id Apple dùng để cho phép iOS device cài các bản build của team: bản QA chỉ cài được lên iOS device có UDID trong provisioning profile của nó. Ở step 4 của phần Mở workspace, bấm Gửi UDID… trong cửa sổ Builds để gửi. Nếu không gửi được từ Astra Scout, sao chép Identifier của iOS device trong Devices and Simulators và gửi cho chủ tài khoản Apple Developer. Team app build lại sau khi iOS device của bạn được thêm vào. Xem Builds.
3. Lấy flow và bản QA
Xin team app:
- Thư mục flow: thư mục có các flow
.yaml, thư mụcsubflows/và catalogtracking-specs/. Giữ nguyên cả thư mục: flow gọi subflow theo đường dẫn tương đối. Khi team dùng Team Sync, chọn Clone Team Workspace… ở cửa sổ Chào mừng đến với Astra Scout thay vì chép thư mục. - Các giá trị bí mật mà flow dùng, ví dụ mật khẩu tài khoản sandbox. Nhập chúng thành biến, không ghi vào file flow. Xem Môi trường và biến.
Bản QA không cần chuyển file. Team app upload nó lên builds của team, và bạn chọn nó trong Astra Scout ở step sau. Bản TestFlight hay App Store không dùng được cho clearState. Xem Chia sẻ build cho tester.
4. Mở workspace và chọn bản build
Trong Astra Scout, chọn File > Mở workspace… và chọn thư mục flow. Ở cửa sổ Chào mừng đến với Astra Scout, Mở workspace… làm điều tương tự, và File > Mở gần đây liệt kê các thư mục bạn đã mở trước đó. Xem Chạy flow.

Kết nối iOS device: làm step 1 và 2 của phần Kết nối và chạy.
Chọn Window > Builds (
Option+Cmd+B). Đăng nhập bằng tài khoản Google nếu cửa sổ yêu cầu.Chọn project của app, rồi iOS, rồi một bản build. Trong inspector bên phải, dưới tên iOS device đang kết nối, nhãn Có trong profile hoặc Không có trong profile cho biết iOS device cài được bản build này hay không. Nếu ghi Không có trong profile, bấm Gửi UDID… và chờ bản build mới. Xem Builds.
Bấm Dùng bản này.
Flow bắt đầu bằng clearState sẽ gỡ app rồi cài lại bản đang dùng, nên run nào cũng như vừa cài mới. Bản đang dùng giữ nguyên cho tới khi bạn chọn bản khác. Astra Scout báo khi có bản build mới. Xem Builds và clearState trên iOS device.
5. Kết nối và chạy
Trên thanh công cụ, bấm bộ chọn device (nó ghi Chọn device cho đến khi bạn chọn). Gõ vào ô tìm kiếm nếu danh sách dài, rồi bấm iOS device. Lần đầu, Astra Scout build và cài WebDriverAgent. Vùng mirror hiện các step; nếu màn hình đang khoá, nó ghi "Đang chờ iOS device…". Mở khoá iOS device.

Nếu không kết nối được, vùng mirror hiện error kèm Kết nối lại và Ngắt kết nối. Khi ký (signing) không được, nó còn hiện Mở cài đặt iOS…, đưa bạn tới danh sách Team ký app (xem step 4 của phần chuẩn bị Mac).

Nếu iOS device hiện "Untrusted Developer", vào Settings > General > VPN & Device Management, chọn chứng chỉ Apple Development: …, chạm Trust, rồi kết nối lại.
Mở một flow và chọn Chạy > Chạy test (
Cmd+R), hoặc Chạy > Chạy tất cả test (Shift+Cmd+R).
6. Đọc kết quả
Navigator Test run liệt kê từng run là Pass, Fail hoặc "Running test". Bấm hàng flow để xem kết luận (Pass, Fail, Chưa xong, Chưa chắc chắn hoặc Bị chặn) trong khung chi tiết. Bị chặn là issue của device hoặc phần chuẩn bị, không phải bug của app. Xem Kết luận.

Bấm một run để xem các step của nó. Xem bản ghi (trong chi tiết của hàng và menu chuột phải) phát video của run; ảnh chụp trong flow được giữ cùng run.


Nếu flow kiểm tracking, tab Tracking của runner cho biết event nào đã tới, event nào thiếu hoặc sai. Xem Tracking.

Khi báo bug, gửi kèm report của run, video và log server. Chọn Help > Xem log server và sao chép nội dung log. Astra Scout xoá trống log này mỗi lần khởi động, nên sao chép trước khi mở lại app.
Xử lý sự cố
| Triệu chứng | Cách sửa |
|---|---|
| Không có event nào từ iOS device | Kiểm tra từng nguyên nhân sau. Bản đang dùng trong Window > Builds không phải bản QA: chọn bản QA và bấm Dùng bản này. Công tắc Nhận event từ device trong mạng trong Cài đặt > Amplitude đang tắt: bật nó, rồi bấm Khởi động lại server ngay để có hiệu lực. Mac và iOS device không dùng chung Wi-Fi: nối cả hai vào cùng một mạng. iOS chưa được cấp quyền Local Network cho app: cho phép khi iOS hỏi lần đầu mở app. |
"Chưa chọn bản build cho iOS device" (APP_FILE_REQUIRED) | Chưa có bản build nào đang dùng cho iOS device này. Bấm Mở Builds…, rồi Dùng bản này trên một bản build iOS. Nếu inspector ghi Không có trong profile, iOS device chưa có UDID trong provisioning profile: bấm Gửi UDID… và chờ bản build mới. |
| Sau một tuần WebDriverAgent không mở được | Chữ ký của Apple ID miễn phí đã hết hạn. Kết nối lại iOS device. |
| Chạm vào mirror không có tác dụng | Chọn lại iOS device trong bộ chọn device (hoặc Kết nối lại). |
"iOS device screen is locked" hoặc DEVICE_LOCKED | Mở khoá iOS device và đặt Auto-Lock là Never. Xem Khi iOS device tự khoá. |
Các issue khác ở Xử lý sự cố.
Dành cho team app
Team app chuẩn bị bản QA theo Gửi event của bản QA về Astra Scout: code, cấu hình Xcode, build cho simulator và iOS device. Team app upload build theo Chia sẻ build cho tester. Yêu cầu:
- Bản QA gửi event về Astra Scout: đọc
scoutServerUrlmà Astra Scout đưa vào lúc mở app và dùng làmserverUrlcủa Amplitude. Một bản build dùng được cho mọi tester. - Build để test, ký development hoặc ad hoc, không dùng TestFlight hay App Store, để tester cài được và
clearStatecài lại được. - Đăng ký iOS device của từng tester (UDID) trong tài khoản Apple Developer trước khi build. Một profile development hoặc ad hoc chứa tối đa 100 iOS device mỗi năm và hết hạn sau một năm.
- Chia sẻ thư mục flow (ví dụ một Git repository mà tester kéo về) và báo tester cần đặt những biến nào.
