如何在链接或图像上选择右键单击操作并选择任何选项?
我知道如何使用SendKeys使用以下代码:
WebElement o_Mail=driver.findElement(By.xpath("/html/body/center/form/table/tbody/tr/td[3]/a"));
Actions action=new Actions(driver);
action.contextClick(o_Mail).sendKeys(Keys.ARROW_DOWN).sendKeys(Keys.ARROW_DOWN).sendKeys(Keys.RETURN).build().perform();
缺点是我们应该知道应该按下DOWN按钮多少次。
但是如何选择选项名称,如下所示?
action.contextClick(o_Mail).perform();
WebElement o_element=driver.findElement(By.xpath("//option[contains(text(),'Open Link in New Tab')]"));
o_element.click();
您可以使用Google主页并右键点击高级搜索,然后选择新标签中的打开链接?
请帮忙。
答案 0 :(得分:1)
如果你想要2个单独的窗口,你可以做的就是获取文件的url(通过获取元素的href属性)然后启动一个新的驱动程序并导航到该链接。
答案 1 :(得分:1)
我从来没有用Java编写selenium脚本,但是这样的东西可能会起作用:
WebElement o_element=driver.findElement(By.xpath("//option[contains(text(),'Open Link in New Tab')]"));
String url = o_element.getAttribute("href");
driver.executeScript("window.open(" + url + ", '_blank');");
答案 2 :(得分:0)
只是猜测:新标签中的打开链接也主要通过Ctrl +单击
完成在我的硒测试中我没有这样做,但是你可以像按下键的方式那样做...
答案 3 :(得分:0)
如果要从上下文菜单中选择项目,则必须使用像这样的按键事件移动鼠标位置。下面的代码将从上下文菜单中选择第二个选项: -
动作动作=新动作(驱动程序); action.contextClick(PRODUCTLINK).sendKeys(Keys.ARROW_DOWN).sendKeys(Keys.ARROW_DOWN).sendKeys(Keys.RETURN).build()执行();
希望这对你有用。