一尘不染

Selenium C#打开“新建”选项卡CTRL + T不适用于CHROME

selenium

static void Main()
{
    IWebDriver driver = new ChromeDriver();
    driver.Navigate().GoToUrl("http://google.com");
    IWebElement body = driver.FindElement(By.TagName("body"));

    body.SendKeys(Keys.Control + "t");

}

这是我试图用来打开新标签页的代码,它无法正常工作,没有任何错误,驱动程序打开了Google,仅此而已…。人们在使用完全相同的代码,并且对他们有用,但是对我来说却没有,我无法弄清楚……

我尝试将Keys.Shift +“ t”发送到搜索字段,并且可以正常工作,它在该字段中写了一个大写字母T

我也尝试过

Actions act = new Actions(driver);
act.KeyDown(Keys.Control).SendKeys("t").Perform();

它仍然不起作用,但是再次,如果我将它写的Keys.Control更改为Keys.Shift,似乎没有任何涉及Keys.Control的事情!

编辑:我曾尝试使用IE驱动程序运行代码,并且该代码在那里工作,它会打开新标签页,但不会在Chrome上打开新标签页?


阅读 535

收藏
2020-06-26

共1个答案

一尘不染

感谢您的回答!我用JavaScript完成的。

((IJavaScriptExecutor)driver).ExecuteScript("window.open();");
2020-06-26