在Chrome,Firefox和IE等常见的浏览器中,将元素拖到输入框中(输入类型为“文本”)时:
如果元素是图像(img href =“图像的URL”),则其href属性值将填充到输入框中;
如果元素是文本元素(span,p ...),则其文本值将填充到输入框中。
我已经调用了硒webdriver的Java API来模拟操作,但是什么也没填。
Actions builder = new Actions(driver);
//use dragAndDrop
builder.dragAndDrop(source, target).perform();
//use moveToElement,clickAndHold,release
builder.moveToElement(source, 10, 10).clickAndHold(source);
builder.moveToElement(target, 10, 10).release(source).perform();
我尝试了许多方法来模拟相同的动作并期望获得相同的结果,似乎拖放动作是模拟的,但是我看不到填充动作。
答案 0 :(得分:0)
尝试这种方式
WebElement sourceLocator = driver.findElement(By.xpath("xpath")); //get source locator
WebElement targetLocator = driver.findElement(By.xpath("xpath")); //get target locator
Actions action = new Actions(driver);
action.dragAndDrop(sourceLocator, targetLocator).build().perform(); //perform drag and drop (from(sourceLocator) -> to(targetLocator))