[英]Page-object gem - how to implement wait_until_present
我正在使用與Cucumber和Watir一起工作的頁面對象gem邁出第一步。 我當前的步驟定義文件具有如下命令:
@browser.text_field(:name => 'Username').wait_until_present.set username
使用頁面對象,我正在使用以下代碼測試watir(抱歉):
class HomePage
include PageObject
text_field(:user_name, name: 'username').wait_until_present
}
end
home_page = HomePage.new
home_page.user_name = 'Mickey'
這不起作用,因為我收到“無方法錯誤”
進行一些谷歌搜索顯示我可以做到這一點。 但是它使用的是when_visible而不是wait_until_present
class HomePage
include PageObject
text_field(:user_name){
text_field_element(:name => 'username').when_visible
}
end
home_page = HomePage.new
home_page.user_name = 'Mickey'
對頁面對象使用wait_until或when_visible的最佳方法是什么? 如果可能的話,我不想在步驟文件中添加大量睡眠。
假設您使用的是最新版本的Watir,則只需執行以下操作:
class HomePage
include PageObject
text_field(:user_name, name: 'username')
end
home_page = HomePage.new
home_page.user_name = 'Mickey'
換句話說,您無需顯式等待文本字段出現后再進行設置。
Watir進行了許多改進,包括在設置元素之前自動等待元素出現。 結果,您應該很少(永遠不需要)調用wait_until_present
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.