繁体   English   中英

如何在画布和DynamicJS中使用硒进行拖放

[英]How to drag and drop using selenium in canvas and kineticjs

我正在使用Selenium Web驱动程序来测试我的网站,问题是我有一个canvas元素,在其中必须拖动位于(0,0)到(10,0)的元素。 最主要的是在画布中,没有元素将具有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();

因此,这里的主要问题是我们在画布中没有元素的ID和ID或类名。 因此,任何人都可以帮助我使用(x,y)坐标拖放特定元素。

我尝试了以下拖放到画布上。 实际上,它可以放大画布,对我有用

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();
        }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM