October DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsWindows FixRecommendedWindows errors stealing your time? Find the fix fastScan stability, cleanup and performance issues.Fix NowOctober DealsAmazon USDeal season is back - check today's better picksAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
Redmond desk4 min

How to Handle Multiple Windows in Selenium with Protractor

Save the original handle, wait for a new one, switch explicitly, and return to the parent after closing the child. Protractor is end of life, so use this pattern for legacy suites.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

In a Protractor test, save the current window handle before opening a popup or tab, wait for a new handle to appear, switch to that handle explicitly, then switch back to the saved handle after closing the child window. WebDriver does not automatically change the test’s selected context when the browser visibly focuses a new window. Protractor reached end of life in August 2023, so treat this as legacy-suite maintenance guidance, not a recommendation for new projects.

Switch to a newly opened window

Use the existing browser context as the parent, trigger the link or action that opens another top-level context, and wait for the handle list to change before selecting the child. This JavaScript example follows Selenium’s documented window-handling sequence; it is illustrative and has not been verified against every historical Protractor and Selenium version.

it('switches to a newly opened window and returns', async function () {
  const original = await browser.getWindowHandle();
  const before = await browser.getAllWindowHandles();

  await element(by.css('a.opens-popup')).click();

  await browser.wait(async function () {
    const handles = await browser.getAllWindowHandles();
    return handles.length > before.length;
  }, 10000);

  const handles = await browser.getAllWindowHandles();
  const child = handles.find(handle => !before.includes(handle));
  await browser.switchTo().window(child);

  // Make assertions or interact with the child window here.

  await browser.driver.close();
  await browser.switchTo().window(original);
});

The example snapshots every pre-existing handle, rather than relying on a fixed array position. That matters if the test already has multiple tabs or windows open. If the action opens exactly one new context, selecting the handle not present in before identifies it without assuming that the popup is always handles[1].

What the handle operations do

  • getWindowHandle() retrieves the handle for the currently selected window.
  • getAllWindowHandles() retrieves the available handles as an array of strings in Selenium’s JavaScript API.
  • switchTo().window(handle) selects the context for subsequent WebDriver commands.
  • driver.close() closes the selected window; switch to a still-open handle before issuing more commands.

See Selenium’s window and tab handling guide and the JavaScript WebDriver API reference for the current documented behavior.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
#1 Best Overall
Sale
LAPGEAR Home Office Pro Lap Desk - Black Carbon, Fits 15.6” Laptops
  • Spacious Design: Measuring 21.1" wide and 14.1" deep, our lap desk comfortably fits most laptops up to 15.6". Extra room for accessories ensures convenience.
  • Enhanced Functionality: Packed with handy features, including a 5x9" precision tracking mouse pad and a built-in phone slot for seamless work or video calls. Plus, enjoy ergonomic support with the integrated cushioned wrist rest.
  • Cool Comfort: Enjoy a stable surface with our lap desk's dual bolster cushion, designed for comfort and airflow, keeping your lap cool during extended use.
  • Durable Surface: Work with confidence on our lap desk's solid surface, featuring a sleek black carbon color, ensuring optimal air circulation to prevent your laptop from overheating.
  • On-the-Go Convenience: With an integrated handle and lightweight design (2.8 lbs), our lap desk is portable for travel or moving around the house, offering flexibility in any space.

Handle several existing windows safely

When there may already be multiple contexts, capture the full pre-action handle list. After the action, compare the new list against that snapshot and choose a newly added handle. Do not assume that handle order maps consistently to tab order or that a particular index is the popup.

If the action can open more than one window, identify the intended one using a condition meaningful to the test after switching—such as checking the expected page URL or content—and close or otherwise handle the remaining contexts deliberately. The example assumes the action adds one child context.

