【发布时间】:2012-08-07 12:04:31
【问题描述】:
我必须将图像拖放到 CQ5 组件中。图像和组件在不同的框架中。
这是在目标框架处于活动状态时无法作为 webelement destination 工作的代码。
new Actions(driver).dragAndDrop(target, destination).perform();
我也尝试在动作之间切换帧:
Actions builder = new Actions(driver);
Actions action = builder.clickAndHold(target);
driver.switchTo().frame("newFrame"); //switching frames
builder.moveToElement(destination);
builder.release(destination);
builder.build();
action.perform();
这也不起作用。然后,我尝试通过偏移量移动图像
new Actions(driver).dragAndDropBy(target, x, y).perform(); // x and y
这移动了图像但组件没有捕获它,可能是因为动作太快了。有什么办法可以做到这样的拖放吗?
提前致谢。
【问题讨论】:
-
不打算添加作为答案,因为它不能解决你的问题,但我在尝试让 Selenium 在 CQ 中工作时遇到了同样的麻烦。我发现在 CQ 中有时您可以双击而不是尝试使用拖放。例如,在添加组件时,双击 parsys 将带您进入可以添加的组件列表(在同一框架内)。在此处选择一个组件将直接带您进入该新组件的编辑对话框。内容查找器也可以这样做吗?
标签: selenium selenium-webdriver automated-tests aem