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

Selenium WebDriver - Chrome - C# - Unable to launch selenium browser in Incognito Mode as a maximised browser

我有一个包含 150 个测试用例的 Selenium 套件。测试必须在 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) 处不可点击。其他元素将收到点击:

因此,我想 运行 处于最大化模式。在最大化模式下,我没有收到此错误。请帮忙.

谢谢

可以这样做:

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 打开之后,但它会为您最大化 window。

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

  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();

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

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

您还可以设置一些极值。 window 应该有屏幕的大小,因为 OS 限制了它(至少在 Windows 上):

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

试试这个代码:

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

对我有用