# Puppeteer-firefox
Now you can use Puppeteer for Firefox (min version: Firefox/63.0.4)
Some of Puppeteer API methods has not supported in firefox yet. You could check status of them at Puppeteer API coverage status (opens new window)
# Installation
npm install puppeteer-firefox
# Configuration
If you want to use puppeteer-firefox, you should add it in Puppeteer section in codecept.conf.js.
- browser: 'chrome' OR 'firefox', 'chrome' is default value
helpers: {
Puppeteer: {
browser: process.env.BROWSER || 'firefox',
url: process.env.BASE_URL || 'https://example.com',
chrome: {
args: [
'--ignore-certificate-errors',
],
},
firefox: {
args: [
'--ignore-certificate-errors'
],
},
},
# Run-multiple
Example multiple section in codecept.conf.js:
multiple: {
parallel: {
chunks: process.env.THREADS || 30,
browsers: [{
browser: 'chrome',
windowSize: '1920x1080',
}, {
browser: 'firefox',
windowSize: '1920x1080',
}],
},
},
# Puppeteer v2.1.0 onwards
Historically, Puppeteer supported Firefox indirectly through puppeteer-firefox, which relied on a custom, patched version of Firefox. This approach was also known as โJugglerโ. After discussions with Mozilla, we collectively concluded that relying on custom patches was infeasible. Since then, we have been collaborating with Mozilla on supporting Puppeteer on โstockโ Firefox. From Puppeteer v2.1.0 onwards, as an experimental feature, you can specify puppeteer.launch({product: 'firefox'}) to run your Puppeteer scripts in Firefox Nightly, without any additional custom patches.
npm i [email protected]
If you want to try this expirement within CodeceptJS, you should add it in Puppeteer section in codecept.conf.js.
- browser: 'chrome' OR 'firefox', 'chrome' is default value
helpers: {
Puppeteer: {
browser: process.env.BROWSER || 'firefox',
url: process.env.BASE_URL || 'https://example.com',
chrome: {
args: [
'--ignore-certificate-errors',
],
},
firefox: {
args: [
'--ignore-certificate-errors'
],
},
},