在Capybara中测试按钮单击的更好,更快的方法是什么?

时间:2019-04-11 09:37:51

标签: rspec capybara

什么是在水豚中测试按钮单击的更快,更合适的方法?我在文档中一直在寻找它,但是这两种方法的速度和性能都没有。

find('button[name="some_button"]').click

click_button 'Some button'

我知道这些用户使用的是不同的匹配器,但这不是我的问题。谢谢!

1 个答案:

答案 0 :(得分:1)

click_button实现为

find(:button, locator).click

变为

find(:xpath, <complicated XPath including the locator>).click

因此,从技术上讲,您的第一个示例应该稍快一些(大多数浏览器中CSS评估比XPath更快),但是与其余开销相比,速度差异将可以忽略不计。话虽这么说,“正确”的方法是使您的测试更具可读性,这通常意味着尽可能使用click_button