Socket
Socket
Sign inDemoInstall

@web/test-runner-playwright

Package Overview
Dependencies
Maintainers
7
Versions
84
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@web/test-runner-playwright

Playwright browser launcher for Web Test Runner


Version published
Weekly downloads
39K
increased by5.37%
Maintainers
7
Weekly downloads
 
Created
Source

Web Test Runner Playwright

Browser launcher for @web/test-runner. Runs the browser using playwright.

Usage

If you are using @web/test-runner, you can run playwright using the --playwright and --browsers flags.

Customizing launcher options

If you want to customize the playwright launcher options, you can add the browser launcher in the config.

You can find all possible launch options in the official documentation

const { playwrightLauncher } = require('@web/test-runner-playwright');

module.exports = {
  browsers: [
    playwrightLauncher({
      // product can be chromium, webkit or firefox
      product: 'chromium',
      launchOptions: {
        executablePath: '/path/to/executable',
        headless: false,
        args: ['--some-flag'],
      },
    }),
  ],
};

Testing multiple browsers

For each browser you can add a separate browser launcher

const { playwrightLauncher } = require('@web/test-runner-playwright');

module.exports = {
  browsers: [
    playwrightLauncher({ product: 'chromium' }),
    playwrightLauncher({ product: 'firefox' }),
    playwrightLauncher({ product: 'webkit' }),
  ],
};

Customizing page creation

You can use a custom function to create the puppeteer Page. You can use this for example to set up injecting scripts for environment variables or to expose functions to the browser to control the page.

const { playwrightLauncher } = require('@web/test-runner-playwright');

module.exports = {
  browsers: [
    playwrightLauncher({
      async createPage({ browser, config }) {
        const page = await browser.newPage();

        // expose global variabels in the browser
        page.addInitScript(() => {
          window.__GLOBALS__ = { globalA: 'a', globalB: 'b' };
        });

        // expose a function in the browser, which calls a function on the
        // playwright page in NodeJS
        page.exposeFunction('playwrightScreenshot', () => {
          page.screenshot();
        });

        return page;
      },
    }),
  ],
};

Keywords

FAQs

Package last updated on 26 Aug 2020

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc