What to test
Comprehensive testing should include three main focal points:
- The ‘happy path,’ where everything happens as expected in the most likely scenarios
- Remaining possible paths/branches of each process
- Error handling when the data or systems are not as expected
The first area of focus is testing to ensure that the RPA tool is interacting properly with the application (i.e., reading, writing and navigating correctly). A good, robust solution will handle all in-scope cases, including outliers.
Each path/branch identified during the design phase should be captured and included in testing. Infrequent or outlying cases are often overlooked or presumed to function properly; however, those cases should be put through testing with as much rigor as any other case. Otherwise, those cases should be considered Business Referral Exceptions and handed off as errors.
In addition to testing cases that are completed successfully, each exception type should also be tested to ensure that they are caught and handled properly. Error test cases should include:
- System Unavailable Exceptions occur when systems are down or unavailable
- Business Referral Exceptions are business rule driven (e.g., data isn’t formatted correctly or is missing) and result in a hand-off to a human or an alert
- System Exceptions happen when the application is not behaving as expected (e.g., uncommon pop-up screens)
When testing your solutions’ error handling, you want to validate not only that errors are caught, but also that they are handled properly for the situation.
When to prepare for testing
There are several factors to consider when preparing for testing, including:
- How long it will take to build test cases for all paths/branches, including errors
- How many resources are available and their bandwidth
- The amount of time provisioning the bots will take
Preparing for testing should happen concurrent to development with the goal that test cases/data are ready when development is compete. It is critical that time has been allocated for resources to prepare test cases/data that accurately represent what will be processed in the real world. After considering the above factors, you should calculate backwards from the expected delivery date to derive when to start preparing for testing.
When testing, each path should be included in testing tracking, so results the can be captured and shared with all stakeholders. This is also useful for testers to keep track of what is working and what is failing from day to day.
Testing should consist of two phases:
- The first phase of testing should consist of test cases with good data – this phase establishes that the solution is working as expected and is able to interact with all elements properly.
- The next phase of testing should include test cases with bad data – whatever that means for that process. Missing data, data formatted in a way other than expected, etc.
There are several things to consider for testing your RPA solution. You should understand what is being tested, when you should start preparing for testing and the method of testing. Considering these points and planning accordingly will set you up for a smooth testing experience with your RPA solution.
Contact us at firstname.lastname@example.org to learn more.