test-lah
v1.0.9
Published
QA Test Case Management — AI-powered test case generation and management
Readme
Test Lah!
Just, Test lah!
A fully client-side QA management tool with interactive mindmaps, test case tracking, and AI-powered test case generation.
Features
- Mindmap Editor — Drag-and-drop flow maps with horizontal/vertical directions and conditional edges
- Test Case Table — Track pass/fail/skip/untested with expandable cells, custom columns, and bulk expand
- AI Generation — Generate test cases from descriptions using Gemini, OpenAI, or DeepSeek
- E2E Agentic Testing — AI-powered end-to-end test execution with Playwright, live browser preview, self-healing, and run history
- Multi-Provider AI — Choose from Gemini, OpenAI, DeepSeek, Groq, OpenRouter, or bring your own custom provider
- Multi-Project — Manage multiple projects with per-node column configs
- Export — Download as Markdown or JSON
- Duplicate Projects — Clone any project with one click
- Profile Card — Your personal QA stats at a glance
Quick Start
Option 1: Global Install (Recommended)
From npmjs.com:
npm install -g test-lah
test-lahFrom GitHub Packages:
# One-time setup
npm login --registry=https://npm.pkg.github.com
npm install -g @niamhramadhaan/test-lah
test-lahThis starts the server and opens your browser automatically.
test-lah --port 8080 # Custom port
test-lah --no-open # Don't auto-open browser
test-lah --help # Show helpOption 2: Development
git clone https://github.com/niamhramadhaan/test-lah.git
cd test-lah
npm install
npm run devOpen http://localhost:3000. Enter any name containing "ayu" to login.
AI Setup
- Go to Integrations → choose a provider
- Enter API key → click Test → click Connect
- Select default model
- In any node's test cases → click Generate in the dock
Test Flow
It's 3 PM on a Friday. Your annoying manager just Slacked you: "Hey, can you have the test case report ready before EOD? The client wants to see it Monday morning."
Great. Another last-minute request. Now, Test Lah!
Step 1: Login
Open the app. Type your name (make sure it contains "ayu" ). You're in.
Step 2: Create a Project
Hit "+ New Project" and name it something like "Project Yang Jelas". Your PM will be impressed by the naming convention.
![Create Project]
Step 3: Build Your Mindmap
Click into the project. Start adding nodes to map out the user flow:
- Login → Browse Products → Add to Cart → Checkout → Payment
- Add conditional edges: Payment pass → Confirmation, Payment fail → Error page
Drag nodes around. Right-click to add children. This is the fun part — enjoy it while it lasts.
Step 4: Generate Test Cases
Click on a node (say, "Checkout"). Hit the Generate button in the dock. Paste your ticket description or acceptance criteria. Pick your AI provider (Gemini, OpenAI, or DeepSeek).
Watch the cat pictures while AI does the heavy lifting. In seconds, you have a full set of test cases.
Step 5: Run E2E Tests
Click on a node. Hit the E2E button in the dock. Pick your browser — Chromium, Firefox, WebKit, or Edge. Hit Run.
The AI takes over: clicking buttons, filling forms, navigating pages — all while you watch a live browser preview. If a step breaks, it tries to fix itself. Because debugging on a Friday afternoon is nobody's idea of fun.
Step 6: Switch AI Provider
Go to Integrations. Pick from 6 providers:
- Gemini — Google's finest
- OpenAI — The classic
- DeepSeek — Budget-friendly reasoning
- Groq — Blazing fast LPU inference
- OpenRouter — Gateway to 200+ models, some free
- Custom — Ollama, LM Studio, vLLM, anything OpenAI-compatible
Your API keys are encrypted with AES-256-GCM before hitting localStorage. Security first.
Step 7: Review & Update Status
Go through each test case. Run them. Mark them as Pass, Fail, or Skip. Add notes for the ones that failed (blame the FE team, obviously).
Step 8: Export & Share
Click the export button. Download as Markdown for the wiki or JSON for the automation pipeline.
Step 9: Logout (If You Must)
Click the logout button. A friendly modal asks for Donation. because the developer would appreciate a coffee. You can either bail or buy them one.
Tech Stack
Next.js 14 · TypeScript · Tailwind CSS · Motion · Lottie · Playwright · @google/generative-ai · openai · @ai-sdk/groq · OpenRouter · AES-256-GCM encryption
Data stored in browser localStorage. No backend required.
Brand
| Color | Hex | Usage |
|-------|-----|-------|
| Background | #F7F5F1 | Page background |
| Card | #FFFFFF | Cards, panels |
| Text Primary | #1A1A1A | Headings, body |
| Text Secondary | #7A7872 | Labels, hints |
| Accent | #1A1A1A | Buttons, links |
| Brown | #6F4E37 | Coffee, highlights |
| Pass | #3B6011 | Pass status |
| Fail | #8B1A1A | Fail status |
Full brand guideline: docs/brand-guideline.md
License
Credits
Built by Qois Ramadhani
Duck logo — Duck PNGs by Vecteezy
