Exploratory testing for UAT – SD Times
Advertisement: Click here to learn how to Generate Art From Text
A survey of DevOps team members found that the vast majority only have the resources to perform manual testing. They lack the skills required for full automation. The majority of companies do not conduct a formal user acceptance test (UAT). Instead, business users perform informal manual tests. This article provides challenges and solutions to UAT. However, they can also be applied to companies that conduct informal manual testing.
Manual testing can be a painful process for many reasons.
- Users must be trained to use the new functionality before testing
- Limited availability of Business Users
- Defect reporting
- No test automation created
Let’s dig in a little to each of these and then take a look at how a new type of testing tool and Gen AI can address these issues.
Training – Users may understand their current processes, but must be trained on how the new process will work before they test them. The business analysts who design the updates often don’t have the resources needed to create the documentation and fully educate the testers before they begin.
Limited Availability – The business doesn’t have time for all users to test every new feature in a release. It is important to assign individuals to different features with enough clarity as to what they should test. A proper UAT will require a test plan that is specific to each manual tester. This ensures that all new features will be covered by users who are likely to use them in their daily work.
Reporting Defects –Developers need to know the exact steps taken and values entered in each step, to duplicate a problem and determine if it’s a bug. Users tend to forget the steps taken and the values entered by users, especially when multiple screens and steps are involved. Developers also expect that bugs will be reported within the applications they use to track bugs. Business users generally don’t know these tools. The team conducting the UAT often creates a shared sheet for users to log issues or sets up an email alias, or slack channel, to report issues. This is also problematic, as it is easy for users not to provide the information that developers need to duplicate and fix the issue.
No automated tests – When UAT is complete the product is tested, but there are no automation scripts as a result. The next round of testing is also going to be manual.
What if, with minimal effort, you could automate your regression suites by adding automated tests to your manual testing?
Exploratory Testing is a method based on Explore the world with usAll aspects of a feature. Most development teams are only concerned with testing the “Happy Path”If you can demonstrate that it works for a simple case, then it’s done. If you can demonstrate that it works for a simple case, then it’s done, right?
Subject matter experts (SMEs), who are subject matter experts, know how to explore the many different paths a user could take to complete a task. They use boundary values, such as dates in the past to simulate a future date. Unfortunately, the SMEs typically can’t write scripts even if they did have the time.
Many modern testing software tools allow you to record a click stream. These are used to replace scripting and are most often used by people who are intentionally writing a test. The test writer has a process in mind and records the clicks and values rather than writing Selenium. This works if you have a clear idea of what you’re trying to achieve. Unfortunately, the people who use these tools are not SMEs.
Many recording groups in the music industry tape their jam sessions. Often a musician plays a guitar lick and the other band members say “Man that was great! Play it again.” Unfortunately the musician cannot remember what they just played. The recording engineer replays the tape, and there it was. Many of the most iconic guitar riffs of classic rock were recorded by accident during rehearsals and then included in the final versions of songs.
Like that, a new breed of exploratory test tools. They are optimized to capture exploratory tests like a tape recording studio. When a defect is found the tester can “rewind” the tape to the beginning of the sequence and highlight the steps that led to the defect. An exploratory testing tool can generate screenshots and video of the highlighted steps. These can then be uploaded into the bug-tracking software through an integration. The tester doesn’t even have to know how to use the bug tracking tool or have an account. They can annotate screens by simply drawing on them using their mouse, and add notes so that it is clear what was expected.
After this defect report is logged in, the exploratory tool can generate a test that will verify the fix once it has been made. This test can then be sent to the developer in order to verify the fix. It can also be sent to the QA department for inclusion into the regression suites.
Generative AI is also a good option. AI tools can generate the documentation required to document the new feature. AI tools can create a script for a feature’s happy path and a video that shows the new feature in detail. These materials may not be of production quality, but they are 90% there and in general much better than the materials that business users receive today.