我正在使用Selenium和Java自动执行拖放操作。以下是用于在无头模式下使用chrome驱动程序执行拖放的代码。
Point classname = targetElement.getLocation();
int xcordi = classname.getX();
int ycordi = classname.getY();
Actions action = new Actions(driver);
action.clickAndHold(sourceElement).moveByOffset(xcordi, ycordi).release(targetElement).build().perform();
在无头chrome驱动程序中执行此操作不会发生任何事情。但是,在非无头chrome驱动程序中,这可以正常工作,并且可以执行拖放操作。
注意-尝试同时使用dragAndDropBy(源,目标)和dragAndDropBy(源,xOffset,yOffset)。这两种方法在非无头镀铬中也不起作用
答案 0 :(得分:0)
我认为我们无法帮助您调试Chrome浏览器与无头版本之间的差异。我认为这不是一个已知问题,也没有已知的解决方法。
建议:
也许在创建最小测试时,您会弄清楚它为什么起作用的原因,但不适用于您的特定情况。该应用程序的行为不同于浏览器:)