Bỏ qua, đến nội dung

copyTextFrom ​

Sao chép nội dung văn bản từ một phần tử UI vào clipboard hoặc biến.

Command copyTextFrom sao chép text từ một phần tử UI và lưu vào bộ nhớ. Command này cần một Selector để xác định phần tử đích.

Truy cập text đã sao chép ​

Sau khi sao chép nội dung bằng copyTextFrom, bạn có hai cách dùng text đó:

  1. Dùng command pasteText để chèn ngay nội dung vào ô đang focus.
  2. Để so sánh bằng, xử lý logic phức tạp hoặc lưu text dùng về sau trong flow, dùng biến maestro.copiedText.

Ví dụ sử dụng ​

Các ví dụ sau minh họa cách dùng text đã sao chép.

Dán bằng command pasteText ​

Ví dụ này sao chép text từ phần tử có ID someId và dán vào ô tìm kiếm.

yaml
appId: com.example.app
---
- launchApp
- copyTextFrom:
    id: "someId"
- tapOn:
    id: "searchFieldId"
- pasteText

Truy cập bằng JavaScript ​

Text đã sao chép có sẵn trong JavaScript qua property maestro.copiedText. Ví dụ này sao chép text từ someId và dùng command inputText để thêm nội dung vào ô tìm kiếm.

yaml
appId: com.example.app
---
- launchApp
- copyTextFrom:
    id: "someId"
- tapOn:
    id: "searchFieldId"
- inputText: ${'Pasted using JavaScript: ' + maestro.copiedText}

Lưu và kiểm tra ​

Bạn có thể gán giá trị đã sao chép cho một biến tùy chỉnh để kiểm tra hoặc dùng lại sau trong flow, kể cả khi các command khác đã ghi đè clipboard.

Ví dụ này minh họa cách sao chép text từ một phần tử UI, lưu giá trị đã sao chép vào biến bằng maestro.copiedText, rồi kiểm tra text lấy được khớp với giá trị mong đợi.

yaml
# Sao chép text từ một phần tử
- copyTextFrom:
    id: "my_element"

# Lưu giá trị để dùng sau
- evalScript: ${output.myElementText = maestro.copiedText}

# Kiểm tra phần tử có đúng giá trị
- assertTrue: ${output.myElementText == "Correct Text"}

Tìm hiểu cách command pasteText hoạt động, hoặc cách dùng các Selectors có sẵn để xác định phần tử mong muốn khi sao chép nội dung.