我在默认配置下使用Capybara 1.0.0。水豚click_link有时不起作用
click_link“一些现有文本”# - 有时 - 不起作用。奇怪的。
find_link“一些现有的文字”#总是工作
这可能是一个计时问题;或者可能不是因为find_link非常好。
我已经通过save_and_open_page检查了生成的输出文件,也没关系。另外,我增加了等待时间等,但是,都没有帮助。
之前,我完全得到了水豚的来源。你认为那是错误的?
问候
我在默认配置下使用Capybara 1.0.0。水豚click_link有时不起作用
click_link“一些现有文本”# - 有时 - 不起作用。奇怪的。
find_link“一些现有的文字”#总是工作
这可能是一个计时问题;或者可能不是因为find_link非常好。
我已经通过save_and_open_page检查了生成的输出文件,也没关系。另外,我增加了等待时间等,但是,都没有帮助。
之前,我完全得到了水豚的来源。你认为那是错误的?
问候
每当我得到间歇性问题,我测试的第一件事情我查一个是他们为In。
运行取决于你如何有Rspec的设置序列,它可能是随机化每次运行套件时运行规格的顺序。这意味着有时候一切都过去了,其他时间不是。
Rspec将输出一个种子值,您可以使用该种子值以相同的顺序重新运行测试以进行调试。
尝试使用此语法click_link('', href: some_path)
。
该链接可能与另一个元素(如弹出窗口)过度匹配,或者在加载页面一段时间后由Ajax激活。这很大程度上取决于您使用的是哪种页面。
作为一般的提示,我会建议直接使用取景器,如:
# Note :visible => true, it will throw an error if element is overlapped
find(:xpath, "//a[.='some existing text']", visible: true).click
# Another approach
wait_until(15) { first(:xpath, "//a..", visible: true) }.click
prolly问题是出在你定位与XPath或CSS选择元素的方式吗? –