swipe
Vuốt theo mọi hướng với tốc độ và khoảng cách tùy chỉnh.
Command swipe giả lập cử chỉ vuốt trên màn hình device. Bạn có thể định nghĩa cú vuốt theo hướng, theo tọa độ, hoặc bắt đầu từ một phần tử UI cụ thể.
Tham số
Tùy hành vi vuốt mong muốn, bạn cần chọn giữa các tham số sau.
| Parameter | Mô tả |
|---|---|
start | Tọa độ bắt đầu của cú vuốt. Chỉ định dạng tọa độ pixel x, y hoặc phần trăm x%, y% so với kích thước màn hình. |
end | Tọa độ kết thúc của cú vuốt. Chỉ định dạng tọa độ pixel x, y hoặc phần trăm x%, y% so với kích thước màn hình. |
direction | Hướng vuốt. Nhận LEFT, RIGHT, UP hoặc DOWN. Không dùng chung được với start và end. |
from | Selector của phần tử dùng làm điểm bắt đầu cú vuốt. Mặc định, cú vuốt bắt đầu từ tâm của phần tử khớp. Không dùng chung được với start và end. Bạn có thể thêm point không bắt buộc vào selector để bắt đầu ở chỗ khác trong vùng của phần tử (cùng định dạng với point của tapOn). |
duration | Thời lượng cú vuốt tính bằng mili giây. Thời lượng dài hơn thì vuốt chậm hơn. Mặc định: 400 mili giây. |
waitToSettleTimeoutMs | Thời gian tối đa tính bằng mili giây chờ màn hình ổn định trước khi chạy command tiếp theo. Đây là timeout cố gắng hết mức và không làm gián đoạn các thao tác cốt lõi. Hữu ích với màn hình có animation liên tục như đồng hồ đếm ngược. |
Khi dùng from, các trường lồng sau có thể dùng trên object selector:
| Nested field | Mô tả |
|---|---|
point | Không bắt buộc. Tọa độ trong phần tử khớp. Dùng phần trăm tương đối (ví dụ "50%, 85%") hoặc độ lệch tuyệt đối theo pixel trong phần tử (ví dụ "25, 75"). Khi bỏ qua, cú vuốt bắt đầu ở tâm phần tử. |
Ví dụ sử dụng
Command swipe có thể cấu hình theo nhiều cách để phù hợp các tình huống test khác nhau.
Vuốt theo hướng
Ví dụ này vuốt từ bên phải sang bên trái màn hình.
- swipe:
direction: LEFTTham số direction dùng các tọa độ bắt đầu và kết thúc tương đối sau:
| Direction | Bắt đầu (width%, height%) | Kết thúc (width%, height%) |
|---|---|---|
LEFT | (90% chiều rộng, 50% chiều cao) | (10% chiều rộng, 50% chiều cao) |
RIGHT | (10% chiều rộng, 50% chiều cao) | (90% chiều rộng, 50% chiều cao) |
DOWN | (50% chiều rộng, 20% chiều cao) | (50% chiều rộng, 90% chiều cao) |
UP | (50% chiều rộng, 50% chiều cao) | (50% chiều rộng, 10% chiều cao) |
Vuốt từ một phần tử
Cú vuốt dùng cùng các điểm cuối như cú vuốt theo hướng đã chọn: mặc định điểm bắt đầu là tâm của phần tử, và điểm kết thúc theo hướng đó (ví dụ với LEFT, là 10% chiều rộng màn hình ở cùng vị trí dọc).
Ví dụ này bắt đầu cú vuốt từ tâm của phần tử có ID feeditem_identifier và vuốt lên.
- swipe:
from:
id: "feeditem_identifier"
direction: UPVuốt từ một điểm trong phần tử
Thêm point vào selector from để cử chỉ bắt đầu tại điểm chỉ định trong vùng của phần tử khớp thay vì tâm. Tương tự chạm một tọa độ trong phần tử.
Một số trường hợp hữu ích:
- UI tổng hợp, ví dụ card có carousel ảnh ở trên và text ở dưới, nơi vuốt ở trên/dưới có thể cho kết quả khác nhau
- điều khiển vuốt để mở khoá, nơi cú vuốt cần đi từ bên trái sang bên phải của điều khiển để kích hoạt
- swipe:
from:
text: "Desired card text"
point: "50%, 85%"
direction: LEFTGiá trị phần trăm tính theo chiều rộng và chiều cao của phần tử khớp (không phải màn hình). Giá trị tuyệt đối là độ lệch pixel từ góc trên bên trái của phần tử.
Thông tin
Ưu tiên selector phần tử kèm point không bắt buộc hơn tọa độ start / end tuyệt đối theo màn hình. Tọa độ tuyệt đối theo màn hình khiến test dễ vỡ giữa các device và độ phân giải.
Vuốt theo tọa độ tương đối
Ví dụ này vuốt ngang từ mép phải sang mép trái màn hình bằng phần trăm. Cách này đảm bảo cử chỉ nhất quán giữa các device có kích thước màn hình khác nhau.
- swipe:
start: 90%, 50%
end: 10%, 50%Vuốt theo tọa độ tuyệt đối
Ví dụ này vuốt giữa hai điểm xác định bằng tọa độ pixel tuyệt đối.
- swipe:
start: 100, 200
end: 300, 400Lưu ý
Không khuyến khích dùng tọa độ tuyệt đối vì có thể làm test fail trên device có độ phân giải màn hình khác.
Vuốt với thời lượng tùy chỉnh
Ví dụ này vuốt chậm bằng cách dùng thời lượng 2000 mili giây.
- swipe:
direction: LEFT
duration: 2000Vuốt với settle timeout tùy chỉnh
Ví dụ này giới hạn thời gian Astra Scout chờ UI ổn định sau cú vuốt ở 500 mili giây.
- swipe:
direction: UP
waitToSettleTimeoutMs: 500