如何使用Selenium WebDriver模拟拖放页面元素到输入框?

在常用的浏览器中(Chrome, Firefox和IE),拖动页面元素到输入框(<input type="text"/>);
  • 如果被拖动的元素是图片(<img href="image's url"/>),则图片的href属性值会自动填充到输入框中;
  • 如果被拖动的元素是文本(<span/>,<p/>...),则文本的内容会被自动填充到输入框中。

但是,通过调用WebDriver的相关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();
    

以上方式均不能实现自动填充,如何使用WebDriver模拟拖放页面元素到输入框呢?

阅读 2.4k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题