【问题标题】:Simulate pressing Tab key in Rspec Capybara?模拟在 Rspec Capybara 中按下 Tab 键?
【发布时间】:2021-12-26 05:23:30
【问题描述】:

我正在尝试编写用于在对话框模式中管理焦点的测试。如何在Rspec Capybara中模拟按下键盘Tab键?

【问题讨论】:

  • 这取决于您使用的驱动程序。例如,在 Rack::Test(默认驱动程序)上,无法模拟按键,因为它实际上不是真正的浏览器。

标签: ruby-on-rails rspec capybara keyboard-events


【解决方案1】:

使用send_keys方法,例如:

body = find('body')
body.send_keys(:tab)
body.send_keys([:shift, :tab])

all the capybara docs pagessend_keys 中,Capybara::Node::Element class 写得最好。

【讨论】:

  • 注意:对于最近的 Capybara,您也可以在会话中直接调用 send_keys,它应该被发送到当前活动元素 page.send_keys(:tab) 而不必先找到主体
猜你喜欢
  • 1970-01-01
  • 2011-04-26
  • 2018-08-14
  • 2012-03-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-10-31
  • 2010-10-16
相关资源
最近更新 更多