我有一个带有“+”图标的表单,可以增加另一个标签内的数值。
所以对于 Capybara,我可以像这样点击它:
all('.qty-input')[0].find('.more').click
但我希望能够通过变量设置点击量。我尝试这样做,但它引发了一个错误,因为 click 不接受任何参数。
all('.qty-input')[0].find('.more').click(number_of_clicks)
我想我可以创建一个简单的方法,就像这样,但是有必要吗? Capybara 没有内置一些可以点击几次的东西吗?
def multiple_clicks element, number_of_clicks
number_of_clicks.times{|n| element.click}
end
编辑:
我放在那里的原始代码是
def multiple_clicks element, number_of_clicks
number_of_clicks.map{|n| element.click}
end
这没有意义,所以我使用
times
而不是 map
方法来编辑它。
不,水豚没有内置类似的东西
不完全是你想要的,但我做了这样的事情:
# Get elements (adjust to your own circumstances)
plus_buttons = all('.btn')
# Nice way to click a number of times
3.times { plus_buttons[0].click }
# Or set number of times as a variable
number = 7
number.times { plus_buttons[0].click }