Skip to main content

Puppeteer

Puppeteer is a Node.js library from Google for controlling headless (or headed) Chrome and Chromium programmatically — automating navigation, form-filling, screenshotting, and PDF generation. It predates Playwright and shares much of its underlying protocol, but is limited to Chromium-family browsers.

Puppeteer was one of the first tools to offer a clean, promise-based API directly over the Chrome DevTools Protocol, and it's still widely used for browser automation tasks beyond pure testing — generating PDFs and screenshots, scraping dynamic content, and automating repetitive browser workflows.

Playwright, built later by many of the same engineers, extended Puppeteer's core ideas to support Firefox and WebKit as well as Chromium, which is why most new test-automation projects now default to Playwright — Puppeteer remains a solid, focused choice specifically when Chromium-only automation is all that's needed.

Puppeteer — Definition, Example & How It's Used | QA Bash Glossary | QA Bash