使用硒在firefox量子中发送KeyKeys

时间:2018-01-18 13:12:57

标签: selenium selenium-chromedriver sendkeys geckodriver firefox-quantum

在使用firefox上的selenium 3.5选择WebElement之后,我一直试图按下(CTRL + ALT +' f')。这是我写的代码:

WebElement ele = m_driver.findElement(By.cssSelector(".tm-project-name"));
ele.click();
Actions act = new Actions(m_driver);
act.sendKeys(Keys.CONTROL).perform();
act.sendKeys(Keys.ALT).perform();
act.sendKeys("f").perform();

为了完成这项工作,我也尝试了这种方法

act.sendKeys(Keys.chord(Keys.CONTROL, Keys.ALT, "F")).build().perform();

这两种方法都适用于Chrome浏览器,但无法在firefox量程中工作。 任何人都可以帮我解决这个问题。

2 个答案:

答案 0 :(得分:0)

您可以尝试传递控制+ Alt +" f"使用Robot class,这适用于所有浏览器。

请尝试以下代码。

Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_ALT);
robot.keyPress(KeyEvent.VK_F);
robot.keyRelease(KeyEvent.VK_CONTROL);
robot.keyRelease(KeyEvent.VK_ALT);
robot.keyRelease(KeyEvent.VK_F);

希望这对你有用。

答案 1 :(得分:0)

WebElement ele = m_driver.findElement(By.cssSelector(".tm-project-name"));
ele.send_keys(Keys.SHIFT+Keys.CONTROL+'f');

我通常用python编写,在提交之前我在IDE中检查过...... Python工作......认为这是C#版本