Translations: Français
- Puppeteer:
npm install --save-dev puppeteer
The first step is setting up a helper to configure the environment:
./test/_withPage.js
import puppeteer from 'puppeteer';
module.exports = async (t, run) => {
const browser = await puppeteer.launch();
const page = await browser.newPage();
try {
await run(t, page);
} finally {
await page.close();
await browser.close();
}
}
./test/main.js
import test from 'ava';
import withPage from './_withPage';
const url = 'https://google.com';
test('page title should contain "Google"', withPage, async (t, page) => {
await page.goto(url);
t.true((await page.title()).includes('Google'));
});
test('page should contain an element with `#hplogo` selector', withPage, async (t, page) => {
await page.goto(url);
t.not(await page.$('#hplogo'), null);
});
test('search form should match the snapshot', withPage, async (t, page) => {
await page.goto(url);
const innerHTML = await page.evaluate(form => form.innerHTML, await page.$('#searchform'));
t.snapshot(innerHTML);
});