Robot Framework with Windows Automation

Hey Everyone,

Hope you are doing well.

So I have recently heard about Robot Framework, i went through the beginner tutorials on youtube. I have just joined a new company which are developing supply chain management system. They are currently using Ui Vision as the RPA tool for desktop app automation.

The team has asked me to do a POC on Robot Framework to replace Ui Vision to make things more easier for licensing and building our framework. To start with understanding few things i installed the robot framework and copied the repo of GitHub - GDATASoftwareAG/robotframework-flaui: Windows user interface automation library for Robot-Framework. FlaUILibrary is a wrapper for the FlaUI automation library. · GitHub . But I am trying to find documentation and Tutorials to understand the framework usage.

The System we are using is Windows. I want to understand:

  1. how we can use this framework?
  2. understand the working of the framework?
  3. how can we use it on remote systems to do automation?

Thank you & Kind Regards

Trevor Dsouza

Hi Trevor,

You generally shouldn’t need to clone any repo to us a robot framework library, as far as I’ve seen they can all be installed using pip.

  1. Before installing FlaUI it’s a good idea to check if it’s going to be usaful with your app, that link you gave to GUI Inspector Tools, the first link is to FlaUInspect, on this page is a download link, download that FlaUInspect app (ah I just checked the download link is broken, download it from the 3.1.0 release page), it’s an exe in the zip file, run the exe and check that it can inspect the fields on your app and give you an xpath to the fields/buttons/etc, if so you’re good to use this library, otherwise you’ll need a different library

  2. to install the Robotframework-FlaUI Library run pip install robotframework-flaui in the same python environment as you installed robot framework

  3. to use this library refer to the keyword documentation, in any keyword where you see identifier/XPATH, use the xpath you get from FlaUInspect

If the FlaUInspect can see the elements in your app, don’t bother with points 2 & 3, you’ll need a different library to interact with your app. In that case if you can find out from the dev team what technology they used to create the app we can try to help you find a suitable robot framework library.

Hopefully that gets you started,

Dave.

Thanks Dave, for your response. The current App i need to check the elements are from the SAP application. So like you advised ill be checking first whether i will get the elements via FlaUInspect.

Hi Trevor,

If your application is native SAP, then FLAUI is probably not the best library to choose.

You have:

If you’re app is SAP Fiori (or one of the other SAP web technologies) then you might be better off with SeleniumLibrary or Browser Library

Dave.

Thank you Dave for quick and valuable information for a newcomer like me. :smiley:

Dave, are there any tutorials or courses that i can learn and understand from with using different frameworks / libraries?

On a different note I have found this link GitHub - MarketSquare/awesome-robotframework: A curated list of awesome Robot Framework resources and libraries · GitHub which has mentioned about various frameworks and descriptions. Any suggestions or thoughts on these?

Yeah I saw you were given that awesome-robotframework list on slack. it’s probably the best list of libraries you can add to robot framework available (I’ve added contributions to it). It also has a good list of tools you can use with robot framework.

What I will say, something I don’t see mentioned often, it’s in the user manual but it’s not really obvious, is that robot framework on it’s own doesn’t really test much, you use libraries to action the tests, but what robot framework brings is the consistent framework, the keyword engine and the assertions.

There are many many keyword libraries, pick any technology and simply google “robot framework ” and you’ll likely find a suitable library, I’ve been amazed at what I’ve found that way, people will ask about tech stacks I’ve never heard of but quite often a quick google and you find a library for it.

The other really valuable thing robot framework brings is the ability to combine multiple technologies into a single test, which is especially useful when testing integrated applications, the combination of so many libraries and the fact that the libraries can be combined in the same test are what I think makes robot framework more powerful than other test tools (I’ll admit I’m biased).

If you can’t find what you need by searching, post a question here in the forum or on slack, the community is pretty friendly and helpful.

Dave.