Agentic testing

Tests and groups

A saved test captures a QA scenario you want to run again: its target, its description, and the identity it runs as. A group holds a set of tests and the identity they share. You run a single test, or run a whole group at once.

Saved tests

A test carries:

  • A title and a description of the flow to walk.
  • A target: a static URL, a deployment URL tied to a bound GitHub repo, or a mobile app.
  • A trigger: manual, or a GitHub deployment that starts the run when a deployment succeeds.
  • An optional identity override, so this test can run as a different test user than its group.

You create and manage tests from the Matcha QA screen. In the desktop, every manual run creates a saved test, so a run you start once is a run you can start again; there is no throwaway path. An ad-hoc run started through the QA tools can skip saving, but the desktop form always persists the test and starts its first run.

An agent can list tests with qa_test_list and delete one with qa_test_delete. Listing returns each test's id, group, target type, and, for static-URL tests, the URL. See MCP and local API.

Groups

A group names a set of tests and sets the run-as identity they share. A group carries a name, an optional description, and its execution settings, which include the identity a run signs in as. The QA home lists these under the Run Groups tab, next to Runs.

An agent can create a group with qa_group_create (passing a runAs id pair to set its identity) and list groups with qa_group_list.

Run-as inheritance

A test inherits its group's identity by default. When a test's identity is set to inherit, a run of that test signs in as the group's test user. When a test overrides the identity, that test runs as its own test user instead, and the rest of the group is unaffected.

This is why you set the account once on the group and let its tests inherit. Override only the test that genuinely needs a different account.

An ad-hoc run started with a groupId but no explicit runAs also inherits that group's identity.

Run all

Run all runs every test in a group. Each test runs under its own resolved identity: the group's identity for inheriting tests, and the overriding test user for any test that set one. An agent triggers this with qa_group_run_all.

Group runs also back GitHub PR testing: a qualifying pull request fans out runs for each configured group, each under its own group identity. See PR reporting.

On this page