当前位置:  开发笔记 > 编程语言 > 正文

使用actionchain()时,Selenium挂起.然后移动actionchain.click或mouse_up

如何解决《使用actionchain()时,Selenium挂起.然后移动actionchain.click或mouse_up》经验,为你挑选了0个好方法。

我正在使用selenium2library进行拖放操作的自动化测试.我在windows 8 64bit,selenium 2.48.0,ride.py上运行.用于测试的浏览器:firefox和chrome最新稳定版

我所做的是创建一个带有输入文本和链接的虚拟html页面,然后尝试将该链接拖动到输入文本中

这是html:

drag me

这是我的自动化python代码:

class CustomSeleniumLibrary(Selenium2Library):
...
    def test_drag(self):
        self.open_browser("http://localhost:8080/a.html", "firefox")
        source = self._element_find("//a[@id='source']", True, True)
        target = self._element_find("//input[@id='target']", True, True)
        drag = ActionChains(self._current_browser()).click_and_hold(source)
        moveDum = ActionChains(self._current_browser()).move_by_offset(1,1)
        move = ActionChains(self._current_browser()).move_to_element_with_offset(target,1,1)
        #I have also tried ActionChains().drag_and_drop().perform() or make a dummy move move_by_offset followed by move_to_element_with_offset but no use
        drag.perform()
        moveDum.perform()
       move.perform()

我发现当移动完成或mouse_down()完成时,下一个动作没有执行,我可以看到链接被保持,但是直到我在浏览器上手动移动鼠标才执行移动操作.ride.py UI当时的电影和请求: 16:24:47.042 : DEBUG : POST http://127.0.0.1:58095/hub/session/fa7590b6-396f-4cb5-a08a-e35138a9216e/moveto {"sessionId": "fa7590b6-396f-4cb5-a08a-e35138a9216e", "element": "{6586b4ae-3c51-4e18-bb40-e006af369768}", "xoffset": 1, "yoffset": 1}

永远挂起,直到我在浏览器上手动移动鼠标

你们中的任何人都有同样的问题,或者我做错了什么?你对使用机器人框架selenium2library使用拖放功能有什么建议吗?

最好的问候,丹

推荐阅读
夏晶阳--艺术
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有