如何使用C#在Selenium WebDriver(Selenium 2)中最大化浏览器窗口?

Ref*_*lux 125 c# selenium selenium-webdriver

有没有办法使用WebDriver(Selenium 2)和C#最大化浏览器窗口?

小智 155

driver.Manage().Window.Maximize();

这适用于IE和Firefox.Chrome无效.ChromeDriver项目上提交了一个错误.

与此同时,Chrome的解决方案是实现Joey V.和Coder323所建议的.

ChromeOptions options = new ChromeOptions();
options.addArgument("--start-maximized");
driver = new ChromeDriver(options);
Run Code Online (Sandbox Code Playgroud)

  • 对于区分大小写的Java => driver.manage().window().maximize(); (6认同)

Dav*_*unt 37

将此功能添加到WebDriver有一个突出的问题,可以在此处跟踪:http://code.google.com/p/selenium/issues/detail? id = 174

解决方法是使用JavascriptExector如下:

public void resizeTest() {
    driver.Navigate().GoToUrl("http://www.example.com/");
((IJavaScriptExecutor)driver).ExecuteScript("window.resizeTo(1024, 768);");
}
Run Code Online (Sandbox Code Playgroud)

  • 两件事:1)如果您关心可见的东西,您可能希望在将窗口全屏显示之前将窗口移动到原点.2)如果屏幕尺寸是可变的,你可以使用javascript`screen`对象在运行时获取它们.考虑到这些点,javascript应该是:`window.moveTo(0,0); window.resizeTo(screen.width,screen.height);` (13认同)
  • 请注意,在Mac上的Firefox中将窗口移动到(0,0)会出现问题.它似乎没有正确考虑其标题区域.将窗口移动到(0,1)似乎实际上将其移动到(0,0),因此一个bug有助于另一个.此时,您可以正确地最大化窗口. (4认同)

小智 35

对于IE和Firefox:

driver.manage().window().maximize();
Run Code Online (Sandbox Code Playgroud)

对于Chrome:

ChromeOptions options = new ChromeOptions();
options.addArguments("--start-maximized");
driver = new ChromeDriver( options )
Run Code Online (Sandbox Code Playgroud)

  • C#是这样的..driver.Manage()Window.Maximize(); (3认同)

Pra*_*ams 31

Java的

driver.manage().window().maximize();
Run Code Online (Sandbox Code Playgroud)

蟒蛇

driver.maximize_window()
Run Code Online (Sandbox Code Playgroud)

红宝石

@driver.manage.window.maximize
Run Code Online (Sandbox Code Playgroud)

要么

max_width, max_height = driver.execute_script("return [window.screen.availWidth, window.screen.availHeight];")
@driver.manage.window.resize_to(max_width, max_height)
Run Code Online (Sandbox Code Playgroud)

要么

target_size = Selenium::WebDriver::Dimension.new(1600, 1268)
@driver.manage.window.size = target_size
Run Code Online (Sandbox Code Playgroud)


Dru*_*der 15

你可以使用这样的东西(C#):

driver.Manage().Window.Size = new Size(1024, 768);
Run Code Online (Sandbox Code Playgroud)

  • 不幸的是,这引发了ChromeDriver的异常.适用于IE和Firefox的工作正常. (2认同)

Rip*_*sim 15

使用C#(.NET)最大化浏览器:

driver.Manage().Window.Maximize();
Run Code Online (Sandbox Code Playgroud)

使用Java最大化浏览器:

driver.manage().window().maximize();
Run Code Online (Sandbox Code Playgroud)

另一种使用Java的方法:

Toolkit toolkit = Toolkit.getDefaultToolkit();
Dimension screenResolution = new Dimension((int) 
                    toolkit.getScreenSize().getWidth(), (int) 
                    toolkit.getScreenSize().getHeight());

driver.manage().window().setSize(screenResolution);
Run Code Online (Sandbox Code Playgroud)


Joe*_* V. 8

如果您使用的是Chrome驱动程序,则可以设置功能

    var capabilities = new DesiredCapabilities();

    var switches = new List<string>
                       {
                           "--start-maximized"
                       };

    capabilities.SetCapability("chrome.switches", switches);

    new ChromeDriver(chromedriver_path, capabilities);
Run Code Online (Sandbox Code Playgroud)


Kri*_*kar 6

以下Selenium Java代码段为我工作:

driver.manage().window().setPosition(new Point(0,0));
java.awt.Dimension screenSize = java.awt.Toolkit.getDefaultToolkit().getScreenSize();
Dimension dim = new Dimension((int) screenSize.getWidth(), (int) screenSize.getHeight());
driver.manage().window().setSize(dim);
Run Code Online (Sandbox Code Playgroud)


iam*_*p89 6

只需使用Window.Maximize()命令

WebDriver driver= new ChromeDriver()
driver.Manage().Window.Maximize();  
Run Code Online (Sandbox Code Playgroud)


小智 5

对于Java:

driver.manage().window().maximize();
Run Code Online (Sandbox Code Playgroud)

它适用于IE,Mozilla,Chrome

  • 它应该是:driver.manage().window().maximize(); (2认同)

小智 5

我有同样的问题,但问题可以通过使用以下代码解决。

driver.manage().window().fullscreen();
Run Code Online (Sandbox Code Playgroud)