A Guide For Testing RCM Automations
Welcome back to Tarpon Health's Automation Lifecycle series, where we share best practices for developing Revenue Cycle Management (RCM) automations. This blog delves into the best practices for creating efficient and reliable automations in the fourth phase of The Automation Lifecycle: Test. This phase encompasses five testing levels critical to moving an automation from production to the live environment.
Testing is all about ensuring the automation is working as expected. No automation should ever be pushed into production without adequate testing. This is important for many reasons, including that the automation runs error-free and meets the needs of the business. Testing also has secondary benefits, such as identifying and addressing inefficiencies that will reduce long-term maintenance costs.
Definitions
Unit Testing - Unit Testing is the process of testing individual units of code. This is the most basic level of testing, and its purpose is to ensure that each unit of code works correctly.
Integration Testing - Integration Testing is the process of testing how different units of code and applications interact with each other. Testing the connections ensures that the automation solution works as a whole.
User Acceptance Testing - User Acceptance Testing is the process of testing the accuracy of the automation solution with users. This ensures that the automation meets the needs of the business.
End-to-End Testing - End-to-End Testing is the process of testing the automation solution in its entirety. This should be done in a testing environment when possible.
Operational Testing - Operational Testing is the act of monitoring the automation in the production environment and making adjustments until the automation runs error-free.
Who is involved?
It’s important that the right people are involved in the testing process. Here is a breakdown of the main participants involved in each phase of testing. Established thresholds should be met before the automation can move from phase to phase, with sign-off required in the User Acceptance Testing and End-to-End Testing.
Testing Automation
There is natural overlap and iteration between the phases of testing. That said, testing generally follows the order illustrated below. We’ve included a brief synopsis of how to put each step into practice.
Unit Testing - Unit Testing is ideally completed throughout the build phase and at the end. Testing is typically done through peer-to-peer exercises, where one developer reviews another’s work. A more senior developer or manager should check a more junior developer’s work if the resources are available.
Integration Testing - Integration Testing begins by identifying the modules, processes, and systems that must work together. Each connection must be tested to verify that the different components interact correctly. For example, ensuring that files transfer to the right location and on time via secure file transfer protocol (sFTP).
User Acceptance Testing - User Acceptance Testing starts by identifying the business process owners impacted by the automation. These individuals should be involved in grading the accuracy of the automation outputs. Building a plan that includes a wide range of account types and scenarios is crucial to this process.
End-to-End Testing - Once User Acceptance Testing is complete, the development team should use a testing environment where possible to run the automation, testing from start to finish. The automation must run on the designated schedule with as much volume as possible, confirming that the automation is running free of manual intervention, capturing the right volume, and producing the anticipated results.
Operational Testing* - Developers should review security protocols and system environment differences and inform business process owners before making final adjustments and moving the automation into production. Developers should closely watch the automation as it runs in production and make any changes in concert with management.
*Note: production deployment happens in this phase.
Best Practices From Our Community
It's important to recognize that testing each automation will present unique challenges. For example, automations may vary in volume, integration touchpoints, the number of outcomes, etc. Below are a few best practices from the Tarpon community to remember as you build your unique testing plan.
Use testing or staging environments to the extent possible.
Document the testing process in detail:
Transparency into the test cases, stakeholders, results, and process will eliminate finger-pointing down the road if the automation doesn’t perform as expected.
Create a comprehensive set of test cases by identifying all the inputs and outputs of a process
Take your time, as organizations commonly find this the most challenging aspect of testing
Generally, you should monitor the automation closely for 1-2 weeks after a production deployment.
Deployments should always be done early in the week (i.e., not Thursday or Friday).
The Test phase is a critical stage in the Automation Lifecycle. The five testing levels discussed will ensure that your automations are ready for production, run error-free, and meet the needs of the business. Furthermore, building a testing process involving various stakeholders and scenarios is crucial for establishing trust in the automation. With thorough testing, the organization can be confident that the automation will run as intended and generate the desired results.