Selenium WebDriver - Chrome - C# - 无法以隐身模式启动selenium浏览器作为最大化浏览器

时间:2016-07-28 17:44:54

标签: c# selenium selenium-webdriver webdriver selenium-chromedriver

我有一个Selenium套件,有150个测试用例。测试必须在Chrome浏览器中以隐身模式运行。

我能够以隐身模式启动浏览器。但问题是浏览器没有达到最大化(例如,对于10个测试用例以及浏览器以最大化模式启动的140个测试用例),尽管有一个代码可以最大化浏览器。

因此,部分测试失败(全部10测试)。

以下是我的代码

                desiredCapabilities = DesiredCapabilities.Chrome();
                var options = new ChromeOptions();
                options.AddArgument(@"--incognito");
                options.AddArgument("--start-maximized");
                desiredCapabilities.SetCapability(ChromeOptions.Capability, options);
                webDriver = new MyWebDriver(new Uri(gridHubURL), options.ToCapabilities(),TimeSpan.FromSeconds(ApplicationConfiguration.RemoteDriverTimeOutValue),testContext);
                break;

有没有办法确保浏览器始终(100%)以最大化模式启动。

当浏览器未最大化时,点击操作失败。

System.InvalidOperationException:未知错误:元素在点(886,466)处无法点击。其他元素将收到点击:

出于这个原因,我想以最大化模式运行。在最大化模式下,我没有收到此错误。请帮忙。

由于

3 个答案:

答案 0 :(得分:2)

试试这段代码:

ChromeOptions options = new ChromeOptions();
options.AddArguments("--incognito");
IWebDriver driver = new ChromeDriver("C://",options);

它对我有用

答案 1 :(得分:0)

可以这样做:

desiredCapabilities = DesiredCapabilities.Chrome();
var options = new ChromeOptions();
options.AddArgument(@"--incognito");
options.AddArgument("--start-maximized");
desiredCapabilities.SetCapability(ChromeOptions.Capability, options);
webDriver = new MyWebDriver(new Uri(gridHubURL), options.ToCapabilities(),TimeSpan.FromSeconds(ApplicationConfiguration.RemoteDriverTimeOutValue),testContext);

webDriver.Manage().Window.Maximize();
 break; 

需要在webDriver打开后,但它会为您最大化窗口。

试试这个,我已经测试过,应该没问题

  var caps = DesiredCapabilities.Chrome();
            var options = new ChromeOptions();

            options.AddArgument(@"--incognito");
            options.AddArgument(@"--start-maximized");
            caps.SetCapability(ChromeOptions.Capability, options);



            var webdriver = new ChromeDriver(options);
            webdriver.Navigate().GoToUrl("http://yourURL.com");
            webdriver.Manage().Window.Maximize();

答案 2 :(得分:0)

另一种方法是设置初始大小:

options.AddArgument("--window-size=1024,768");

您还可以设置一些极端值。然后窗口应具有屏幕大小,因为操作系统限制它(至少在Windows上):

options.AddArgument("--window-size=32000,32000");