Teams whose service runs but who cannot fully explain the code among themselves
Requirements are reconstructed backwards from the screens, and every point where the specification and the implementation diverge arrives as a list.
A QA service that finds the missing requirements, exception paths, and regression scope left inside quickly generated code and settles them before release.
01Overview
AI-Built App Testing takes a service developed with generative tooling and checks the requirements it left out, the exception flows it skipped, and the regression scope a change reaches. AI builds the feature it was asked for quickly, but it takes no responsibility for the conditions and the exceptions nobody stated. When the people who produced the code cannot explain all of it, the review separates what has been verified from what has not.
02Who it fits
Requirements are reconstructed backwards from the screens, and every point where the specification and the implementation diverge arrives as a list.
Critical flows and exception paths are executed before acceptance, and whatever is missing is written down.
How far one fix reaches into permissions, payments, and data is traced, which narrows what has to be checked again.
03What we deliver
01
The rules actually implemented are read back out of the remaining screens and code, then matched against what was intended. Even a product with no documentation gains a basis for saying what is missing.
02
The work goes past the happy path into empty input, missing permissions, and failing external calls. These are the places generative tooling leaves blank most often.
03
Which features a single fix touches is identified, and that sets what has to be checked again. The scope safe to deploy narrows without re-examining everything.
How the service works
Reconstruct requirements from behavior and exercise exceptions in input, permissions and external calls.
04Why this way
Each point lists the deliverable that backs it.
We built an AI character chat service with generative tooling ourselves, shipped it, and connected payments to it. Where requirements leak and which exceptions stay empty is not something first met in someone else's code, but something met while building.
Backed by
Client work · Artist platform
Artist platform, company A — reverse-engineering undocumented code, then verifying all of it
We reverse-engineered the code to recover the requirements, then verified every function against what we recovered.
Learn moreCode quality is not graded. What was executed and confirmed, and what could not be covered, are recorded scenario by scenario, and the pass criteria are agreed before work begins. Code written by a tool and code written by a person are held to the same standard.
Backed by
Client work · Travel product management
Travel product management, company M — collector load and data consistency
We put load on the collector to find where it gives way, and checked consistency between the database and what the collector returned.
Learn more05How to start
Every stage ends with an agreed scope and a deliverable in your hands.
Step 01
We review product flows and the release calendar together and name the highest-impact failure points within five business days of kickoff.
DeliverableRisk map and validation priorities
Step 02
We link requirements, tests, defects, and the release decision in one traceability sheet and fix the acceptance criteria within two weeks of delivery starts.
DeliverableTest strategy and acceptance criteria
Step 03
We run validation against the agreed criteria and report defects and residual risk weekly in one fixed format.
DeliverableExecution report and defect log
Step 04
We hand test assets and working practices to the internal team and stay available for questions for four weeks afterwards.
DeliverableReusable test assets and a handover guide
06Contract options
07Service levels
5business days
Risk map fixed after kickoff
Weekly
Defect and residual-risk report
4weeks
Questions answered after handover
A chatbot answering legal questions ran on an LLM, and there was no standard for telling whether its answers were right before release.
What we doWe agreed on accuracy, hallucination, and source consistency as the criteria, then built and ran some 300 legal query scenarios grouped by type.
What it leavesAccuracy by query type and the places hallucinations appear went on one list, and that list carried the release decision and the order of fixes.
The development work we inherited had no documentation, only code.
What we doWe reverse-engineered the code to recover the requirements, then verified every function against what we recovered.
What it leavesWhat the product does, and how, went into documentation, and the point top-up and management feature was built on top of it.
About 1,900 travel products were being maintained by hand, one spreadsheet row at a time.
What we doWe put load on the collector to find where it gives way, and checked consistency between the database and what the collector returned.
What it leavesThe failures we found were in the data, not the features, and product-change handling now runs on its own on top of that.
A no-code test automation tool was heading for its Japanese launch and needed a team to own the localization verification.
What we doWe built and ran some 1,000 Japanese verification cases, hunting the places where wording and behavior diverge.
What it leavesSome 150 localization defects were caught before launch over seven months, and the verification cases remain as an asset for the next version.
An iOS and Android app heading for release needed its security checked from a position independent of the builders.
What we doWe verified the app and its servers together against some 70 security check items, reporting defects with severity and reproduction steps.
What it leavesSome 20 defects were found across the app and servers, and every one was confirmed fixed before release.
Features built quickly with AI were connected to service operations. Development, deployment, and payments were kept in the same handover scope, and the exception conditions of transactions were handled together.
The code ran, but the conditions of running a training program had to be confirmed separately. We verified the enrollment, progress, and completion flows and the capacity and permission exceptions by executing them.
09FAQ
The code is not read to grade its quality; it is executed to confirm its behavior. Code from generative tooling is often sound in syntax and structure while a condition is simply absent, so reading it does not surface the gap and walking the exception path does.
We divide ownership first: what the in-house team keeps and what we take over is written down, while defect severity criteria and the reporting format stay unified so the release decision rests on one set of evidence.
Yes. We weigh run frequency against maintenance cost and automate the highest-priority journeys first, replacing volatile screen areas with API-level checks or leaving them to manual validation.
You receive the deliverable listed for each stage exactly as it is. Reports come as a document plus the underlying data, and test cases and automation scripts are handed over together with repository access.
Remote delivery is the default, and on-site work is also available. If the test environment is accessible only from your internal network, we first define account access and data-export restrictions, then agree on on-site staffing and duration.
We report defects and remaining risks weekly in a consistent format. Each defect includes severity and reproduction conditions, alongside release readiness, so approvers can decide from the same evidence.
We share the findings from the first stage, then agree scope and schedule on that basis before delivery. A finished request for proposal is not required: the current environment and the outcome you want are enough to start.
2026-09-26 · 17 min read
Review AI-generated test cases first for the evidence behind the requirement, controlled conditions, observable results, and criteria for failure.
2026-08-28 · 16 min read
Sorts authentication, authorization, data, payments, external APIs, secrets, and operational risk by failure impact across twelve areas, and says how deep each must be verified before release.
2026-09-26 · 19 min read
To turn a production error into a regression test, extract the conditions needed to reproduce it, define expected behavior, and verify that the faulty version violates that expectation while the fixed version satisfies it.
12Related resources
Guides and checklists you can use during review and kickoff.
See all resources2026.09.04
Six groups of checks to walk through yourself before shipping an app built with generative tools.
Contact
Tell us your current environment and target outcome, and our team will review it and reply.
Direct line
Phone lines are open weekdays 09:00–18:00
ServiceAI-Built App Testing
Collection and use of personal information
You may decline; the inquiry cannot be submitted without consent.
More ways to explore