加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby – 带有硒的水豚,send_key不起作用

发布时间:2020-12-16 20:58:17 所属栏目:百科 来源:网络整理
导读:我正在使用Cucumber来测试没有提交按钮的评论表单.我发现selenium有一个名为send_key的方法,理论上应该允许我这样做: find_field('my-field').native.send_key(:enter) 但是当我进行测试时,我得到: undefined method `send_key' for #Nokogiri::XML::Eleme
我正在使用Cucumber来测试没有提交按钮的评论表单.我发现selenium有一个名为send_key的方法,理论上应该允许我这样做:
find_field('my-field').native.send_key(:enter)

但是当我进行测试时,我得到:

undefined method `send_key' for #<Nokogiri::XML::Element:0x007f874b361828> (NoMethodError)

我不知道自己做错了什么.有任何想法吗?

解决方法

您必须使用Selenium驱动程序而不是Capybara中的:rack_test驱动程序来访问send_keys方法:

>如果您使用的是bundler,请安装gem selenium-webdriver并将其添加到您的gem文件中.
>使用以下方式标记您的测试:js =>为了使它与Selenium驱动程序一起运行,则为true.

您收到错误,因为默认情况下,Capybara使用:rack_test驱动程序.在元素上调用native可以访问特定于驱动程序的方法. :rack_test驱动程序元素本身实现为Nokogiri :: XML :: Element,因此send_keys方法不存在,并且您收到此错误.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读