The Virtuoso Platform – Power Meets Ease

By

Rahul Parwal

,

Guest Author

2022-07-18

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!

Platform Overview

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
Graphical user interface, applicationDescription automatically generated

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:

  • Testers / Test Analysts
  • Test Engineers / SDETs
  • Developers who are also responsible for testing
  • Business Analysts
  • Product Owners / Software Managers / Engineering Managers

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:

  • SAP
  • Salesforce
  • Oracle
  • Servicenow
  • Workday
  • 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:

  1. Run tests along with your live authoring. If something does not work, you will see it immediately.
  2. As you author tests, you can also fix elements.
  3. After authoring all the steps, you can be certain that your journeys would work.
  4. 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.

  1. 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.
  1. 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.
Graphical user interface, text, application, emailDescription automatically generated
  1. Dynamic Waits: The element can be waited for until it exists or is in a specific state.
  2. 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.
  3. 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 Virtuoso here.
  4. 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.
  5. 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. 
  6. 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.
TableDescription automatically generated

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.

Tags

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.

Download eBook

Subscribe to our Newsletter