This project involves running EspoCRM locally using Docker and performing extensive automated testing using Playwright with TypeScript.
- Application: EspoCRM (running via Docker)
- Testing Framework: Playwright
- Language: TypeScript
Ensure you have the following installed on your local machine:
To start the EspoCRM application using the provided Docker Compose configuration:
docker-compose up -dWait for the containers to initialize. You can check the status with:
docker-compose psAccess the application at http://localhost:4141 (or the port defined in your docker-compose.yml).
Initialize the project and install Playwright dependencies (if not already done):
npm init -y
npm init playwright@latestFollow the prompts to configure Playwright for TypeScript.
This project uses Playwright for end-to-end testing.
- Test Plan: High-level strategy and scope of testing.
- Test Cases: Detailed test scenarios and steps.
To run all Cucumber BDD tests:
npm run bddTo run a specific feature file (e.g., login.feature):
npm run bdd -- "login.feature"To run tests in UI mode:
npx playwright test --uiTo run a specific feature file:
npm run bdd -- "features/login.feature"To generate bulk test data (e.g., create 5 new accounts):
npm run generate-dataThis command will:
- Run the data generation script.
- Create 5 new accounts in EspoCRM.
- Append the new account names to
fixtures/accountnamesadded.json.
The project uses Allure Report for detailed test execution reports.
- Automatic Generation: The Allure report is automatically generated and opened in your default browser after running
npm run bdd. - Dark Theme: The report uses a custom Dark Mode theme for better readability.
- Content: The report includes:
- Suites: Grouped by Parent Suite (Project) and Suite (Module).
- Test Cases: Detailed steps, parameters, and severity.
- Environment: Browser, OS, and User details.
- Categories: Classification of failures (e.g., Product Defects, Test Defects).
docker-compose.yml: Docker configuration for EspoCRM.tests/: Directory containing Playwright test specifications.pages/: Directory containing Page Object Model classes.fixtures/: Directory containing test data and fixtures.playwright.config.ts: Configuration file for Playwright.testplan.md: High-level test plan.testcases.md: Detailed test cases.
This README will be updated as the testing suite expands and more scenarios are covered.
This project is licensed under the MIT License - see the LICENSE file for details.
For questions or support, please contact [email protected].
Mukul Dev Mahato