右键单击并使用 Selenium webdriver 拖放
Posted
技术标签:
【中文标题】右键单击并使用 Selenium webdriver 拖放【英文标题】:Right click and Drag and drop using Selenium webdriver 【发布时间】:2012-01-14 15:59:35 【问题描述】:我正在使用 Selenium webdriver 开展一个 QA 自动化项目。
我需要在 Telerik rad 网格上执行拖放操作以重新排序列,然后右键单击网格以保存所做的更改。
有什么方法可以使用 selenium webdriver 实现这些吗?
谢谢。
【问题讨论】:
在 2013-14 年,我们这样做 - ***.com/questions/14210051/… 你使用什么编程语言? 【参考方案1】:对于拖放,您可以尝试:
using OpenQA.Selenium.Interactions;
using OpenQA.Selenium.Firefox;
using OpenQA.Selenium;
RemoteWebDriver driver = new FirefoxDriver();
Actions action = new Actions(driver);
IWebElement sourceElement = FindElement(By.Id("id1"));
IWebElement targetElement = FindElement(By.Id("id2"));
IWebElement gridElement = FindElement(By.Id("grid"));
action.DragAndDrop(sourceElement, targetElement).Perform(); //drag&drop
Thread.Sleep(500); //if necessary
action.ContextClick(gridElement).Perform(); //right click
或者您可以为此使用 javascript。
【讨论】:
谢谢。我仍然有右键单击的问题。右键菜单一显示就消失。我已经这样实现了: var context= action.ContextClick(gridElement).Build();上下文。执行();我还使用了 sleep 以使菜单不会消失,但这不起作用。【参考方案2】:当它一出现就消失时,您可以单击相同的操作...就像
action.ContextClick(element).Click(x axis, y axis).build.perform();
它会起作用的..
【讨论】:
以上是关于右键单击并使用 Selenium webdriver 拖放的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Instagram 上的 chrome 移动视图中获取 .click(),而不是右键单击-[Instagram 上的 Selenium]
如何在python中使用Selenium WebDriver获取整个网页源[重复]
如何单击 Selenium WebDriver 中的隐藏元素?
Selenium WebDriver JAVA:如何单击 x,y 坐标?