Capybara drag_to函数抛出NotImplementedError

时间:2013-08-12 03:12:42

标签: ruby-on-rails jquery-ui rspec capybara

我有一个Rails应用程序,我正在尝试测试拖放功能,我正在使用capybara和rspec以及jquery ui进行拖动,它在浏览器中工作正常,但我无法获得工作测试。我得到的错误如下:

source_element.drag_to(dest_element)
NotImplementedError: NotImplementedError

我有一个像这样的简单测试文件:

describe "display index page" do
  it "try drag and drop" do
    dest_element = find('#list_'+list.id.to_s+' #sortable')
    source_element = find('#list_'+other_list.id.to_s)
    source_element.drag_to dest_element
  end
end

我的Html看起来像这样(javascript配置正确,一切都在浏览器中运行):

<ul id="sortable" class="ui-sortable">
  <li id="list_20" class="sort">
  <li id="list_121" class="sort">
    <span>Content</span>
    <ul id="sortable" class="ui-sortable"> </ul>
  </li>
</ul>

有谁可以指出我可能出错的地方?我已经尝试了几个小时,但却无法弄清楚解决方案是什么。

提前致谢

1 个答案:

答案 0 :(得分:4)

不是100%肯定,但drag_to可能是capybara-webkit特定的。如果您使用的是capybara-webkit,请确保将:js => true添加到您的描述