Free tools Windows power users keep installed
One-click scans. No signup required.
To run Playwright tests in GitHub Actions, check out the repository, set up the project’s Node version, install its locked dependencies, install the matching Playwright browsers and operating-system packages, run the tests, and upload the report even if tests fail. Start with one CI worker for predictable execution; use sharding across jobs when the suite needs more parallelism.
Set up a basic Playwright GitHub Actions workflow
This workflow follows the sequence in Playwright’s Continuous Integration guide. It is an illustrative example, not a tested workflow. Replace the Node package commands with those for your project, and confirm that your configured reporter writes to the path the workflow uploads.
name: Playwright Tests
on:
push:
branches: [main, master]
pull_request:
branches: [main, master]
jobs:
test:
timeout-minutes: 60
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-node@v6
with:
node-version: lts/*
- run: npm ci
- run: npx playwright install --with-deps
- run: npx playwright test
- uses: actions/upload-artifact@v5
if: ${{ !cancelled() }}
with:
name: playwright-report
path: playwright-report/
retention-days: 30
The 60-minute timeout and 30-day artifact retention are values in the documentation’s example, not universal requirements. Action tags and repository retention policies can change; adjust them to your project’s policy. The upload condition allows the report step to run after a test failure while respecting cancellation.
Make sure a report is actually produced
The example uploads playwright-report/. Configure Playwright’s HTML reporter to emit that directory, or change the artifact path to match your reporter’s output. A workflow can succeed at uploading an artifact while still collecting no useful report if the paths do not agree.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
#1 Best Overall
- Read Before You Buy — No Video Output: These adapters support charging and USB 2.0 data transfer, but cannot transmit video signals. Except for standard USB webcams (which use USB data only), they are not compatible with HDMI/DisplayPort cables, video-capable USB-C hubs, or docking stations with video output.
- Convert USB-A Ports to USB-C: Designed to connect USB-C earphones, cables, flash drives, card readers, and other USB-C accessories to standard USB-A ports. Plug-and-play with no drivers or software required.
- Aluminum Alloy Housing: Built with a sturdy aluminum alloy shell that aids in heat dissipation and protects against daily wear and scratches. Designed to maintain a stable and secure connection.
- Compact & Travel-Friendly: The ultra-compact design allows the adapter to stay plugged into your device without blocking adjacent ports or adding bulk, reducing wear and tear on your original USB ports.
- 12-Month Warranty: Backed by a 12-month manufacturer warranty for peace of mind. Designed to meet strict quality control standards for reliable everyday performance.
Install browsers and system dependencies that match Playwright
Playwright browser binaries are tied to Playwright releases. Install browsers through the project’s Playwright CLI, and reinstall them when a Playwright update requires newer binaries. The general command installs supported browsers and their operating-system dependencies together:
npx playwright install --with-deps
If the suite runs only Chromium, a targeted install can avoid fetching unused browsers:
npx playwright install chromium --with-deps
Choose Chromium, Firefox, WebKit, or branded browser channels according to the browsers your product needs to support; install only what the suite exercises. See Playwright’s browser installation guide for supported installation options.
Rank #2
- 5-in-1 USB-C Hub: Experience comprehensive connectivity featuring a Power Delivery input, two USB-A 2.0 ports, a USB-A 3.0 port, and an HDMI port. (Note: The USB-C power delivery input port is only for connecting an external wall charger to power your laptop and cannot power peripheral devices.)
- 90W Pass-Through Charging: Achieve optimal charging with 90W pass-through power to your laptop, supported by a total input of 100W, with the hub reserving 10W for operational efficiency. (Note: Wall charger not included.)
- Quick Data Transfers: Accelerate your productivity with rapid data transfers using a high-speed 5Gbps USB 3.0 port and two 480Mbps USB 2.0 ports.
- 4K HDMI Display: Enhance your visual experience with a hub capable of delivering 4K resolution at 30Hz in both mirror and extend modes. Please note that this hub is compatible with MacBook (macOS 12 and newer), Windows 10 and 11, ChromeOS, and laptops equipped with DP Alt Mode and Power Delivery. Note: This device is not compatible with Linux.
- What You Get: Anker USB-C Hub (5-in-1, 4K HDMI), welcome guide, 18-month warranty, and our friendly customer service.
Direct installation or a Playwright container?
| Approach | What it does | Trade-off |
|---|---|---|
| Install on the runner | Uses the hosted runner’s operating-system image and installs browser and system dependencies as workflow steps. | Simple to adopt, but browser setup occurs in the job and depends on the runner environment. |
| Use a Playwright image | Runs the job in a container with browsers and dependencies supplied by the image, so a separate browser-install step can be omitted. | Provides a more controlled browser environment, but the image tag and project Playwright package must be kept aligned and updated deliberately. |
Playwright’s CI guide shows a GitHub-hosted runner using mcr.microsoft.com/playwright:v1.63.0-noble as an example image tag. Treat that as a documentation example, not a statement that it is the latest image. Consult the Docker guide and match the selected image to the Playwright version in the project.
Do these 3 things before closing this tab:
1Scan for outdated or missing drivers - takes under a minute2Repair Windows errors before they cause bigger problems3Fix the driver behind crashes, sound loss and screen glitchesKeep CI stable before increasing parallelism
Playwright recommends setting workers to 1 in CI to prioritize stability and reproducibility. More workers may be reasonable on a self-hosted runner with spare capacity, but concurrency can increase resource contention and timeouts. For broader parallel execution, Playwright documents distributing tests across jobs with sharding rather than simply increasing workers within one job. See the CI guidance and sharding guide.
Use retries as a diagnostic aid, not a fix
Playwright’s configuration examples show enabling retries only in CI, for example retries: process.env.CI ? 2 : 0, and using trace: 'on-first-retry'. They also demonstrate forbidOnly in CI, HTML reporting, browser projects, baseURL, and a webServer that starts a local app before tests. These are options, not mandatory settings: select retry counts and timeouts for your suite, and investigate repeat failures instead of treating retries as a cure for flakiness. The configuration guide explains these settings.
Rank #3
- Sleek 7-in-1 USB-C Hub: Features an HDMI port, two USB-A 3.0 ports, and a USB-C data port, each providing 5Gbps transfer speeds. It also includes a USB-C PD input port for charging up to 100W and dual SD and TF card slots, all in a compact design.
- Flawless 4K@60Hz Video with HDMI: Delivers exceptional clarity and smoothness with its 4K@60Hz HDMI port, making it ideal for high-definition presentations and entertainment. (Note: Only the HDMI port supports video projection; the USB-C port is for data transfer only.)
- Double Up on Efficiency: The two USB-A 3.0 ports and a USB-C port support a fast 5Gbps data rate, significantly boosting your transfer speeds and improving productivity.
- Fast and Reliable 85W Charging: Offers high-capacity, speedy charging for laptops up to 85W, so you spend less time tethered to an outlet and more time being productive.
- What You Get: Anker USB-C Hub (7-in-1), welcome guide, 18-month warranty, and our friendly customer service.
Scale a long suite with sharded jobs
A single job is easier to maintain. If its runtime becomes a bottleneck, split the suite into shards so separate GitHub Actions jobs can run portions in parallel. The sharding guide uses a matrix and passes each job its shard index and total, such as:
npx playwright test --shard=${{ matrix.shardIndex }}/${{ matrix.shardTotal }}
Each shard should produce a blob report. Collect those artifacts in a downstream job and merge them into a consolidated HTML report with:
npx playwright merge-reports --reporter html ./all-blob-reports
Follow the sharding guide for the matrix, artifact transfer, and merge structure. That page is in Playwright’s next documentation path and may change before general release.
Rank #4
- Dual Converters, Infinite Potential:Includes 2× USB C male to USB A female adapters and 2× USB A male to USB C female adapters. Perfect for a wide range of uses—tablets with Bluetooth keyboards, expand USB ports on macbook, and more. Two different converters for all your daily needs
- Next-Level 10Gbps & 3A Charging: No more slow 480Mbps, this usb to usb c adapter has a transfer speed of up to 10Gbps, allowing you to do more transferring in less time. This usb adapter fits both USB A and USB C charger, supporting up to 3A fast charging
- Upgraded Exquisite Craftsmanship: With an aluminum alloy housing and metal connector, the usbc to usb adapter is extremely durable and sturdy. Rigorously tested to withstand more than 10,000 times of plugging and unplugging, ensuring long-lasting performance
- Broad Compatible: The usb c to usb adapter widely supports all USB C/ USB A devices like laptops, tablets, cellphones, car chargers, and phone chargers. Such as compatible with MacBook Pro/Air 2023/2022, Thunderbolt 4/3 Devices,Apple MagSafe Watch 9/8/7/SE/Ultra, iPad Pro 2022/2021, Samsung Galaxy S23/S20/S10, and iPhone 17/16/15 Pro. Plug and play
- Please Note: To reach 10Gbps speed, keep the cable under 3.3 ft. For USB A Male to USB C adapters, try flipping the USB C connector. USB C Male to USB A adapters support bidirectional 10Gbps transfer within 3.3 ft
Retrieve reports and diagnose failed runs
Upload reports under a condition that runs after test failures; the workflow example uses if: ${{ !cancelled() }}. For sharded suites, preserve each shard’s blob report and merge them in a later job. Reports and traces can contain authenticated pages, test data, or internal application content, so store them only in trusted artifact locations or encrypt them before upload. Playwright calls out this risk in its configuration guidance.
Investigate browser launch failures
When a browser will not launch in CI, enable Playwright’s browser-launch logs with:
DEBUG=pw:browser npx playwright test
If a Linux job must run headed tests, it needs Xvfb. Playwright’s Docker image and GitHub Action have Xvfb preinstalled; the documented command pattern is:
Best Value
- 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.
xvfb-run npx playwright test
These troubleshooting recommendations are in the CI guide.
Decide whether caching or changed-test selection is worthwhile
Browser download or cache
Start with installation unless measurements in your own environment show that restoring a browser cache saves meaningful time. Playwright does not recommend browser caching by default: restoring it can take about as long as downloading the binaries, and Linux system dependencies cannot be cached. If you do cache browser binaries, key the cache to the Playwright version so an upgrade does not restore incompatible browsers. See the CI guide.
Full suite or a changed-test pre-pass
--only-changed can select tests by analyzing dependency relationships, but the selection is heuristic and can miss affected tests. Playwright’s documented pattern requires a non-shallow checkout so the workflow can compare against the pull-request base ref. Use changed-test selection only as preliminary feedback, then run the full suite. See the CI guide.
Local application or deployed preview
For tests against an application started in the workflow, configure webServer and a baseURL as appropriate. For end-to-end tests of a deployed preview, Playwright documents triggering tests after a successful GitHub deployment status and setting the test base URL from the deployment target URL. The CI guide describes that deployment pattern.
Quick Recap
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.

