有办法用htmlunit-driver模拟拖放吗?
当使用行为时,它抛出一个UnsupportedException
@Override
public void mouseMove(Coordinates where, long xOffset, long yOffset) {
throw new UnsupportedOperationException("Moving to arbitrary X,Y coordinates not supported.");
}我尝试这样做的尝试:
第一次尝试
(new Actions(driver)).dragAndDropBy(sliderHandle, 50, 0)
.build()
.perform();第二次尝试
(new Actions(driver)).moveToElement(sliderHandle)
.clickAndHold()
.moveToElement(sliderHandle, 50, 0)
.release()
.build()
.perform();有办法解决这个问题吗?
发布于 2017-01-21 14:34:59
HtmlUnit是一个用于Java程序的无GUI浏览器,它可以为我们做很多事情,但不是所有的东西。而且,正如您已经注意到的,它不支持诸如拖放之类的操作。
new UnsupportedOperationException("Moving to arbitrary X,Y coordinates not supported.");与其他硒驱动程序相反,比如硒显色剂,您的示例应该工作得很好。
但是,如果您仍然需要它来进行无头web测试,那么可以使用PhantomJS。是的,它主要用于JS测试,但是有一个名为鬼司机的伟大项目(在简单的JS for PhantomJS中实现Webdriver协议),它支持Java和Selenium。
使用它的步骤非常简单:
PATH env变量中。selenium-java和selenium-support):
com.github.detro幻影驱动程序1.2.0最后产出:
x: 8, y: 8
x: 58, y: 8https://stackoverflow.com/questions/41685388
复制相似问题