MCPcopy Index your code
hub / github.com/codeceptjs/CodeceptJS / saveScreenshot

Method saveScreenshot

lib/helper/Puppeteer.js:2219–2253  ·  view source on GitHub ↗

* {{> saveScreenshot }}

(fileName, fullPage)

Source from the content-addressed store, hash-verified

2217 * {{> saveScreenshot }}
2218 */
2219 async saveScreenshot(fileName, fullPage) {
2220 const fullPageOption = fullPage || this.options.fullPageScreenshots
2221 let outputFile = screenshotOutputFolder(fileName)
2222
2223 this.debug(`Screenshot is saving to ${outputFile}`)
2224
2225 // Safety check: ensure page exists and is not closed
2226 if (!this.page || this.page.isClosed?.()) {
2227 this.debugSection('Screenshot', 'Page is not available, skipping screenshot')
2228 return
2229 }
2230
2231 await this.page.screenshot({
2232 path: outputFile,
2233 fullPage: fullPageOption,
2234 type: 'png',
2235 })
2236
2237 if (this.activeSessionName) {
2238 for (const sessionName in this.sessionPages) {
2239 const activeSessionPage = this.sessionPages[sessionName]
2240 outputFile = screenshotOutputFolder(`${sessionName}_${fileName}`)
2241
2242 this.debug(`${sessionName} - Screenshot is saving to ${outputFile}`)
2243
2244 if (activeSessionPage && !activeSessionPage.isClosed?.()) {
2245 await activeSessionPage.screenshot({
2246 path: outputFile,
2247 fullPage: fullPageOption,
2248 type: 'png',
2249 })
2250 }
2251 }
2252 }
2253 }
2254
2255 async _failed(test) {
2256 await this._withinEnd()

Callers

nothing calls this directly

Calls 2

screenshotOutputFolderFunction · 0.90
debugMethod · 0.80

Tested by

no test coverage detected