c # селен Firefox открыть новую вкладку не работает - PullRequest
0 голосов
/ 22 мая 2018

я пробую эти коды и открываю mozila firefox на сайте get google.com, но никогда не открываю новую вкладку, почему?

using OpenQA.Selenium;
using OpenQA.Selenium.Firefox;

namespace ConsoleApp5
{
    class Program
    {
        static void Main(string[] args)
        {
            IWebDriver driver = new FirefoxDriver();
            driver.Navigate().GoToUrl("http://google.com");
            IWebElement element = driver.FindElement(By.TagName("Body"));
            System.Threading.Thread.Sleep(6000);
            element.SendKeys(OpenQA.Selenium.Keys.Control + "t");
        }
    }
}

и пробую это, но она никогда не открывала новую вкладку!

namespace ConsoleApp5
{
    class Program
    {
        static void Main(string[] args)
        {
            IWebDriver driver = new FirefoxDriver();
            driver.Navigate().GoToUrl("http://google.com");
            var action = new Actions(driver);
            System.Threading.Thread.Sleep(6000);
            action.KeyDown(Keys.Control).SendKeys("t").Perform();
        }
    }
}

Ответы [ 2 ]

0 голосов
/ 22 мая 2018

Вы можете использовать javascript executor для этого: -

IJavaScriptExecutor js = (IJavaScriptExecutor)driver;
js.ExecuteScript("window.open('https://www.google.com','_blank');");



namespace ConsoleApp5
{
    class Program
    {
        static void Main(string[] args)
        {


 IWebDriver driver = new FirefoxDriver();
            driver.Navigate().GoToUrl("http://google.com");
            IJavaScriptExecutor js = (IJavaScriptExecutor)driver;
          js.ExecuteScript("window.open();");
        }
    }
}

Ссылка по этой ссылке: - Как обрабатывать новое окно в Selenium WebDriver с использованием Java?

0 голосов
/ 22 мая 2018

Найдите body и затем send ключи.

static void Main(string[] args) {
  IWebDriver driver = new FirefoxDriver();
  driver.FindElement(By.CssSelector("body")).SendKeys(Keys.Control + "t");
  driver.SwitchTo().Window(driver.WindowHandles.Last());
  driver.Navigate().GoToUrl("https://www.google.com")
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...