Even though TestProject is already an excellent out-of-the-shelf tool to create UI and Mobile automation tests, there is one way to improve your interaction with it and save some time scripting to get things done in particular scenarios: The TestProject Addons library! 🧩
The Addons library is where the genius of the community lies in the form of pieces of functionality, actions, that help with one specific conundrum. Test Engineers from all around the world have been contributing to this library providing actions for things like:
- Making RESTful requests
- Retrieving data from JSON (even complex) structures.
- Writing and reading from CSV files.
Two birds, one stone
The TestProject Addons gives the community two things: For the Test Engineers or general code lovers, it provides the possibility of creating, via programming, addons that will help others in their testing tasks. In case you want to know what Addons the community is asking for to be implemented, you can always refer to the Feature and Improvement Request forum.
On the other hand, for those who don’t want to get involved in programming and just want a framework that provides a codeless experience to help them automate their tests, this gives a whole community of experts building a growing library of solutions for the common test automation scenarios to enhance the framework even further.
So, now that you know of the incredible potential of using Addons built by experts, let me run you through two of my favorites 💗
Natural Language Processing Engine
On top of actions for relatively common scenarios like the ones I’ve mentioned above, we have Addons for more experimental and cool stuff too! One, in particular, got my interest as soon as I saw the post from the author Paul Grossman: Natural Language Processing Engine. It does exactly what it says: Converting plain English into steps for a test. Similar to what we do for BDD with Selenium and Cucumber, but with the implementation cooked in already! That is, in my opinion, amazing 🌟
You can install this Addon from here and start using it immediately. Once installed, you just have to select “Run NLP Command” and then provide a sentence.
This sentence consists in, generally, the following structure: [Verb] [Element Name] [Class] [Verify] [Data].
So, for example, we can write steps like:
“Click Login Button”.
“Enter in the Name Field The Free Range Tester”
“Select Argentina from Country List”
“Verify the Name Field Contains The Free Range Tester”
Write it your way! ✍
The parsing works in a way that, if you want to make more verbose steps, it will take care the same way. And not only that… if no class is provisioned, for example, there will be some deductive reasoning made by the framework to do the action on the right element. Following the examples above, we could be writing:
And the framework will know that a button named Login should be the target of this action, so it will search for the element knowing that.
The framework supports the following list of verbs:
Open – any URL.
Hover – over a named Button, Link, Tab or Field.
Click – a named Button, Link, Tab, Field, Image, RadioButton or Checkbox.
Select – a named Item from a named List.
Enter – Text into a Field Clear – a named Checkbox.
Type – Types text at current element and Esc, PgUp, PgDn, Up, Down keys at browser.
Wait – Pauses execution for a stated amount of seconds.
Wait For – Waits up to 9 seconds for a text element to appear.
Verify – any named element.
Tips and tricks for this Addon ✅
There are some tricks also that will make its use even easier. For example, if we follow an action with a Type sentence, it will type the text in the current element. For example:
Click on the Username Field.
This will automatically write the text without the need of specifying the text field element.
Another trick is to use it for negative testing with the Verify keyword. Just by saying “Verify ‘TheFreeRangeTester’ does not exist/is not enabled/etc” will take care of our negative tests!
Better to try it first-hand! 👨💻
This is one of those Addons I encourage you to try out and see the capabilities it has. Not only for helping in any BDD environment, but also to help testers with no desire of getting too technical when creating automated tests with TestProject achieve amazing things using it!
This next one is pure gold as well. Kind of self-explanatory on its name, this Android Monkey Addon does exactly what it promises: Testing by pure brute force, randomly, an Android application. But… what am I referring to when saying “testing randomly”? Well, this Addon will require just ONE step (yes, that’s right, ONE!) to call the action of Monkey Testing 🐵 Then, it will start performing, based on the arguments we passed on the step, random actions on the target app.
Clicking on links, touching buttons, multi-gesture actions, putting stress on the system and more will be performed based on the seed we provide, the number of events we want to happen, the percentage of touch gestures we want, delay in between the actions, pinch zoom, home button events and covering a wide range of combinations.
Ideal for that pre-production peace of mind.
This is, in my opinion, ideal for when you already executed your smoke, regression suites and want to throw an ad-hoc session of virtual monkeys to test your application. Some hidden bugs, coming from tricky combinations of actions that weren’t covered with the tests created because of the low risk will come to light by using this Addon. The beauty of it is that it’s already built, ready to use and no extra work has to be done to get this extra testing on your application covering your back!
Just download the Addon from here and then create a one step test using it. You can pass the arguments or just leave it as it comes by default. The magic will happen!
Conclusion: The TestProject Addons portal as a Test Engineer hive mind
The TestProject Addons portal offers an incredible range of custom actions to perform the most known issues anyone automating finds. They also expand on the base functionality (special mention to the CSV reader and RESTful API actions!) that this amazing framework provides! The best part? All of it is free to use! So get hands-on, try out some Addons and make your tests shine with the amazing work from other Test Engineers and developers around the world, harnessing the true power of the TestProject community! 💪
📚 Here you can read more about Addons:
- The World’s Largest Free Test Automation Library
- Top 5 Trending Test Automation Actions
- Addons Workshop video recording