How to Implement End-to-End Technical Testing
Overview
This article provides guidance on how to effectively implement end-to-end technical testing within the receeve platform. Given the asynchronous, event-driven nature of the system, it is crucial to follow best practices that ensure reliable and consistent testing outcomes, particularly when utilizing the Demo environment.
Environment Considerations
1. Use the Demo Environment:
To prevent any potential disruptions or traffic increases in the Production environment, it is recommended to conduct all end-to-end testing in the Demo environment. This environment closely mirrors Production but is specifically designed to handle testing scenarios without impacting live operations.
2. Demo Environment Behavior:
Be aware that the Demo environment operates differently from Production, particularly during off-peak hours such as weekends and nighttime windows. During these periods, the system may not process calls and requests in real-time but instead, batch them hourly. This behavior must be considered when planning your tests, especially if immediate feedback is required.
Testing in an Asynchronous, Event-Driven System
1. Event-Based Assertions:
Given that receeve is an asynchronous, event-driven system, you will need to implement assertions carefully. There are two primary methods for doing this:
- Webhooks: Set up webhooks to receive notifications when specific events occur, such as when a claim status changes or when a payment is processed. This allows for real-time assertions based on event triggers.
- Waiting or Active Polling: In cases where webhooks are not feasible, implement appropriate waiting mechanisms or active polling. This involves periodically checking the status of the system or a particular claim until the desired condition is met. Keep in mind the potential delay during off-peak hours in the Demo environment.
Keep in mind that we do not guarantee events are processed quickly. Depending on the system load it can take several hours and in occasions up to the next day for an event to be executed.
Be also aware of business rules that you might have configured in the Demo environment before. Example: Rules to not send emails after 5pm.
Utilizing Custom Claim Trigger Reactions
1. Custom Claim Trigger Reactions:
To effectively move test claims through specific strategies during your end-to-end testing, use custom claim trigger reactions. These are customizable actions that can be triggered when certain conditions are met within a claim's lifecycle.
2. API Integration:
Leverage the corresponding API endpoints to programmatically move test claims into specific strategies. This allows for precise control over the testing process and ensures that claims follow the desired path through the system.
Conclusion
Implementing end-to-end technical testing in receeve requires careful consideration of the system's asynchronous nature and the operational differences in the Demo environment. By following the guidelines outlined in this article, you can ensure that your tests are both effective and non-disruptive to live operations. Remember to utilize webhooks, polling mechanisms, and custom claim trigger reactions in conjunction with the API to achieve your testing objectives.
If you have any questions or need further assistance, please reach out to the support team.
Useful Links