@tramvai/test-puppeteer
TypeScript icon, indicating that this package has built-in type declarations

3.40.25 • Public • Published

Tramvai test puppeteer

Set of helpers for using puppeteer in the integration tests

puppeter should be installed separately

Installation

npm i --save-dev @tramvai/test-puppeteer

How To

Tests in browser

Puppeteer runs tests in headless Chrome browser, documentation can be found on official site

import { startCli } from '@tramvai/test-integration';
import { initPuppeteer, wrapPuppeteerPage } from '@tramvai/test-puppeteer';

beforeAll(async () => {
  app = await startCli('bootstrap', {
    env: {
      SOME_ENV: 'test',
    },
  });
}, 80000);

afterAll(() => {
  return app.close();
});

it('puppeteer', async () => {
  const { browser } = await initPuppeteer(app.serverUrl);

  const page = await browser.newPage();
  const wrapper = wrapPuppeteerPage(page);

  await page.goto(app.serverUrl);

  expect(
    await page.$eval('.application', (node) => (node as HTMLElement).innerText)
  ).toMatchInlineSnapshot(`"Main Page click link"`);

  await wrapper.router.navigate('./second');

  expect(
    await page.$eval('.application', (node) => (node as HTMLElement).innerText)
  ).toMatchInlineSnapshot(`"Second Page click link"`);

  await browser.close();
});

Readme

Keywords

none

Package Sidebar

Install

npm i @tramvai/test-puppeteer

Weekly Downloads

255

Version

3.40.25

License

Apache-2.0

Unpacked Size

22.2 kB

Total Files

20

Last publish

Collaborators

  • meskill
  • super_oleg
  • tinkoffbank