Skip to main content

How to Maximize a Browser window using Playwright Java

 

Playwright itself does not have a direct maximize () method like some other browser automation tools, but you can achieve the effect by setting the viewport to the screen size of your display.

Below are ways to handle Maximize a browser in Playwright Java 

  • ร˜  Setting the viewport to the screen size 

o   setViewportSize(1920, 1080): This sets the browser window to a full HD resolution, effectively maximizing it.

o   setHeadless(false): Ensures the browser runs in a visible mode so you can see the window being maximized.

 Code Snapshot 

Playwright playwright = Playwright.create()  ;
 Browser browser = playwright.chromium().launch(new BrowserType.LaunchOptions().setHeadless(false));  
 // Create a new browser context
 
BrowserContext context = browser.newContext(new Browser.NewContextOptions()
         .setViewportSize(1920, 1080));   

 

  • ร˜  Passing as Argument “—start-maximized” the viewport to the screen size should null

                 Use setArg as “—start-maximized” at browser level and

                     setViewportSize(null) into browser content level

                 Code Snapshot 

                   Page page2 =Playwright.create().chromium().launch(new                                 BrowserType.LaunchOptions().setHeadless(false)

                .setArgs(List.of("--start-maximized")))

                .newContext(new Browser.NewContextOptions().setViewportSize(null))

                .newPage();


Below Example code 

package com.example;
import java.util.List;

import com.microsoft.playwright.*;

public class BrowserMaximizeTest {
public static void main(String[] args) {
Playwright playwright = Playwright.create() ;
Browser browser = playwright.chromium().launch(new BrowserType.LaunchOptions().setHeadless(false));
//********************************************Set View Port Size **************************
// Create a new browser context
BrowserContext context = browser.newContext(new Browser.NewContextOptions()
.setViewportSize(1920, 1080)); // Set the viewport to a large resolution (e.g., full HD)
// Open a new page
Page page = context.newPage();
// Navigate to a URL
page.navigate("https://opensource-demo.orangehrmlive.com/web/index.php/auth/login");
// Additional code to interact with the page if needed
// Close the browser after use
browser.close();
//******************************************** End Set View Port Size **************************

// ****************************** serArgs as --start-maximize parameter and setviewprotsize is null **********************
Page page2 =Playwright.create().chromium().launch(new BrowserType.LaunchOptions().setHeadless(false)
.setArgs(List.of("--start-maximized")))
.newContext(new Browser.NewContextOptions().setViewportSize(null))
.newPage();
page2.navigate("https://opensource-demo.orangehrmlive.com/web/index.php/auth/login");
page2.close();

}
}

 

 

Comments

Popular posts from this blog

Step-by-Step: Launch Browser, Context, and Page in Playwright and Run Test and Configuration (JavaScript)

๐ŸŽฅ Setup Browser, Context, Page & Run Config Test Scripts with package.json & playwright.config.js Step-by-Step: Launch Browser, Context, and Page in Playwright and Run Test and Configuration (JavaScript) 1. Install Playwright You can install Playwright using the following command: npm init playwright@latest 2. Create a Basic Test Script Understand the core Playwright architecture: Element Description browser Controls the browser instance (like Chrome, Firefox, etc.) context Acts like a separate browser profile (cookies, localStorage are isolated) page A single browser tab where interaction happens 3. Run the Test npx playwright test example.spec.js Ways to Run TypeScript Tests Way Command Notes ๐ŸŸข Via npx npx playwright test Uses built-in TypeScript support ๐ŸŸข With s...

Playwright Test Structure in Details -Session-02

๐ŸŽฅ Playwright: test.only, Hooks & Grouping with test.describe Explained Let’s go step-by-step , showing how to build from a single test , to using beforeEach / afterEach , and then organizing things with test.describe . ✅ Step 1: Basic Single Test with test.only import { test, expect } from '@playwright/test' ; test. only ( '๐Ÿš€ Basic test - check title' , async ({ page }) => { await page. goto ( 'https://example.com' ); await expect (page). toHaveTitle ( /Example Domain/ ); }); test.only ensures only this test runs — great for debugging. ✅ Step 2: Add beforeEach and afterEach import { test, expect } from '@playwright/test' ; test. beforeEach ( async ({ page }) => { console . log ( '๐Ÿ”„ Setting up before each test' ); await page. goto ( 'https://example.com' ); }); test. afterEach ( async ({ page }, testInfo) => { console . log ( `๐Ÿ“ฆ Finished test: ${testInfo.title} `); }); test. only ( ...

Playwright Locators in JavaScript (Complete Guide)

๐ŸŽฏ Playwright Locators in JavaScript (Complete Guide) This guide explains each Playwright locator with: ✅ What it is ๐Ÿ• When to use ⚙️ How to use it ๐ŸŽฏ Benefits ๐Ÿงช Code Examples ๐Ÿ”น 1. Locator by ID ✅ What: Selects an element with a unique id . ๐Ÿ• When: Element has a unique id . ⚙️ How: page.locator('#username') ๐ŸŽฏ Benefit: Fast and reliable. <input id="username" /> await page.locator('#username').fill('John'); ๐Ÿ”น 2. Locator by Class ✅ What: Selects by class . ๐Ÿ• When: Repeated or styled elements. ⚙️ How: page.locator('.password') ๐ŸŽฏ Benefit: Useful for shared styling. <input class="password" /> await page.locator('.password').fill('12345'); ๐Ÿ”น 3. Locator by Text ✅ What: Matches visible element text. ๐Ÿ• When: For buttons, links, etc. ⚙️ How: page.getByText('Login') ๐ŸŽฏ Benefit: Human-readable. <button>Login...