Home / Insights / QA and Software Testing
QA and Software Testing
AI in Software Testing: Evaluating Testing Agents against Your Existing Suite
AI can generate test cases, repair brittle locators, explore applications and prioritise regression runs — and it can also hide real failures. This playbook explains where AI helps in QA, the risks it introduces, and a controlled evaluation that compares AI-assisted testing with your existing suite on evidence, not demos.
TopicsQA and Software TestingAI Agents and AutomationArchitecture and Modernization
Key takeaways
- AI is useful in specific QA tasks: drafting test cases from requirements, suggesting data, repairing broken locators, exploring flows, summarising failures and selecting tests affected by a change.
- Each capability has a failure mode. Self-healing can mask real regressions, generated tests can assert the wrong thing and exploration can produce noise.
- Evaluate AI tools against your existing suite with seeded defects, real past bugs and maintenance effort over several releases — not with a vendor demo.
- Keep humans responsible for test intent, risk-based priorities and release decisions; let AI reduce repetitive work.
- Track flakiness explicitly. Google reported in 2016 that about 1.5% of test runs produced a flaky result and around 16% of tests showed some flakiness — AI that “heals” flakiness without explanation can make this worse.
On this page
- Why traditional automation struggles
- Where AI helps in testing
- Where AI testing goes wrong
- An AI-first QA operating model
- How to evaluate a testing agent against your existing suite
- A worked example of an evaluation
- Practical guardrails
- Integrating AI-assisted testing into CI/CD
- Metrics for an AI-assisted QA practice
- Skills and roles
- Frequently asked questions
- Sources and methodology
Most QA teams feel the same pressure: release cycles shorten, the product grows, and the test suite becomes harder to maintain. Automated UI tests break when a button moves, regression runs take hours, and testers spend more time fixing scripts than finding defects. AI testing tools promise to change that — self-healing tests, generated test cases, autonomous exploration and smart prioritisation.
Some of those promises hold in specific situations. Others shift problems rather than solve them. This playbook, written from a QA lead’s perspective, explains where AI genuinely helps, what can go wrong, and how to evaluate a tool against your existing suite before you trust it with release decisions.
Why traditional automation struggles
Script-based automation remains essential, but it has known weaknesses:
- Brittle locators. UI tests tied to element IDs, CSS paths or text break when the interface changes, even if the behaviour is correct.
- Maintenance load. As the suite grows, more time goes into repairing tests than writing new ones.
- Coverage blind spots. Scripts check what someone thought to check. Unusual paths, combinations and data stay untested.
- Slow feedback. Full regression runs on every change take too long, so teams batch changes and find problems later.
- Flakiness. Tests that pass and fail without code changes erode trust. In a widely cited 2016 post, Google reported that about 1.5% of all test runs showed a flaky result, almost 16% of tests had some level of flakiness, and about 84% of observed pass-to-fail transitions in post-submit testing involved a flaky test.
AI tools target these weaknesses. Understanding exactly which one a tool addresses helps you judge whether it fits.
Where AI helps in testing
| Capability | What it does | Where it helps most | Main risk |
|---|---|---|---|
| Test case drafting | Generates test ideas or cases from requirements, user stories or code | Early coverage for new features; edge-case brainstorming | Plausible but wrong expected results; duplicates |
| Test data generation | Produces realistic or boundary-value data | Forms, validation rules, large datasets | Unrealistic data, or real personal data leaking into test sets |
| Locator repair (“self-healing”) | Finds the intended element when a locator breaks | UI suites with frequent cosmetic changes | Silently clicking the wrong element and passing a broken flow |
| Exploratory agents | Navigate the application to find crashes, errors and dead ends | Smoke testing, finding unhandled states | Noise; repeated reports; hard-to-reproduce paths |
| Visual comparison | Detects visual differences between builds | Layout regressions across browsers and devices | False positives from dynamic content |
| Test impact analysis | Selects tests affected by a code change | Faster feedback on pull requests | Missing a test that should have run |
| Failure triage | Groups failures, summarises logs, suggests likely causes | Large suites with many failures per run | Confident but wrong root-cause suggestions |
| Natural-language test authoring | Converts plain-language steps into automated tests | Involving business testers in automation | Ambiguous steps produce ambiguous tests |
Capabilities vary by tool; verify each claim in your own environment.
Where AI testing goes wrong
The same features that save time can create new risks. Plan for them explicitly.
Self-healing that hides regressions
If a “Pay now” button disappears and the tool heals the test by clicking a different button, the suite stays green while checkout is broken. Require that every heal is logged, reviewed and either accepted as a legitimate change or rejected as a defect. Tests should fail when the intended element cannot be found with high confidence.
Generated tests that assert the wrong thing
A model can generate a test that checks the current behaviour rather than the required behaviour. If the code has a bug, the generated test may encode it. Generated tests must be reviewed against requirements, and expected results should come from specifications or business owners, not from observing the system.
Noise from exploration
Exploratory agents can report hundreds of findings, many duplicates or low value. Without triage rules, the team either ignores the output or wastes time. Define what counts as a reportable finding — crashes, unhandled errors, broken links, accessibility violations — and deduplicate automatically.
Masking flakiness
Automatic retries and healing can make flaky tests look stable while the underlying race condition or timing issue remains. Google’s own mitigation work illustrates the trade-off: retries and quarantine reduce noise but can mask real bugs. Track flakiness as a metric and fix causes.
Data and privacy
Tools that send application screens, logs or test data to external AI services may expose personal or confidential information. Check what leaves your environment, use synthetic or masked data, and confirm contractual terms.
An AI-first QA operating model
“AI-first QA” works best as a set of responsibilities, not a tool purchase:
| Responsibility | Owned by people | Assisted by AI |
|---|---|---|
| Test strategy and risk priorities | QA lead with product owner | Analysis of defect history and change frequency |
| Test intent and expected results | Testers and business owners | Drafting cases for review |
| Automation framework and standards | Test automation engineers | Code suggestions and locator repair proposals |
| Execution and environments | CI pipeline owners | Test selection and parallelisation |
| Failure analysis | Testers and developers | Clustering and log summaries |
| Release decision | QA lead and product owner | Risk summary of test results |
AI reduces repetitive work; accountability stays with named people.
How to evaluate a testing agent against your existing suite
Vendor demos run on applications chosen to look good. Your evaluation should run on your product, your suite and your release pace.
Step 1: Define what you want to improve
Pick one or two goals with a baseline: for example, “reduce weekly hours spent repairing UI tests” or “detect more defects before staging”. Avoid vague goals like “more AI”.
Step 2: Build an evaluation set
- Real past defects: reintroduce a sample of bugs from your history on a branch and see whether each approach detects them.
- Seeded defects: deliberately break behaviours — wrong totals, missing validation, broken navigation — in a controlled build.
- Cosmetic changes: change labels, layout and element IDs without changing behaviour, to measure false failures and healing accuracy.
- Known flaky tests: include them to see whether the tool explains or merely hides flakiness.
Step 3: Run both approaches in parallel
Run your existing suite and the AI-assisted approach against the same builds for several release cycles. Record results per defect and per change.
Step 4: Compare on evidence
| Metric | Existing suite | AI-assisted | Notes |
|---|---|---|---|
| Real defects detected (of those reintroduced) | — | — | Detection rate on your own bug history |
| Seeded defects detected | — | — | Include severity weighting |
| False failures on cosmetic changes | — | — | Lower is better |
| Incorrect heals (wrong element, passed broken flow) | Not applicable | — | Must be close to zero |
| Hours spent on maintenance per release | — | — | Include time reviewing AI suggestions |
| Feedback time per pull request | — | — | Median and 95th percentile |
| Cost per release (licences, compute, people) | — | — | Total, not just licence fees |
Template for a side-by-side evaluation. Fill in with your own measurements.
Step 5: Decide by risk area
You may adopt AI for some areas and not others — for example, visual comparison across devices and failure triage, but not self-healing on payment flows. That is a sound outcome.
A worked example of an evaluation
A product team with a 1,200-test UI suite ran a four-week evaluation of an AI-assisted tool. The figures are illustrative but representative of what such an evaluation reveals:
- Of 20 reintroduced historical defects, the existing suite caught 14; the AI-assisted setup caught 15, including one in an untested path found by exploration.
- Of 30 cosmetic changes, the existing suite failed on 11; the AI-assisted suite failed on 2 and healed the rest, but 2 of the heals clicked the wrong element. Those 2 incorrect heals would have hidden a real defect if the change had been behavioural.
- Maintenance time fell from about 14 hours to about 6 hours per release, but reviewing heal suggestions added about 2 hours.
The team adopted locator repair with mandatory review for non-critical flows, kept strict locators for checkout and payments, and used AI failure triage across the whole suite.
Practical guardrails
- No silent changes. Every AI-generated test, heal or skipped test is logged and visible in review.
- Critical paths stay deterministic. Payments, authentication, permissions and data deletion use explicit, reviewed tests.
- Expected results come from requirements. Not from the current behaviour of the system.
- Flakiness is measured. Track flaky rate per test and fix root causes.
- Data is synthetic or masked. No production personal data in prompts or screenshots sent to external services.
- Results feed release decisions, not replace them. The QA lead signs off with a risk summary.
Integrating AI-assisted testing into CI/CD
AI tools add value only when they fit the delivery pipeline. A practical integration looks like this:
| Pipeline stage | AI-assisted activity | Guardrail |
|---|---|---|
| Pull request | Test impact analysis selects affected tests; AI suggests missing test cases for changed code | Full suite still runs on merge or nightly; suggestions require review |
| Merge to main | Full regression with visual comparison; failure clustering | Critical-path tests use strict locators, no healing |
| Nightly | Exploratory agent runs against staging; flaky test analysis | Findings deduplicated and triaged before reaching the backlog |
| Pre-release | Risk summary combining test results, coverage changes and open defects | QA lead reviews and signs off |
| Post-release | Production error and session analysis to suggest new regression tests | New tests reviewed against requirements |
Adjust stages to your pipeline; the principle is that AI accelerates feedback while decisions stay reviewable.
Metrics for an AI-assisted QA practice
Track a small set of metrics before and after adoption so you can show value and catch problems early:
- Escaped defects: defects found in production per release, by severity.
- Detection before staging: share of defects caught in pull requests or nightly runs.
- Maintenance effort: hours per release spent repairing tests, including review of AI suggestions.
- Flaky rate: share of test runs with inconsistent results, per test and overall.
- Incorrect heals: heals later found to have hidden a real problem. Treat any occurrence as an incident to analyse.
- Feedback time: time from pull request to test result.
- Exploration yield: share of exploratory findings that led to fixes.
Skills and roles
AI changes QA roles rather than removing them. Testers spend less time writing repetitive scripts and more time on risk analysis, exploratory testing, reviewing AI output and improving test design. Automation engineers spend more time on frameworks, test data, environments and integrating AI tools into CI. Product owners and business testers can contribute more directly through natural-language test descriptions — provided someone reviews the resulting automation.
Frequently asked questions
Will AI testing tools replace manual testing?
No. They reduce repetitive work, but exploratory testing, usability judgement, risk analysis and accountability for release quality still need people.
Is self-healing safe?
It can be, with logging, review and strict rules for critical flows. Unreviewed self-healing is risky because it can turn a real defect into a passing test.
How long should an evaluation run?
Long enough to cover several releases and the types of change your product sees — typically four to eight weeks.
Should we start with a commercial tool or build our own?
Start by defining the problem and evaluation. Many teams combine existing frameworks with AI assistance for specific tasks rather than replacing their stack.
Sources and methodology
Facts in this article were checked against the sources below on 6 November 2026. Directory data (ratings, review counts, rate bands and team sizes) changes over time and is shown as published on the date accessed. Illustrative examples are labelled as such and are not quotes.
- Google Testing Blog (John Micco, 27 May 2016): Flaky Tests at Google and How We Mitigate Them — accessed 6 November 2026. About 1.5% of test runs flaky; almost 16% of tests with some flakiness; about 84% of pass-to-fail transitions involving a flaky test; mitigations and their trade-offs
Related reading
Continue your research
Considering AI for your testing?
Tell us about your product, current test suite and release pace. We will help you design a pilot that measures real defect detection and maintenance effort.
