使用Selenium Webdriver for Ruby进行HTML5拖放

Rya*_*ega 7 ruby html5 selenium drag-and-drop webdriver

是否有任何解决方法可以使用Selenium Webdriver和Ruby一起使用HTML5拖放工具?我正在使用Selenium-Webdriver 2.20.0和Ruby 1.9.2

这是一个重现问题的简单测试:

require "selenium-webdriver"
require "test/unit"

class Html5DragAndDropTest < Test::Unit::TestCase

  def setup
    @driver = Selenium::WebDriver.for :firefox
    @driver.manage.timeouts.implicit_wait = 30
  end

  def teardown
    @driver.quit
  end

  def test_html5_drag_and_drop
    @driver.get("http://html5demos.com/drag")
    target = @driver.find_element(:id, "one")
    source = @driver.find_element(:id, "bin")
    @driver.action.drag_and_drop(target, source).perform
    assert target.displayed? == false
  end
end
Run Code Online (Sandbox Code Playgroud)

小智 2

这仍然是 Selenium 中的一个错误,因此上面提到的 JavaScript 解决方法是一个很好的解决方法。

我构建了一个示例 HTML 拖放页面,并编写了一个测试来使用Ryan 提供的 Drag_and_drop_helper.js gist来练习它。你可以在这里看到我的完整文章。

干杯,
戴夫 H
@TourDeDave