Đôi khi một đối tượng web sẽ mất nhiều thời gian để hiển thị trên page sau khi bạn điều hướng/ chuyển page hoặc thao tác (click/ select/..) lên bất kì một phần tử nào đó (button/ link/..). Những lỗi như (Timeout/ Element not found/..) xuất hiện dẫn đến fail testcase trong khi thực tế element vẫn được present/ visible.

Selenium IDE hỗ trợ 1 số command về wait giúp chúng ta xử lí những vấn đề này, điểm hay của các command này là nó sẽ chạy command tiếp theo nếu đã thỏa mãn được yêu cầu đặt ra ko cần phải chờ cho hết timeout. Sau các command waitFor ngay sau nó nên có thêm các command verifyFor để verify hết đúng yêu cầu của testscript.

Demo được thực hiện trên trang: http://daominhdam.890m.com/

  • waitForTitle: wait cho đến khi title mong muốn được xuất hiện trên web page. Có thế set timeout trong cột value, nếu để trống nó sẽ lấy giá trị timeout default của Selenium IDE (set trong Options)

  • waitForText: wait cho text được hiển thị trên page

  • waitForVisible: wait cho element được visible trên page

  • waitForEditable: wait cho một textbox có thể edit (nhập vào) được (chỉ hỗ trợ cho các field được input)

  • waitForChecked: wait cho một checkbox được chuyển trạng thái từ uncheck qua checked (hỗ trợ cho checkbox/ radiobutton)

  • waitForAlert: wait cho một alert được hiển thị trên page và sẽ được tự động accept alert đó

  • waitForAlertPresent: wait cho một alert được hiển thị nhưng không được tự động accept (sử dụng thêm command verifyAlert để accept sau khi wait thành công)

  • waitForAttribute: wait cho một attribute được hiển thị trên page
    • <input id=”mail” type=”email” name=”user_email”/> => id, type, name là attribute của thẻ input

  • waitForPageToLoad: wait cho page được nạp vào thành công (loaded successfully), sau khoảng thời gian được set sẽ thực thi command tiếp theo (thường được sử dụng khi chuyển page, có thể dùng waitForTitle thay cho sử dụng command này)
    • Click vào button ‘Button is enabled’ sẽ tải lại trang, wait để page nạp vào thành công trong 10s

  • waitForPopup: wait cho một window mới được hiển thị
    • Click vào link ‘Click Here’ sẽ mở một cửa sổ mới (Google), wait cho cửa sổ được hiển thị

  • refreshAndWait: sử dụng khi muốn refresh lại page và wait cho đến khi page được nạp lại thành công (loaded successfully)