In this post, I want to write about the differences between robotic process automation (RPA) and test automation (TA). Or are there differences? These two different ideas are converging more and more and next I’ll explore what is happening in the software automation industry.
The first thing I want to make clear is, that both RPA and TA are technology agnostic. They both are, in essence, automated software processes, which means same technologies can be used. Of course, using a dedicated tool will have a lot of quality-of-life improvements, but it can be done with the exact same tool.
The second thing is, that the automation tools are converging. A real-life example: the open source generic automation framework Robot Framework has been supporting RPA functionality for the last two years. There are companies building cloud automation services on top of that tool, which was only a couple of years ago seen as only a test automation framework. The same thing is happening on the commercial side. One of the biggest RPA players (maybe the biggest!) UiPath has added a new Test Manager feature, that turns your RPA scripts into test automation scripts. UiPath has a clear strategy to grow their market place in the test automation space in the future.
So, if the tools are the same, what is the difference?
It is about the context. That’s the big difference. Where, how and why the automation is used are the key differences. Let’s start with test automation.
For test automation, context means the following: we are automating tests to ensure functioning code in testing environment before production.
For robotic process automation, context means the following: we are automating business processes to produce customer value in production environment.
And when this context is taken into consideration, it shows how differently the same automation can be applied to these situations. In the test automation world, orchestration means where and when you run tests, which usually is the CI server and nightly runs. In the RPA world, orchestration means where and when the robotic processes are run, which usually means an automation platform in the cloud when the task is needed to be executed.
So, next time someone asks a test automation developer if they can do RPA or someone asks if a RPA developer can they do test automation, the answer is probably yes. If you just tell them the context.
Sources:
Test Automation, Wikipedia, Available:
https://en.wikipedia.org/wiki/Test_automation
Robotic Process Automation, Wikipedia, Available: https://en.wikipedia.org/wiki/Robotic_process_automation