【发布时间】:2015-05-02 22:42:52
【问题描述】:
我已经在互联网上搜索了很长时间,现在正在寻找解决方案......
我正在尝试使用 Selenium WebDriver 在 Chrome 中模拟拖放操作。这在 Firefox 中有效,但在 Chrome 中无效,因为我相信你们都知道 Selenium 中的一个错误。到目前为止,我设法找到的解决方案使用了 javascript/jQuery,并且需要元素具有 ID。 但是,我要拖放的元素没有 ID...该元素没有唯一标识符。
在无需让开发人员在 HTML 中分配 ID 的情况下,有哪些可能的解决方法?因为这不太可能很快发生。
提前致谢。
编辑
目前正在尝试这个:
js.ExecuteScript(jsReader + "$(document.querySelector('.example img')).simulateDragDrop({dropTarget: '#target'});");
【问题讨论】:
-
没有 javascript/jQuery 解决方案应该要求元素具有 ID。它们可能会使事情变得更容易,但是您仍然应该能够在没有它们的情况下实施任何这些解决方案。困难的部分是找到一个唯一的标识符。在 chrome 控制台中玩耍,直到您能够只返回您需要的元素
-
您好史蒂夫,感谢您的回复。我可以使用 CSS 选择器定位元素。我正在使用gist.github.com/rcorreia/2362544
-
为什么开发者需要添加ID?不能吗?
标签: c# google-chrome selenium-webdriver drag-and-drop