cypress-bootstrap
Version:
Cypress Bootstrap is a project scaffolding tool that sets up a Cypress automation framework with a standardized folder structure and Page Object Model (POM) design. It helps teams quickly start testing with built-in best practices and sample specs.
59 lines (56 loc) • 1.76 kB
text/typescript
import { defineConfig } from 'cypress';
import mochawesomeReporter from 'cypress-mochawesome-reporter/plugin';
import { reporterConfig } from './reporter-config';
const addAccessibilityTasks = require('wick-a11y/accessibility-tasks');
let token;
let tempData;
export default defineConfig({
retries: 0,
reporter: 'cypress-multi-reporters',
reporterOptions: reporterConfig,
e2e: {
baseUrl: process.env.CYPRESS_BASE_URL || 'https://www.saucedemo.com/',
defaultCommandTimeout: 30000,
responseTimeout: 30000,
requestTimeout: 30000,
chromeWebSecurity: false,
viewportWidth: 1920,
viewportHeight: 1080,
watchForFileChanges: false,
experimentalRunAllSpecs: true,
screenshotsFolder: 'cypress/screenshots',
videosFolder: 'cypress/videos',
screenshotOnRunFailure: true,
testIsolation: false,
specPattern: '**/tests/**/*.spec.ts',
fixturesFolder: 'cypress/testdata',
env: {
authUrl: 'https://saucedemo.com/connect/token',
apiBaseUrl: process.env.API_BASE_URL || 'https://restcountries.com/v3.1',
swaggerSchemaUrl: `${process.env.CYPRESS_BASE_URL}/swagger/v1/swagger.json`,
},
setupNodeEvents(on, config) {
mochawesomeReporter(on);
addAccessibilityTasks(on);
const { plugin: cypressGrepPlugin } = require('@cypress/grep/plugin');
cypressGrepPlugin(config);
on('task', {
setToken: newToken => {
token = newToken;
return null;
},
getToken: () => {
return token;
},
setTempData: newTempData => {
tempData = newTempData;
return null;
},
getTempData: () => {
return tempData;
},
});
return config;
},
},
});