We are delighted to offer this special guest blog in collaboration with the Australian and New Zealand Testing Board (ANZTB), one of the ISTQB® Member Boards.
Automation is a hot topic, and within the iSQI professional development portfolio, we see significant demand for ISTQB® Certified Tester – Test Automation Engineer (CT-TAE), A4Q Certified Selenium Tester Foundation, and A4Q Foundation Level Tester For Appium.
In this blog, our guest authors explore testing bots and their role in test automation.
Continuous testing is the process of executing automated tests as part of the software delivery pipeline to obtain immediate feedback on the business risks associated with a software release candidate. When it comes to test automation, most organizations focus on test automation for continuous testing by automating the regression test cases.
It’s important to understand that when it comes to software testing, most of the activities performed by the testing team are going to be repetitive. Such is the nature of the job. At the end of the day, it all boils down to how many different inputs can be given to test and correlating them with the expected outputs. And while this process may seem menial for humans, a testing bot with intelligence is very well suited for this role.
In this blog, we will explore how automation can be used in other areas apart from test case automation and how to develop a testing bot according to your testing needs to get a higher return on investment (ROI) from automation.
Discover the repeatable tasks for automation according to your project needs by conducting brainstorming sessions with your testing team and prioritize the items to be automated. Develop and test the testing bot features one by one based according to priority.
The testing bot features would vary according to technology, applications, environment and databases used in your project. Below is a sample list of testing bot features which can be used to accelerate the manual testing:
Fig. 1 How a Testing BOT Works
Identify the technologies and programming languages to build the automation utilities. Powershell is one of the powerful tools which will help to achieve the outcome according to your custom needs. You can start developing a simple Command Line Interface (CLI) initially and later the solution can be built as a GUI based tool using Programming languages such as C Sharp or CLI interface. If artificial intelligence, machine learning, text to speech and voice recognition (based on Microsoft technologies) is enabled, then automation utilities can be converted as a testing bot which respond according to your needs.
“Text to speech” is very easy as any action outcome can be converted from text to speech. PowerShell is one of the technologies to enable/disable “Text to Speech”. When “Text to Speech” is disabled, the plain English text will be displayed in the CLI prompt of the testing bot Voice Activation can be achieved by enabling features like voice typing in Windows 11. Voice typing uses online speech recognition technologies to power its speech-to-text transcription service. You can build your own commands dictionary by training the speech recognition. These voice commands can trigger the test automation utilities based on the need.
Confusion handling can be designed with a testing bot as the human dialogues contain several paraphrases, sentiments, multifaceted nuance, or obscure words. If there is any disturbance in the background, then voice activation or listening mode can be disabled and the commands can be given through the CLI.
When your DOM elements lack sufficient colour contrast, the users might have a hard time reading your website. The testing bot is capable for performing accessibility testing, when the logic is added as per your organization or compliance needs.
Testing bots are anticipated to be in increased demand. Before launching the testing bot formally, create unit tests for bots, use assert to check for activities returned by a dialog turn against expected values, use assert to check the results returned by a dialog, create different types of data driven tests.
It is important for your testing team to be well-versed in how these testing bots can be used so they can utilise their full potential. The below are the benefits of testing bots:
Pushparajan Balasubramanian (PB) is working as a Test Lead at Dynamo Recruitment Limited and he is one of the board members for Australia and New Zealand Testing Board (ANZTB). PB is focused on delivering the highest quality to his stakeholders and he has decades of experience in the field of Software Quality Assurance, Test Automation, Business Process Automation, Performance and Security Testing, Product Modelling, Product Management, Fulfilment, Assurance, and Billing. PB specializes in testing-based content writing and mentors aspiring IT professionals who want to move their career into software testing.
.
Vignesh Kumar Balasubramanian is working as a Core Automation Manager at CCL and he is one of the associate board member for Australia and New Zealand Testing Board (ANZTB). He has testing experience in various technology domains Cloud Technologies, Mobile Computing Devices, REST API/ Webservices, Mobile Operating Systems, and Wireless technologies. Practicing different flavours of Agile Methodologies (Scrum, SAFe, DevOps) and implementing Agile Test Strategies, building self-organized testing teams. Focused on using automation tools and frameworks for continuous testing (both functional and non-functional) to provide early feedback in all test phases.