•
Drizz raises $2.7M in seed funding •
•
Featured on Forbes
•
Drizz raises $2.7M in seed funding •
•
Featured on Forbes

Three things to know before reading:
There's a stat that gets repeated often: roughly 60% of test automation initiatives fail to meet expectations. That number comes from industry surveys across companies of all sizes, and it tracks with what most QA leads have seen firsthand.
But reason isn't "they picked wrong tool." The Capgemini World Quality Report 2024-25 found that 57% of organizations cite a lack of comprehensive test automation strategy as their top barrier to advancing automation. The tool works fine. The problem is what happens around it:
This is why understanding benefits of test automation without understanding failure modes is dangerous. Teams invest expecting faster releases and fewer bugs. They get faster releases for three months, then watch suite degrade until CI is red more often than green.
The first instinct is to automate everything. Start with login, then registration, then homepage, then settings. Teams work down a list of screens rather than a list of business risks.
This fails because not all tests have equal value. A flaky test on a settings page that nobody visits daily costs same maintenance time as a flaky test on checkout, but checkout is one that blocks revenue. When you automate 200 tests without ranking them by business impact, you end up maintaining 200 tests but only 30 of them actually catch regressions that matter.
The fix is to start with flows that, if broken, would cause most damage. For most apps, that's:
Automate those first, stabilize them, and then expand. You can write test cases for everything else, but keep them manual until core suite is running clean. This applies whether you're running Selenium, Cypress, Playwright, or any mobile framework.
This is most common reason why test automation fails after initial setup period. Every selector-based framework, whether it uses XPaths, CSS selectors, accessibility IDs, or resource IDs, ties test to internal structure of UI. When a developer renames a button ID, moves a div, or swaps a component library, test breaks. The app works fine. The user sees no difference. But test fails.
A BrowserStack press release from November 2025 reported that teams spend an average of 15 minutes fixing each broken locator, with some organizations losing up to half their QA time to test maintenance instead of building new features.
On a suite with 300 tests, even a 5% breakage rate per sprint means 15 broken tests. That's nearly 4 hours of triage and repair, every two weeks, producing zero new coverage. Multiply that by a year and cost is clear. A QA engineer making $120,000 annually who spends 30% of their time fixing selectors is burning $36,000 per year on maintenance that doesn't find a single bug.
The fix depends on how deep you want to go:
Flaky tests are tests that pass and fail on same code without any real change. Common causes include:
The Google Testing Blog (John Micco) reported that 84% of pass-to-fail transitions in their CI system involved a flaky test, not a real regression. At their scale, with a 1.5% flake rate across a project with 1,000 tests, roughly 15 tests show red in any given cycle. Each one demands investigation.
The damage goes beyond wasted time. When suite is flaky, developers stop trusting it. They merge code with red pipelines because "it's probably just flaky." At that point, automated regression testing stops being a safety net and becomes noise that everyone ignores.
The fix has two parts:
If your framework doesn't support auto-wait natively (Selenium doesn't), you'll write and maintain retry wrappers yourself. That's more code to maintain. Frameworks like Cypress and Playwright handle this better out of box.
This is economics problem that sinks most automation efforts over time. Every new test you add creates an ongoing maintenance liability. But bug-finding value of each additional test drops as you cover more of core flows.
The Capgemini World Quality Report has consistently found that up to 50% of automation budgets get consumed by script maintenance. That's money spent keeping existing tests alive, not expanding coverage or finding new bugs. The pattern is consistent across industries and team sizes: senior engineers, who are only ones with enough context to triage complex failures, end up spending their most expensive hours on upkeep.
The result is a team that looks busy but isn't expanding coverage. New features ship without tests because "we didn't have time." The suite grows, but ratio of value to cost gets worse every quarter.
The fix is to treat tests like code with a carrying cost:
Teams that ship both a web app and a mobile app often try to use same framework for both. Selenium handles web side, and Appium (which uses WebDriver protocol) handles mobile. In theory, skill set transfers. In practice, Appium introduces a second set of problems:
Mobile apps are harder to automate than web apps. The UI is more dynamic, screens load asynchronously, and popups (permission dialogs, app update prompts, system alerts) appear unpredictably. Selector-based mobile testing has all same problems as web testing, plus these on top.
If your product is mobile-first and you're wondering why test automation fails despite having "full coverage," framework might be root cause. A 200-test Appium suite that breaks 10% of time per sprint isn't a coverage win. It's a maintenance liability.
Drizz is built for Android, iOS, and mobile web testing. It uses Vision AI instead of selectors: engine reads screen way a human does, finding elements by what they look like and what text they display, not by DOM paths or resource IDs.
A Drizz test reads like this:
Tap on "Add to Cart"
Scroll down until "Proceed to Pay"
Type "2" in quantity field
Validate "Order Confirmed" is visible
Each line is a plain English command. There are no XPaths, no CSS selectors, and no accessibility IDs to maintain. When a developer renames a button's internal ID or restructures layout, test still passes because button still looks same to Vision AI.
This directly addresses problems 2 and 4 from this blog. The selector breakage problem disappears because there are no selectors. The linear maintenance scaling slows down because tests don't break from UI refactors.
Drizz also handles mobile-specific flake sources that trip up Appium:
For teams that have felt maintenance cost of Appium suites firsthand, Drizz consolidates mobile testing into a single tool that doesn't require selector management or framework-level code.
The main causes are selector breakage, flaky tests, poor test prioritization, and maintenance costs that outgrow coverage value.
Industry data shows 50 to 70% of QA budgets go to maintaining existing tests rather than writing new ones.
Not entirely, but quarantining, state isolation, and auto-wait mechanisms reduce flake rates to manageable levels.
Yes, when scoped correctly. Automating high-value flows first and controlling maintenance costs makes ROI positive.
Automating every test case without ranking by business risk. Low-value tests cost same to maintain as high-value ones.
They find elements visually instead of by DOM path, so UI refactors that change internal IDs don't break tests.