0

Selenium IDE: cách xử lý với từng loại control

So với Selenium Webdriver thì Selenium IDE đơn giản và tiện lợi hơn rất nhiều. Với sự hỗ trợ của các thư viện có sẵn, người sử dụng không cần phải có khả năng và sự am hiểu sâu sắc về code Không khó khăn trong việc cài đặt bởi tool sẽ được add-on trực tiếp trên trình duyệt. Nhưng cũng chính vì thế mà IDE dường như bị hạn chế bởi trình duyệt và một số các script phức tạp. Bài viết này sẽ không đi sâu vào việc giới thiệu cũng như hướng dẫn cài đặt tool, thay vào đó sẽ tổng hợp một số cách xử lý với từng control mà IDE không record được.

1.UI - Check placeholder các trường Trên các form nhập liệu thường sử dụng place holder để guide người dùng cách thức thực hiện hoặc giải thích ý nghĩa trường. Để check các thông tin này, có thể sử dụng lệnh assertAttribute(attributeLocator, pattern): [id hoặc name của element]@[thuộc tính]. Ví dụ:

<tr>
    <td>assertAttribute</td>
    <td>id=SoKyHieu@placeholder</td>
    <td>Nhập số ký hiệu</td>
</tr>

2. UI - Lấy text trong các control

  • Trường hợp người dùng cần check xem thông tin đã nhập trên form có chính xác không, ví dụ như check data trên từng fields khi mở form Edit. Người dùng có thể sử dụng lệnh storeValue(locator, variableName). Ví dụ:

    <tr> <td>storeValue</td> <td>id=ThuTu</td> <td>ThuTu</td> </tr> <td>echo</td> <td>${ThuTu}</td> <td></td> </tr>
  • Khác với các trường là textbox, trường hợp trên form chứa cac control dạng Dropdown list, combo… sẽ sử dụng lệnh storeSelectedLabel(selectLocator, variableName). Ví dụ:

    <tr> <td>storeSelectedLabel</td> <td>id=SoVanBanID</td> <td>idsovb</td> </tr> <td>echo</td> <td>${idsovb}</td> <td></td> </tr>

3. UI - Check tooltip của các control Hiện nay việc sử dụng tooltip để chú giải và tăng tính usebility cho người dùng là rất phổ biến. Do đó việc check nội dung, chính tả không thể bỏ qua. Với IDE có thể sử dụng lệnh :

  • B1: Lệnh MouseOver(locator): di chuột vào trường thông tin để hiển thị tooltip.
  • B2: Sử dụng lệnh Verifytext hoặc assertText để so sánh nội dung trên tool tip với nội dung thông báo thực trên tooltip

4. Checkbox Với các trường dạng checkbox, sử dụng lệnh click(locator)

5. Tab Với các màn hình có sử dụng tab, khi cần thực hiện thao tác chuyển tab, có thể sử dụng lệnh keyPress(locator, keySequence). Trong đó keySequence là số tương ứng với phím trên keyboard lấy từ bảng mã ASCII (9). Ví dụ:

  • Command: keyPress
  • Target: id=idcombo
  • KeySequence: \9

6.Textbox Với các trường textbox, có thể sử dụng lệnh Type (locator, dữ liệu)

7.Combobox Trên form các trường dạng combobox cho phép người dùng chọn dữ liệu từ list, có thể sử dụng lệnh select(selectLocator, optionLocator): chọn giá trị. Trong đó selectLocator là id của combo; optionLocator là giá trị được chọn. Ví dụ:

  • Command: select
  • Target: //select[@id=’idcombo’]
  • Value: giá trị được truyền vào

8. Multichoice or Multiselect combobox Với các trường Multichoice - dạng combobox nhưng người dùng được phép chọn nhiều giá trị. Người dùng có thể sử dụng lệnh addSelection. Chọn bao nhiêu giá trị cho trường đó thì sử dụng bấy nhiêu lệnh addSelection. Ví dụ:

  • Command: addSelection
  • Target: //select[@id=’idcombo’] - trường multichoice chứa dữ liệu cần chọn
  • Value: giá trị 1 được truyền vào
  • Command: addSelection
  • Target: //select[@id=’idcombo’] - trường multichoice chứa dữ liệu cần chọn
  • Value: là giá trị 2 được truyền vào.

Sau khi chọn dữ liệu, muốn xóa các item đã được chọn trong trường multichoice, có thể sử dụng lệnh removeSelection. Ví dụ:

  • Command: removeSelection
  • Target: //select[@id=’idcombo’] – trường multichoice chứa dữ liệu cần xóa
  • Value: giá trị đã chọn trước đó

9. Autocomplete Là các trường dạng combobox nhưng sẽ không list ra dữ liệu, người dùng cần phải gõ keyword để tìm kiếm và select.

Để kích mở dropdown list: sử dụng lệch clickAt (locator, coordString) - trong đó coordString là tọa độ kích vào button. Ví dụ: clickAt(id=select2-chosen-5, (50,50)).

Trên đây là một số cách thức sử dụng lệnh của IDE để tương tác với các trường control nhất định. Hy vọng các thông tin này sẽ hữu ích cho các bạn đang tìm hiểu về Selenium IDE


All rights reserved

Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí