如何在 selenium 中拖放弹出窗口 window?
How to drag and drop a popup window in selenium?
我有一个弹出窗口 window,它会在双击某个对象时打开,我需要将弹出窗口 window 拖放到另一个位置,以便将隐藏在弹出窗口后面的内容显示出来 window 在视图中。我尝试使用以下代码:
WebElement notesWindow= getNotesWindow();
JavascriptExecutor executor = (JavascriptExecutor) driver;
executor.executeScript("arguments[0].setAttribute('style', 'left: 227px; top: 334px; width: 561px; height: 392px; z-index: 801637');", notesWindow);
这移动了 window 的外边界,但未能按原样移动整个 window。
我也试过了
Actions action = new Actions(driver);
action.dragAndDrop(notesWindow, getOverrideButton());
此处,getOverrideButton()
returns 元素为目标元素。
这根本不起作用。有人可以建议可以做些什么来让它发挥作用吗?
恕我直言,您不能拖放 window 本身 - 只能拖放 HTML 元素。您应该告诉 Selenium 使用 WebDriver 上的 switchTo()
方法切换 window 以切换到另一个 window 或 iframe。
我有一个弹出窗口 window,它会在双击某个对象时打开,我需要将弹出窗口 window 拖放到另一个位置,以便将隐藏在弹出窗口后面的内容显示出来 window 在视图中。我尝试使用以下代码:
WebElement notesWindow= getNotesWindow();
JavascriptExecutor executor = (JavascriptExecutor) driver;
executor.executeScript("arguments[0].setAttribute('style', 'left: 227px; top: 334px; width: 561px; height: 392px; z-index: 801637');", notesWindow);
这移动了 window 的外边界,但未能按原样移动整个 window。
我也试过了
Actions action = new Actions(driver);
action.dragAndDrop(notesWindow, getOverrideButton());
此处,getOverrideButton()
returns 元素为目标元素。
这根本不起作用。有人可以建议可以做些什么来让它发挥作用吗?
恕我直言,您不能拖放 window 本身 - 只能拖放 HTML 元素。您应该告诉 Selenium 使用 WebDriver 上的 switchTo()
方法切换 window 以切换到另一个 window 或 iframe。