Overview
Introduction
This documentation describes the process of automating regression tests for the RBI's payment system. The automation aims to ensure that new code changes do not introduce errors in existing functionalities.
Objective
The primary objective of this automation is to validate the integrity of the payment system after each code change or update, ensuring that all payment flows function as expected.
Test Environment
Servers
Development Server: Used for continuous development and initial testing.
Stagging Server: Used for automated testing before any release.
Production Server: Not directly used for automated tests, but for final validation.
Configurations
APIs: Test endpoints configured to simulate the production environment.
Prerequisites
Access and Permissions
Access to the code repository.
Access to the test environment and test database.
Permissions to configure and run jobs in Jenkins.Prerequisites
Node.js: Ensure you have Node.js installed. You can download it from Node.js.
Cypress: Install Cypress via npm.
API Endpoints: A list of all relevant API endpoints for the payment system.
Test Data: Prepare test data for various test cases, including valid and invalid payment details.
Test Scenarios
Check if the user is able to place an order using PayPal
Check if the user is able to place an order using Cash
Check if the user is able to place an order using Sodexo
Check if the user is able to place an order using Cheque Gourmet
Check if the user is able to place an order using Cheque Gourmet Voucher
Check if the user is able to place an order using Cart on Delivery
Check if the user is able to place an order using Bizum
Check if the user is able to place an order using Apple Pay
Check if the user is able to place an order using Waylet
Test Execution
Running the Test
Run Cypress in Interactive Mode:
npx cypress open
Run Cypress in Headless Mode:
npx cypress run
Reports and Logs
Maintenance and Updates
Update Dependencies: Regularly update all dependencies to their latest versions.
Review Test Scripts: Periodically review and update test scripts to cover new features and changes.
Monitor Test Runs: Regularly monitor automated test runs to ensure they are functioning correctly and addressing any issues promptly.
Add Comment