使用 Selenium Webdriver for Ruby 进行 HTML5 拖放

HTML5 Drag and Drop using Selenium Webdriver for Ruby(使用 Selenium Webdriver for Ruby 进行 HTML5 拖放)
本文介绍了使用 Selenium Webdriver for Ruby 进行 HTML5 拖放的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

是否有任何变通方法可以让 HTML5 拖放与 Selenium Webdriver 和 Ruby 一起使用?我正在使用 Selenium-Webdriver 2.20.0 和 Ruby 1.9.2

Are there any work arounds to getting HTML5 Drag and Drop working with Selenium Webdriver with Ruby? I am using Selenium-Webdriver 2.20.0 with Ruby 1.9.2

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

Here is a simple test to reproduce the issue:

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 解决方法是一个很好的解决方案.

This is still a bug in Selenium, so the JavaScript workaround noted above is a good one.

我构建了 一个示例 HTML 拖放页面,并编写了一个测试来使用 Ryan 提供的 drag_and_drop_helper.js 要点.您可以在这里查看我的完整文章.

I built an example HTML drag and drop page and wrote a test to exercise it using the drag_and_drop_helper.js gist Ryan provided. You can see my full write-up here.

干杯,
戴夫 H
@TourDeDave

这篇关于使用 Selenium Webdriver for Ruby 进行 HTML5 拖放的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

相关文档推荐

Detecting HTML5 Drag And Drop support in javascript(在 javascript 中检测 HTML5 拖放支持)
HTML5 drop event doesn#39;t work unless dragover is handled(除非处理了拖动,否则 HTML5 放置事件不起作用)
How to use jQuery#39;s drop event to upload files dragged from the desktop?(如何使用 jQuery 的 drop 事件上传从桌面拖动的文件?)
HTML5: dragover(), drop(): how get current x,y coordinates?(HTML5: dragover(), drop(): 如何获取当前 x,y 坐标?)
How to make lt;divgt; resizeable?(如何制作lt;divgt;可调整大小?)
Internet Explorer 9 Drag and Drop (DnD)(Internet Explorer 9 拖放 (DnD))