Many times you can hear a claim that a tool or a technology is so easy and simple to use that everyone can do it – and Robot Framework fits perfectly to this description. If this is the case, why aren’t all testers using it already to gain all the speeding up effects for regression testing and freeing up the time to do the more interesting exploratory testing? Why are there so many test automation projects that end up in a maintenance nightmare?
Probably because “everyone” are assumed to have a certain level of testing experience and architectural and developmental knowledge to work on test automation or process automation. But in real life, the user base is more heterogeneous than this.
Listening to the talks in Robocon 2019 it became clear to me that the user base of Robot Framework is expanding rapidly. Therefore, it’s important to pay close attention to the easiness of the installation of Robot Framework. Moreover, users need support to make wise architectural choices towards good maintainability of automation. Let’s have a look at what Robocon 2019 speakers offered to this challenge!
Robot-Framework gaining larger audiences and new challenges
One of the most interesting presentations at Robocon 2019 was about a study (2017) made on perceptions towards test tools and especially Robot Framework. The study gives us vital information on how to improve Robot Framework and the surrounding ecosystem to fit user needs best.
Why are there so many test automation projects that end up in a maintenance nightmare?
One of the researchers from Oulu University, Päivi Raulama-Jurvanen, suggested that Robot Framework can be seen as strong in the majority of the measured aspects: it’s free of charge, versatile and has a good cross-platform support. All these aspects make it a very appealing tool to be use by test automators. The major weaknesses of Robot Framework were the difficulty of deployment and the need for a certain amount of programming skills, both limiting the user base. Also, the ability/possibility to build weak user-defined libraries affected negatively on how the tool was evaluated. Luckily, two of these factors are already under development by the Robot Framework community.
First, Robot Framework approachability and inclusiveness are now more carefully thought and developed with a larger audience in mind. Pekka Klärck (lead developer of Robot Framework) announced in his Robocon speech that the future plan is in fact to make the installations easier – schedule depending naturally on funding. The community can also enjoy the work of active users developing the tools around Robot Framework. For example, as the charming Jupyter team Asko Soukka and Nicholas Bollweg do, by creating new ways for authoring tests (if this sounds interesting, take a look at their Jupyter Kernel here).
The other way of getting more people into Robot Framework world is to create easy-to-follow paths for people with different backgrounds. Luckily there are people willing to share their knowledge. Some examples of places where one can learn from others are: Robot Framework Slack channel, Stackoverflow.com support site, Robot Framework master classes (Ismo Aro) and Mimmit Koodaa -beginner’s courses. All these are valuable in making our field more approachable to people with different backgrounds.
However, I think there is still much to do in terms of making the tool more mature for wider audiences. For future, I’d love to see a more thorough user guidance with good practices to use Robot Framework wisely. Especially these topics would interest me: maintainability of libraries and naming conventions that create readable information for people in different roles from developers to business stakeholders. Also, providing guidance for the evolving automators is equally important.
However, I think there is still much to do in terms of making the tool more mature for wider audiences.
One of the Robocon 2019 speakers, Juho Saarinen, had newcomers in mind. As his tips for evolving users were passed by quite fast, I present them here again:
1. Why is more beneficial than how – Usually solving issues answer to the question ‘how’. Utilizing these solutions in other places is quite hard, unless it’s understood why that kind of solution was (or wasn’t) used.
2. Work in cross-functional teams – When working with different professions, the view of the system broadens and “why” gets more levels (from both technical and business side)
3. Usually it’s faster to try something than to find info about it – a nice thing with IT is that trying is cheap (if not talking about expensive commercial licensed applications)
4. Keep up your skills – Skills tend to be forgotten unless used. If skills are kept up only during working hours, some whys easily get replaced by ‘this is how things are always done.
To the end, let’s go back to the question, is Robot Framework – a fit-for-all tool? Well, in my opinion, yes and no. Its capabilities are a double-edged sword. One edge is that it’s incredibly friendly with new people and it can be used in so many ways. Its capabilities grow along with the automator’s tech skills. This kind of freedom is certainly a part of its appeal. On the other hand, so many pitfalls could be avoided if there were more user centric guidance to follow in the form of courses, good practices and premeditated scenarios. Not all of us are frontiersmen, majority wants to follow ready-made paths!
I’m sure that with the help of our incredibly active Robot Framework community, the tool and its ecosystem keep on improving in giving less experienced people the means to succeed in their endeavours!
In the end I’d like to thank all the companies and active individuals who are contributing to the development of the tool and it’s supporting networks, which are just as important as the tool itself!