Inspiration
Traditional QA automation depends heavily on predefined test cases, selectors, and manually maintained workflows. This makes testing difficult when applications change frequently or when QA teams need to explore unfamiliar systems. We wanted to build an AI QA engineer that can understand an application and autonomously decide what to test.
What it does
GemmaQA is an autonomous AI QA platform that explores web applications, understands their structure, discovers entities, workflows, and dependencies, generates testing scenarios, and executes end-to-end tests through a real browser.
It uses Gemini to reason about the application and make testing decisions. Playwright performs browser interactions, while the platform continuously observes the application and adapts its next actions. It can handle workflows such as creating, editing, validating, and deleting records, while respecting destructive-action safety controls.
GemmaQA also maintains persistent QA knowledge in Google Cloud Firestore, allowing discovered domain knowledge, run history, and strategic decisions to be stored for future testing.
How we built it
The system combines a FastAPI backend, React frontend, Playwright browser automation, Gemini, Google ADK, and Google Cloud Firestore.
The core QA engine follows an autonomous pipeline: application perception → entity discovery → actor discovery → workflow discovery → dependency discovery → knowledge graph → goal generation → scenario planning → QA strategy → investigation → browser execution.
Google ADK is used for strategic orchestration with an LLM-based agent, while Gemini provides the reasoning capability. Firestore provides persistent storage for QA knowledge and strategic decisions.
Challenges we ran into
The biggest challenge was making the agent reliable enough to operate an unfamiliar application without relying on hard-coded workflows. The agent had to distinguish page-level controls from data collections, recover from unexpected application states, identify the correct records after edits, and safely handle destructive actions.
We also had to balance autonomous exploration with predictable execution so that the agent could complete a meaningful E2E workflow instead of stopping after only discovering the application.
Accomplishments that we're proud of
We built a working autonomous QA system that can reverse-engineer a web application, discover workflows, plan tests, and execute them through a real browser.
Our live Contact List demonstration successfully performs an end-to-end workflow including creation, editing, and deletion, with destructive actions explicitly controlled by the user.
We also integrated Gemini, Google ADK, and Firestore into the system and verified the strategic decision pipeline through a real Gemini call and Firestore read/write cycle.
What we learned
We learned that autonomous QA requires more than browser automation. Reliable agents need perception, structured application knowledge, planning, execution, recovery, safety controls, and persistent memory working together.
We also learned how Google ADK can provide an agent-oriented reasoning layer while Firestore can preserve knowledge and decisions beyond a single execution.
What's next for GemmaQA
Our next goal is to make GemmaQA more scalable and production-ready, with stronger application understanding, richer test generation, improved recovery strategies, persistent learning from previous runs, and cloud deployment.
We also plan to expand beyond web CRUD workflows toward complex multi-role applications and larger end-to-end business processes.
Log in or sign up for Devpost to join the conversation.