Changelog
What shipped.
No roadmap theatre. No "coming soon" slides. Just what's actually in the product, in plain language.
QA Recorder v2.4.8 — popup windows, Dropdown & Keypress commands
New tabs and popup windows (e.g. prescription screens) now record Switch window with stable URL path patterns instead of brittle Go to URL steps with dynamic IDs. Closing a popup records Close window. The app also adds Dropdown and Keypress step commands for Select2 fields and keyboard actions. Download v2.4.8 from Help or Integrations, reload the extension in chrome://extensions, re-record or edit steps, then regenerate your Playwright script.
QA Recorder v2.4.6 — reliable Select2 / custom dropdowns
Dropdowns are now captured via their hidden native <select> (//select[@name='...']) instead of a brittle //span[@role='combobox' and contains(@aria-label,'<value>')] that matched nothing on replay. The runner also selects dropdown options by value, so existing recordings work too. Download v2.4.6 from Help or Integrations and reload the extension in chrome://extensions, then regenerate the test case from the recording.
QA Recorder v2.4.5 - cross-tab journey recording
Recorder sessions now continue when you switch to another browser tab. The extension records a Go to URL navigation event for the newly active tab, then captures that tab's clicks, typed values, validations, page context, and relevant network events in the same journey. Download v2.4.5 from Help or Integrations and reload the extension in chrome://extensions before testing cross-tab flows.
QA Recorder v2.4.3 — plaintext Assign values (no more [EMAIL] placeholders)
Typed emails, usernames, OTPs, and search text are now captured in plaintext during recording. Generated test cases keep the real Assign input instead of [EMAIL] or other masked placeholders. Download v2.4.3 from Help or Integrations and reload the extension in chrome://extensions before re-recording flows that need real credentials.
QA Recorder v2.4.1 — stable name-attribute XPaths on dynamic-id forms
The recorder no longer invents //*[@id='fieldName'] from label-for attributes when the real element id is dynamic (Headless UI, Radix, etc.). Form fields now prefer //input[@name='...'] and label-scoped fallbacks. Regenerating test cases from a recording repairs stale bogus-id locators. Download v2.4.1 from Help or Integrations and reload the extension in chrome://extensions.
QA Recorder v2.4 — verified locators, one event per action, compact panel
Every recorded element now stores a Playwright locator chosen by priority (getByTestId, getByRole, getByLabel, getByPlaceholder, stable fallbacks) and verified as unique against the live page — ambiguous matches get .nth(i) and a lower stability score. Duplicate events are gone: double clicks, label-forwarded clicks and the input/change pairs browsers fire for one typed value are captured once, and dropdown or date picks attribute to the correct field. The on-page recorder panel is now a compact card showing just the latest step, with a 'See all events' expander, a minimize-to-pill button, and drag-to-move so it never covers the element you're testing.
Local runs: full-screen browser with live step highlighting
Playwright runs launched from QAMind now open the browser sized to your machine's screen instead of a fixed 1280×720 window. A step banner in the top-right shows exactly which step is executing ('Step 3 of 12') with a progress bar, and the element being acted on is outlined in green — red when a lookup fails. Fixed a config conflict that could prevent maximized runs from starting.
Playwright script generation via local MCP server
Generate runnable .spec.ts Playwright files from approved test cases. The script generator groups test cases by shared prerequisites into merged spec files. Scripts can be run directly from QAMind using the local runner, or downloaded for use in your existing test setup.
Local test runner — Mac and Windows
The local Playwright runner connects your machine to QAMind via the MCP server (port 3100). Setup guides for Mac and Windows are available in the Generate Scripts page. Run results are recorded as a TestRun with per-case pass/fail/skip status.
QA Recorder integration
The QA Recorder Chrome extension now pushes sessions directly to the QAMind recordings inbox via a secure channel. Recording sessions show event count, session name, site URL, and duration in the inbox. Status flows: Pending → Processing → Complete.
Sprint detail panel
The sprint detail panel now shows assigned testers, sprint leads, developers, and a progress bar of planned vs. executed test cases. Sprint notes are editable in the panel.
Switched to Qwen 3 Coder 30B
The AI model for test case generation and GPT chat updated to Qwen 3 Coder 30B. The new model produces more precise test steps and better Playwright selector suggestions than the previous model.
Recording inbox UI
The recordings page now shows a two-pane layout: a session list on the left and an event timeline on the right. Event types are distinguished by icon — click, input, navigation, assertion. Sessions can be converted to test cases directly from the inbox.
GPT console (gpt.qamind.ai)
A private AI chat interface powered by the same local Qwen model. Conversations are grouped by project and persisted to your workspace. Supports PDF and DOCX upload for document context. Available at gpt.qamind.ai for all signed-in users.
Test suite module improvements
Test suite views now support drag-to-reorder, bulk approval status changes, and inline step editing without opening the slide-out panel. Filter by author status (Draft / Ready / Approved) and last run status (Passed / Failed / Skipped).