Rank #2
Anker USB C Hub, 5-in-1 USBC to HDMI Splitter with 4K Display
  • 5-in-1 Connectivity: Equipped with a 4K HDMI port, a 5 Gbps USB-C data port, two 5 Gbps USB-A ports, and a USB C 100W PD-IN port. Note: The USB C 100W PD-IN port supports only charging and does not support data transfer devices such as headphones or speakers.
  • Powerful Pass-Through Charging: Supports up to 85W pass-through charging so you can power up your laptop while you use the hub. Note: Pass-through charging requires a charger (not included). Note: To achieve full power for iPad, we recommend using a 45W wall charger.
  • Transfer Files in Seconds: Move files to and from your laptop at speeds of up to 5 Gbps via the USB-C and USB-A data ports. Note: The USB C 5Gbps Data port does not support video output.
  • HD Display: Connect to the HDMI port to stream or mirror content to an external monitor in resolutions of up to 4K@30Hz. Note: The USB-C ports do not support video output.
  • What You Get: Anker 332 USB-C Hub (5-in-1), welcome guide, our worry-free 18-month warranty, and friendly customer service.

Adapt the syntax to a legacy project

Before copying async/await syntax, inspect the versions of Protractor, Selenium, browser and driver pinned by the project, along with its async configuration. Older suites may use promise chains or the legacy WebDriver control flow. The API references establish current method behavior, but do not provide a complete compatibility matrix for historical combinations. Protractor’s archived repository points to legacy API documentation; check the exact dependencies and archived documentation for the project being maintained: Protractor repository.

Troubleshoot window-switching failures

  • The new window is not in the handle list yet: popup creation is asynchronous. Wait for the handle count to increase before reading and selecting the new handle.
  • Commands still affect the original page: browser focus is not WebDriver context selection. Call switchTo().window(childHandle) after identifying the target.
  • A command fails with No Such Window: the selected context may already have been closed. Switch to an open saved handle before continuing.
  • The test switches to the wrong tab: avoid fixed indexes; compare handles with the complete pre-action snapshot.
  • The syntax fails in the old suite: verify pinned Protractor and Selenium versions and whether the project uses native async/await, promise chains, or the former control flow. Do not assume modern examples are drop-in compatible.

Protractor is legacy software

The Protractor project states, “Protractor reached end-of-life in August 2023,” and discourages new adoption while recommending that existing users migrate to other end-to-end testing solutions. That lifecycle status is why this procedure is best used to maintain a suite already built on Protractor. Selenium’s current window-handling documentation describes WebDriver behavior; it does not restore support for the discontinued Protractor project. For a new suite, compare maintained frameworks against your application, test stack, async model and migration needs rather than treating this legacy recipe as a framework recommendation. Protractor project site.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #3
Sale
Yilador Webcam Cover 3 Pack, 0.03 inch Ultra Thin Laptop Camera Cover Slide
  • Note: Not suitable for MacBooks released after 2023 or devices with a protruding front camera; Not applicable to full-screen or notch-style tempered glass screen protectors; Do not use on the rear camera of the phone.
  • 💻 Why Do You Need a Webcam Cover Slide? — Safeguard your privacy by covering your webcam with our reliable webcam cover when not in use. Don't let anyone secretly watch you. Stay protected!
  • ✅ Thin & Stylish — Enhance your laptop's functionality and aesthetics with our 0.027" ultra-thin webcam covers. Seamlessly close your laptop while adding a touch of sophistication.
  • ✅ Fits Most Devices — Compatible with laptops, phones, tablets, desktops! Keep your privacy intact on Ap/ple, Mac/Book, iPh/one, iP/ad, H/P, L/novo, De/ll, Ac/er, As/us, Sa/msung devices.
  • ✅ 365 Days Protection — Our upgraded 3.0 adhesive ensures a strong hold that won't damage your equipment. Experience reliable, long-term privacy protection day in and day out.

Or skip the browser setup

If the task is capturing a site rather than testing window behavior, ScreenshotNeo is a website screenshot API and MCP server. One GET request can return an image or PDF. For example, using cURL:

curl -G "https://api.screenshotneo.com/v1/shot" -d access_key=YOUR_API_KEY --data-urlencode url=https://stripe.com -o shot.webp

