我正在使用 selenium webdriver客户端2.39和火狐26.
鼠标单击并按住事件无法正常工作。我的代码如下
WebDriver driver=new FirefoxDriver();
driver.get("http://startingwithseleniumwebdriver.blogspot.com/2013/12/frmset1.html");
WebElement multiSelectDropDown=driver.findElement(By.name("multiselectdropdown"));
List<WebElement> dropdownlists = multiSelectDropDown.findElements(By.tagName("option"));
Actions builder=new Actions(driver);
builder.clickAndHold(dropdownlists.get(0)).
clickAndHold(dropdownlists.get(6)).click().build();
这段代码没有给予任何错误,但只选择一个元素。我可以绕过这个问题使用其他方式,但我想知道为什么它不工作。
3条答案
按热度按时间kcrjzv8t1#
我面临同样的问题,但它选择的元素从开始到最后,并给予一些错误,如
无法执行本机交互:无法获取元素的节点-无法交互
我用这种方法得到了解决方案你可以这样做你的问题
fnvucqvd2#
如果您想从列表中选择多个选项,请尝试以下操作(它将选择前3个元素):
pwuypxnk3#
ButtonUp(或
release()
)应该是ButtonDown(或clickAndHold()
)按钮操作之后的下一个按钮操作(有关ButtonDown文档,请参阅Appium notes)。您的代码执行两个连续的clickAndHolds()
,然后执行click()
,但不执行release()
。它应该类似于:虽然链接的文档不是针对Selenium的,但Appium是在Selenium之上构建的。