首页 > 解决方案 > 如何点击可见的:水豚中的假按钮?

问题描述

我可以让元素通过

page.find_button("Save", visible: :hidden, wait: 5)

但我无法触发点击

page.find_button("Save", visible: :hidden, wait: 5).click

标签: testingrspecautomated-testscapybara

解决方案


因为 Capybara 主要被设计为一个测试工具,它试图模拟用户实际可以做什么。由于用户不能点击不可见的按钮,Capybara 也不能直接点击。如果您正在测试,您需要复制用户会做的事情。

另一方面,如果您只是自动化网站以抓取一些数据并且真的想触发点击事件,您可以尝试类似

page.find_button("Save", visible: :hidden, wait: 5).execute_script('this.click()')

注意:如果您在实际测试站点/应用程序的代码中这样做,那么您的测试基本上毫无价值。


推荐阅读