- JS naming conventions link
- Nespresso
- device wise capability separation (device farm compatible)
- browser+platform wise configuration (incase required to launch mobile browser - web verification)
- maintain constance keywords
- Utility classes
- reporting configurations
- support page-object model
- test suite execution and selected test execution option
- Install Java: link. If you get this error ('error @wdio/selenium-standalone-service error selenium exited before it could start with code 1')
- Node v12+ (will be installed automatically via Volta.sh)
- allure reports configuration
npm install
npm run test -- --platform=LOCAL_ANDROID --project=nespresso --testEnv=staging
All tests within nespresso projectnpm run test -- --platform=LOCAL_ANDROID --project=nespresso --testEnv=staging --suite login
Run specific tests, which are grouped to suites.
support
- folder for shared util/helper files, available globally. You can import it from any subdirectory like this:import ElementUtil from 'support/element-util';
support/browserCommands
- helper file with globally available methods within browser scopesupport/elementCommands
- helper file with globally available methods within element scopeprojects
- different websites/brands that has e2e testsreporters
- contains custom reportersprojects/<project_name>/test/specs
- main folder where e2e tests/assertions are writtenprojects/<project_name>/test/pages
- main folder where all abstraction for UI element interaction is written.projects/<project_name>/config
- main folder where all project configuration related files residesprojects/<project_name>/api
- main folder where API functions for querying BackEnd Services/BackOfficeprojects/<project_name>/fixtures
- main folder where test data residesprojects/<project_name>/constants
- main folder with constants that are reused across the projectenv.example
- list of some ENVironment variables that can are used mostly in CI env. Not mandatory in local env.