1

我有一個擁有150個測試用例的Selenium套件。該測試必須在Chrome瀏覽器中以隱身模式運行。Selenium WebDriver - Chrome - C# - 無法在隱身模式下以最大化的瀏覽器啓動硒瀏覽器

我可以在隱身模式下啓動瀏覽器。但問題是瀏覽器沒有得到最大化(例如對於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)處不可點擊。其他元素將收到點擊:

因此,我想運行在最大化模式下。在最大化模式下,我沒有收到這個錯誤。請幫忙 。

感謝

回答

0

試試這個代碼:

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

它爲我

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

我想這但導致異常。謝謝你的幫助。 –

+0

查看編輯。如果仍然異常,請發佈例外,以便我們找到問題 –

0

另一種方法是設置初始大小:

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

你也可以設置一些極端值。然後,窗口應該有屏幕的大小,因爲操作系統的限制它(至少在Windows上):

options.AddArgument("--window-size=32000,32000"); 
相關問題