等待文本出现在SitePrism Capybara Framework中

问题描述 投票:2回答:2

我尝试在文本之前等待文本,然后执行以下SitePrism URL https://github.com/natritmeyer/site_prism本节>>“支持Capybara选项的方法”。

@page.wait_until_<Element>_visible :text => "Some Text!!!"

但我得到以下错误:

undefined method `zero?' for {:text=>"Some Text!!!"}:Hash (NoMethodError)

为什么我收到此错误?难道我做错了什么?

ruby selenium-webdriver phantomjs capybara site-prism
2个回答
1
投票

查看site_prism代码 - https://github.com/natritmeyer/site_prism/blob/master/lib/site_prism/element_container.rb#L134生成的方法需要超时和选项。如果要传递其他选项,似乎需要传递超时值

wait_until_<Element>_visible <timeout value in seconds>, text: "Some Text!!!" 

看起来像文档中的错误,或者删除了一些旧的默认行为或其他东西


0
投票

老问题

对于那些仍然响应这个SO答案的人来说,这已经在API的第3版中得到了补救,不再是问题。见:https://github.com/natritmeyer/site_prism/blob/master/UPGRADING.md#wait_until-methods

wait_for_方法现在不再存在,你应该通过调用element,即my_button隐式等待

如果你想等它,你可以修改Capybara.default_wait_time或传入一个等待键,即my_button(wait: 3)

© www.soinside.com 2019 - 2024. All rights reserved.