是否可以通过Selenium Webdriver与Ruby一起使用HTML5拖放来解决问题?我在Ruby 1.9.2中使用Selenium- Webdriver 2.20.0
这是重现此问题的简单测试:
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
这仍然是Selenium中的一个错误,因此上面提到的JavaScript解决方法是一个不错的选择。
我构建了一个示例HTML拖放页面,并编写了一个测试,使用Ryan提供的drag_and_drop_helper.js来执行。您可以在此处查看我的完整文章。
干杯, 戴夫H @TourDeDave