我正在使用 selenium web 驱动程序来测试我的网站,问题是我有一个 Canvas 元素,我必须在其中拖动一个位于 (0,0) 到 (10,0) 的元素。最主要的是在 Canvas 中没有元素会有 id 或类名。
我上网浏览,但大多找到类似的答案
Actions builder= new Actions(driver);
WebElement canvas = driver.findElement(By.className("kineticjs-content"));
builder.build();
builder.moveToElement(canvas, 0, 0)
.clickAndHold()
.moveByOffset(0, 20)
.release();
builder.perform();
所以这里的主要问题是我们没有 Canvas 内元素的 id 或类名。那么任何人都可以帮助我使用其 (x,y) 坐标拖放特定元素。
最佳答案
我尝试过在 Canvas 上进行拖放操作。事实上,它是 Canvas 上的缩放,它对我有用
Actions slide = new Actions(driver);
WebElement text=obj.findElementByXpath(".//[@id='chartContainer']/div/canvas[2]");
slide.build();
text.click();
slide.dragAndDropBy(text, 100, 4500);
slide.perform();
slide.release();
}
关于javascript - 如何在canvas和kineticjs中使用selenium进行拖放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26729653/