#CI/CD CircleCI
This project contains automated tests for the Swagger Petstore API, focusing on CRUD operations for the "Pets" resource. The testing is done using Cypress with TypeScript. Additionally, performance tests are included using Apache JMeter, and Postman collections are run using Newman for API testing.
Please look for details in the below files:
- README.md
- TESTPLAN.md
- EXERCISE.md
- BUGREPORT.md
- Node.js and npm (for running Cypress and Newman)
- Apache JMeter (for performance testing)
- Postman (to export the Postman collection)
- Cypress and Newman installed globally or locally
- Node.js (>= 16.x)
- npm (>= 6.x)
git clone https://github.com/podupu/droneshield_api.git
cd droneshield_api
npm install
To run the Cypress tests, use:
npx cypress open
Or to run the tests headlessly:
npx cypress run
- Run all tests:
npm test
- Open Cypress Test Runner:
npm run test:open
- cypress/e2e/api-tests: Contains API test cases.
- cypress/support: Custom commands and setup.
- cypress/plugins: Cypress plugins configuration.
-
Install Newman:
npm install -g newman
-
Run Collection:
newman run petstore-collection.json
-
Generate HTML Report:
newman run petstore-collection.json -r html --reporter-html-export report.html
-
Download and Install JMeter:
- Download JMeter from Apache JMeter.
-
Run Performance Tests:
- Execute the test using JMeter GUI or CLI:
jmeter -n -t petstore-jmeter-test.jmx -l performance-results.jtl
- Analyze the results using JMeter or a JTL file viewer.
- Execute the test using JMeter GUI or CLI:
Please refer to the BUGREPORT.md
file for the bug reporting template.