Folder structure:
package.json
node_modules
src/
clients/
foo/
cypress.json
cypress/
bar/
cypress.json
cypress-smoke.json
cypress/
integration/
smoke/
Package scripts test subfolders (using relative and absolute paths), see package.json
{
"scripts": {
"test": "npm run test-foo && npm run test-bar",
"test-foo": "cypress run --project ./src/clients/foo",
"test-bar": "cypress run --project $PWD/src/clients/bar"
}
}If you want to run Cypress tests in the folder "src/clients/foo":
npx cypress run --project ./src/clients/fooIf you want to run Cypress in the folder "src/clients/bar" and use cypress-smoke.json configuration file:
npx cypress run --project ./src/clients/bar --config-file cypress-smoke.json
What's the difference between cypress run --project "folder" and cypress run --config-file "filepath"?
When you use cypress run --project ... you change the root folder where Cypress starts.
When you use --config-file ... you still run Cypress in the current folder, but instead of loading the settings from cypress.json file, you load it from a different JSON file.