Robotic Process Automation
Back in 2015, when I first heard the term — RPA aka Robotic Process Automation, I literally visualised robots working on automation
and then there were all sorts of conceptions and misconceptions about this new term, just like it happens for any new technology
Few said — it’s just for Industrial/ Manufacturing business automation
Some said — it is a process automation
while others like me, very naively, visualised a bot automating stuff
By the classic definition of RPA from wiki, this is what it says
Robotic process automation (RPA) is a form of business process automation technology based on metaphorical software robots (bots) or on artificial intelligence (AI)/digital workers.[1] It is sometimes referred to as software robotics (not to be confused with robot software).
Isn’t this definition too straightforward?
Just kidding
So, it says,
it is not to be confused with a robot software but it is called a software robot
Why is it so confusing?
Isn’t it just a software being controlled by another software?
Why do we complicate simple stuff?
Now, being a automation person myself for a decade now, that sounds to me like automation
My code on top of a developers code, Software being controlled by Software
You don’t agree?
When in software automation, let’s take an easy example of UI automation:
An automation tester, really does write test scripts on top of the UI,
The UI could be React, Angular, Javascript built in whichever technology
and the tester would write code to automate this UI
Let’s say the tester is asked to automate :)
So, he/she may create scripts/ commands/ framework etc which are all a piece of software to run over the actual development code, which is the UI in this case
Legend says :)
People have been using Selenium to automate UI
To one’s who don’t know about it, just in case, let me elaborate
To write a code that interacts with another code,
the former not only needs to interact with the latter but also, inspect, identify, understand the elements on a given UI
Selenium/ Appium help us with that
You can also, call it the client-server architecture
For instance, The appium client sends a request to the server,
The server sends a request to the device to perform the necessary action.
The server would then return the result back to client to update the test status
to keep it simple,
Incase, you are using Desktop/ Laptop combinations — you take the help of Selenium
If using mobile devices, which is very popular these days, you use Appium
Now, coming back to RPA
if RPA is one of the types of automation, like we have been doing automation for many years now;
Shouldn’t appium/ selenium help us with RPA too?
I mean, one thing is for sure: No code in the world discriminates
Why would appium/ selenium NOT help us with RPA?
Any good reason?