我正在使用capybara-webkit测试一个表单,其中的字段是使用jquery-tokeninput (https://github.com/loopj/jquery-tokeninput)填充的。问题是,使用fill_in对此不起作用。有没有自动测试的方法?提前谢谢。
发布于 2012-03-02 02:51:51
https://github.com/markgandolfo/send-keys
将'a‘字符发送到输入谁的id是搜索(# search )
我给"input#search“发了一个
将'a','b‘和'c’字符发送到输入谁的id是搜索(# search )
我把abc发送到"input#search“
如果你觉得更舒服,你可以把它们放在引号里。
我把'abc‘发送给"input#search“
您还可以将修饰符/特殊键击发送到元素
然后我把arrow_left发送给"input#search“
您甚至可以发送修饰符和字符的组合
这将导致字符'A‘被发送到输入
然后我发送shift,a到"input#search“
或者您只想按enter键
然后我将enter发送给"input#search“
在文本区域(比如twitter应用程序)测试计数器会有多酷?
我向"#message“发送问候,在"characters_left”中应该看到"135“,在"#message”中发送退格键,在"characters_left“中应该看到"136”
我们用它来测试完成建议。
第一个建议的名称将突出显示,并响应enter键
我发送"bo“到"input#username”,我应该在"username_suggestions“中看到"bob”,我发送enter到"input#username“
发布于 2012-11-21 16:03:42
我也一直在使用令牌输入,它的作用是隐藏您的实际输入字段,并将其替换为具有id匹配token-input-{your_field_id}的另一个元素。假设您有一个id为search的字段,那么您实际上应该以id为token-input-search的元素为目标。
因此,示例代码片段如下:
fill_in "token-input-search", with: "hello"你可以在之后测试你的行为。
发布于 2015-03-06 06:20:32
在capybara-webkit代码中的发行说明中,他们有来自1.0.0发行版的条目:
* Set text fields using native key events.因此,在文本字段上设置文本看起来会导致触发本机事件。
像你一样,我也需要这样做,并发现这确实起到了作用:
find('input#query').set 'some text'我的javascript获得了它正在侦听的keyup事件,并以它应该执行的方式触发了它。
https://stackoverflow.com/questions/9520230
复制相似问题