Skip to main content


Get the Puppeteer Browser instance to run commands with Puppeteer. Note that all Puppeteer commands are asynchronous by default so in order to interchange between sync and async execution make sure to wrap your Puppeteer calls within a commands as shown in the example.


Note that using Puppeteer requires support for Chrome DevTools protocol and e.g. can not be used when running automated tests in the cloud. Find out more in the Automation Protocols section.

it('should allow me to use Puppeteer', async () => {
// WebDriver command
await browser.url('')

const puppeteerBrowser = await browser.getPuppeteer()
// switch to Puppeteer
const metrics = await () => {
const pages = await puppeteerBrowser.pages()
pages[0].setGeolocation({ latitude: 59.95, longitude: 30.31667 })
return pages[0].metrics()

console.log(metrics.LayoutCount) // returns LayoutCount value