Selenium webdriver 无法使用Selenium Webdriver将元素拖放到另一个元素
我正在为以下拖放功能编写演示测试。[请参阅附带的屏幕截图] 为此,我编写了以下代码:Selenium webdriver 无法使用Selenium Webdriver将元素拖放到另一个元素,selenium-webdriver,drag-and-drop,Selenium Webdriver,Drag And Drop,我正在为以下拖放功能编写演示测试。[请参阅附带的屏幕截图] 为此,我编写了以下代码: @Test public void DragAndDropTest() { commonSteps(); WebElement drag = driver.findElement(By.xpath("html/body/div[1]/div[3]/div[2]/div[1]/div[4]/div[3]/div[1]/div[1]/div/div[1]")); W
@Test
public void DragAndDropTest() {
commonSteps();
WebElement drag = driver.findElement(By.xpath("html/body/div[1]/div[3]/div[2]/div[1]/div[4]/div[3]/div[1]/div[1]/div/div[1]"));
WebElement drop = driver.findElement(By.xpath("html/body/div[1]/div[3]/div[2]/div[1]/div[4]/div[3]/div[1]/div[2]/div/div[1]"));
Actions builder = new Actions(driver);
Action dragAndDrop = builder.clickAndHold(drag).moveToElement(drop).release(drop).build();
dragAndDrop.perform();
}
Webelement拖放用于“立即”,Webelement拖放用于“快速按下”
我的代码能够找到这些元素,但不会将“立即”帧拖放到“快速按下”帧
我还试着点击拖动,但点击也不起作用。我认为这些是JQuery的可折叠拖放面板。那么,如何使用webdriver处理可折叠拖放
为了实现这一点,我应该在代码中做哪些更改
这对我有用
这对我很有用。我们可以直接使用动作来拖放,而不是单击并按住 在爪哇
WebElement drag = driver.findElement(By.xpath("html/body/div[1]/div[3]/div[2]/div[1]/div[4]/div[3]/div[1]/div[1]/div/div[1]"));
WebElement drop = driver.findElement(By.xpath("html/body/div[1]/div[3]/div[2]/div[1]/div[4]/div[3]/div[1]/div[2]/div/div[1]"));
Actions builder = new Actions(driver);
builder.dragAndDrop(drag, drop).build().perform();
//or we can drop by x and y coordinates
builder.dragAndDropBy(drag, 20, 0).build().perform();
我们可以直接使用操作进行拖放,而不是单击并按住 在爪哇
WebElement drag = driver.findElement(By.xpath("html/body/div[1]/div[3]/div[2]/div[1]/div[4]/div[3]/div[1]/div[1]/div/div[1]"));
WebElement drop = driver.findElement(By.xpath("html/body/div[1]/div[3]/div[2]/div[1]/div[4]/div[3]/div[1]/div[2]/div/div[1]"));
Actions builder = new Actions(driver);
builder.dragAndDrop(drag, drop).build().perform();
//or we can drop by x and y coordinates
builder.dragAndDropBy(drag, 20, 0).build().perform();
请在下面试试
使用键盘操作:
Actions builder = new Actions(driver);
builder.keyDown(Keys.CONTROL).click(someElement).click(someOtherElement). keyUp(Keys.CONTROL).build().perform();
使用鼠标操作:
Actions builder = new Actions(driver);
builder.clickAndHold(someElement).moveToElement(otherElement).release( otherElement).build().perform();
请在下面试试
使用键盘操作:
Actions builder = new Actions(driver);
builder.keyDown(Keys.CONTROL).click(someElement).click(someOtherElement). keyUp(Keys.CONTROL).build().perform();
使用鼠标操作:
Actions builder = new Actions(driver);
builder.clickAndHold(someElement).moveToElement(otherElement).release( otherElement).build().perform();