[英]Simulating a keypress using capybara-webkit in rails
我正在使用capybara-webkit测试使用jquery-tokeninput(https://github.com/loopj/jquery-tokeninput)填充字段的表单。 问题是使用fill_in不能与此一起使用。 反正有自动测试吗? 提前致谢。
我也一直在使用令牌输入,它的作用是隐藏您的实际输入字段,并将其替换为另一个具有ID匹配token-input-{your_field_id}
元素。 因此,假设您有一个ID search
字段,实际上您应该使用ID token-input-search
定位该元素。
因此,示例代码片段为:
fill_in "token-input-search", with: "hello"
然后您可以测试您的行为。
从capybara-webkit代码的发行说明中,它们具有1.0.0发行版中的以下条目:
* Set text fields using native key events.
因此,看起来在文本字段上设置文本将导致触发本机事件。
像您一样,我也需要此方法来工作,并发现这可以解决问题:
find('input#query').set 'some text'
我的JavaScript拾取了它正在监听的keyup
事件,并以应有的方式触发了它。
https://github.com/markgandolfo/send-keys
然后发送一个“ input#search”
然后我将abc发送到“ input#search”
然后将“ abc”发送到“ input#search”
然后将arrow_left发送到“ input#search”
然后我将[shift,a]发送到“ input#search”
然后将Enter发送到“ input#search”
然后向“ #message”发送问候,然后在“ characters_left”中看到“ 135”,并向“ #message”发送退格,并且在“ characters_left”中看到“ 136”
然后将“ bo”发送到“ input#username”,并且应该在“ username_suggestions”中看到“ bob”,然后将enter发送到“ input#username”
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.