As new tools enter the market at an exponential rate, it can be difficult to identify the right tool for your needs. If you search well on the internet for testing tools, you will find a variety of options available for a variety of tasks. There is, however, a challenge with many tools regarding simplicity, usability, and ease of use. While most easy-looking tools fail miserably at simple tasks, most tools for simple tasks are not easy to use.
In this blog, I will describe an automation platform that I have played around with from time to time in the last year, and which has not yet disappointed me due to its simplicity, usability, and ease of use. You guessed it! We will discuss Virtuoso - Where power meets ease!
Virtuoso is a simple and codeless test automation solution that works with natural languages, such as English. It supports authoring automation of back- and front-end user journeys using plain natural language. It also reduces (read 'removes' in most cases) the hassle of looking up UI selectors/locators or having to write your own selectors.
It supports authoring and automated execution of journey flows for:
Functional UI Tests – Ex: Log in to an application and landing on the home page
E2E UI Tests – Ex: Sign up to purchase on an e-commerce website
Integration Tests – You can also call API requests from within your UI journey steps to perform upstream and downstream validations. Ex: Making a transaction and verifying its details from the API call
The key benefits that Virtuoso offers are:
High speed of test authoring
Low cost of authoring and maintenance
Increased efficiency since the platform does most of your background and housekeeping work
Improved quality because you can invest your saved time in exploring risks, creating prototypes, and performing exploratory testing
Virtuoso supports testing for:
Front-end UI of websites and web-based applications
Browser-based business apps
Low code business applications
A lot of users could benefit from this tool, especially those in the following roles:
Additionally, it can be used to automate web-based business systems, which are usually difficult to automate using traditional and open-source web automation tools. Some of the supported business platforms are:
Adobe AEM, etc.
Live Authoring of Tests
We briefly discussed the premium and fast test authoring that Virtuoso provides, and you may wonder what makes their test authoring experience so special and fast. Prior to using the platform, I had the same question. Nevertheless, once I began using the platform, I realized that the Live Authoring Feature provided by Virtuoso is really helpful for authoring tests.
With the Live Authoring Feature, you can:
Run tests along with your live authoring. If something does not work, you will see it immediately.
As you author tests, you can also fix elements.
After authoring all the steps, you can be certain that your journeys would work.
Also, you can access Chrome Dev Tools (Advanced Options) with DOM Elements, Network, Console Logs, etc. This capability lets you investigate issues on your local machine as if you were doing experiential testing on that machine.
Key Features of Virtuoso Platform:
There are many engaging features on the Virtuoso platform, but here I want to highlight some of its key features. For a comprehensive overview of the Virtuoso platform, I strongly recommend checking the product documentation or tutorial or booking a demo with the Virtuoso team.
Authoring using NLP (Natural Language Programming): One of the key aspects of the Virtuoso automation platform is that it supports authoring using plain natural language, “English”. It isn't necessary for testers to get their hands dirty with the various automation library commands or programming constructs for doing basic, simple, and regular automation tasks like clicking, entering data, moving buttons, hovering over icons, or sending API requests.
Re-Usability via Checkpoints (Methods): In any automation solution, you will have some business logic that would be common in various user flows/journeys. Ex: Log in to the application. A common anti-pattern is to write the same steps in multiple tests. Eventually, this causes maintenance overhead. As with any programmable test automation solution, Virtuoso lets you define checkpoints that can be reused just like methods.
Dynamic Waits: The element can be waited for until it exists or is in a specific state.
Handling Similar Elements: It supports dealing with multiple similar elements on the screen and interacting with specific elements. With this feature, you can interact easily with web tables, an array of cards, elements, etc.
Strong Assertion Library: Assertions are the heart of any test solution. If the assertions are not good and strong, then the tests can never be good. Virtuoso provides a strong assertion library with a lot of options and customizations. Check out the detailed Assertion Options available in Virtuosohere.
Customizable Selector Options: Since Virtuoso employs natural language, you can customize and specify selectors/locators based on: a. Action Type: To specify if the element is clickable, readable, or writable. b. Element Type: To specify if the element is a button, input, link, image, etc. c. Position on Screen: To specify if the element exists in the center, right, left, top, bottom, etc.
Support for Test Data: The ability to test a diverse range of data flows in the context of a specific user journey is one of the key aspect of testing. a. The Virtuoso data tables feature allows you to define the test data. b. Additionally, you can import test data from your local system using the CSV file import feature.
Support for including API requests within UI journeys: Virtuoso is still not a full-fledged API Testing solution. However, if you wish to execute API requests to fetch some data or assert some downstream flow, that's easily possible with Virtuoso.
If you are a visual reader, I have summarized this entire article in the form of this mind map too.
Thank you for reading this article. If this interests you and you want to check out this platform in-depth, book a demo with the Virtuoso team and experience it yourself.
No items found.
Building Test Automation for True Shift Left
How to shift your testing left and build web automation that keeps up with your development.