See the ScreenshotNeo documentation for request options. It removes cookie banners, newsletter popups and chat widgets before capture; bot checks, blank pages and failed loads are not billed. Its MCP server gives AI agents screenshot tools, and the Free plan includes 1,000 shots per month with no card; paid plans start at $5 for 3,000 shots. Sign up for 1,000 free screenshots a month, with no card required.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Frequently Asked Questions

Does Selenium switch to a popup automatically when it opens?

No. The test must select the popup’s handle explicitly with WebDriver.

Rank #4
AboveTEK Portable Laptop Lap Desk w/Retractable Left/Right Mouse Pad Tray, Non-Slip Heat Shield Tablet Notebook Computer Stand Table w/Sturdy Stable Work Surface for Bed Sofa Couch or Travel
  • Anti-Slip Surface - Transform your laptop into a mobile workstation with the AboveTEK portable laptop lap desk. The anti-slip surface provides a strong grip for laptops up to 15.6 inches(Diagonal), while the double rubber strip on the bottom ensures a stable display or typing experience on your lap, couch, or bed.
  • Retractable Mouse Pad - Retractable laptop mouse pad extends on both directions for the left/right handed with elevation along the edges for stopping mouse from falling off. The size of laptop tray is 14" X 9.7" and the size of mouse pad is 7.4" X 6.1".
  • Effective Heat Shield - The effective heat shield made of sturdy and thick material protects your laptop from overheating. Prioritizes your comfort and safety, an ideal lap pad or board for working anywhere.
  • EASY to Carry and Store - With an ergonomic and simplistic design, the lap desk is portable to store in a backpack. Only 15" in size, 2.2 lb of weight and with slim 0.6 inch thickness, it is ready to be easily carried around.
  • Widely Applicable - The smooth platform accommodates laptops and tablets up to 15.6 inches(Diagonal), making it a versatile accessory and one of the best gifts for mom, dad, students and professionals. Perfect for use as a laptop bed tray or tablet holder anywhere at home, library, or park.

What should a new project use instead of Protractor?

The available evidence establishes that Protractor is end of life but does not rank replacement frameworks. Compare maintained options for compatibility, async handling and migration effort.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Best Value
Sale
LAPGEAR Home Office Lap Desk – Pink, Fits 15.6” Laptops
  • Spacious Design: Measuring 21.1" wide and 12" deep, our lap desk comfortably fits most laptops up to 15.6". Extra room for accessories ensures convenience.
  • Enhanced Functionality: Packed with handy features, including a 5x9" precision tracking mouse pad and a built-in phone slot for seamless work or video calls. Plus, enjoy laptop support with the integrated device ledge.
  • Cool Comfort: Enjoy a stable surface with our lap desk's dual bolster cushion, designed for comfort and airflow, keeping your lap cool during extended use.
  • Durable Surface: Work with confidence on our lap desk's solid surface, featuring a blush pink color, ensuring optimal air circulation to prevent your laptop from overheating.
  • On-the-Go Convenience: With an integrated handle and lightweight design (2.14 lbs), our lap desk is portable for travel or moving around the house, offering flexibility in any space.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. Shenzhen desk3 min
    HONOR Expands Beyond Smartphones With Humanoid Robot RevealHONOR said it unveiled its first humanoid robot at MWC 2026 and named shopping assistance, workplace inspections, and supportive companionship as intended uses. Later Robotics D1 claims and a reported…
  2. Cupertino desk5 min
    Apple Unveils AirPods Max 2: The Upgrade That Should Have Happened Years AgoAirPods Max 2 adds H2-powered audio features and Apple claims up to 1.5× more effective ANC, but its design, Smart Case, and 20-hour battery rating are unchanged. Wired lossless audio…
  3. Cupertino desk4 min
    Apple’s OLED Touch MacBooks Are Coming—but the Dynamic Island Is the Real GambleApple has not announced an OLED touchscreen MacBook, but reports point to high-end models arriving in late 2026 or early 2027. The reported Mac Dynamic Island could be useful, but…
Recommended PC Tool
Recommended PC Tool
Windows Errors? Fix Them Before They SpreadFree repair scan
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.