selenium:如何模拟鼠标拖放(drag and drop)

鼠标拖放是手工常用操作,可以用于移动元素,如,用于拖放验证码滑块等,以大麦网登录界面验证码滑块为例,介绍如下:


image.png
driver.SwitchTo().Frame(driver.FindElement(By.XPath("//iframe[@id='baxia-dialog-content']"))); //滑块在iframe框架内,需先切换到iframe
IWebElement slider = driver.FindElement(By.XPath("//span[contains(@class,'slide')]")); //定位滑块
int slide_w = slider.Size.Width; //获取滑块宽度
IWebElement slider_con = driver.FindElement(By.XPath("//span[text()='请按住滑块,拖动到最右边']")); //定位滑动条
int slider_con_w = slider_con.Size.Width; //获取滑动条宽度
int offset = slider_con_w - slide_w; //计算滑动宽度
/********以下为拖动实现**********/
Actions action = new Actions(driver);
action.ClickAndHold(slider).Perform();
action.DragAndDropToOffset(slider, offset, 0).Perform();

(有用或者喜欢的话,可以点个赞,或者关注我,带你了解更多测试知识和行业信息)

你可能感兴趣的:(selenium:如何模拟鼠标拖放(drag and drop))