Test summary
test_summaryCounts a project's tests by state, tag, or annotation from test files without running them, and groups counts by file, tag, or project to show where skipped tests concentrate.
Instructions
Counts a project's tests by state (active, skip, fixme, todo, expectedToFail, notLoaded) and by tag and annotation, from the test files, without running them. Use it first, for questions such as how many tests are skipped, or which files or tags have the most skipped tests; use find_tests to list the tests themselves. states, tags and grep count only the tests they match. groupBy "file", "tag" or "project" adds the counts of each, sorted by name and paged with limit and cursor; a test with no tag is in no tag group, and one whose projects the scan cannot tell in no project group. configs lists the config files read and their projects. Example: {"states": ["skip", "fixme"], "groupBy": "file"}.
Tool call template
This tool declares no required parameters. Add optional parameters from the input schema as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {},
"name": "test_summary"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| grep | No | Keeps tests whose fullName (describe titles and title joined with " > ") matches this regular expression, ignoring case. | |
| tags | No | Keeps tests with one of these tags, written as in the titles, such as "@smoke". | |
| limit | No | The most items to return. | |
| cursor | No | nextCursor from the previous answer, for the next page. Keep the other arguments the same. | |
| states | No | Keeps tests in one of these states. | |
| groupBy | No | Adds the counts of each file, tag or project. | |
| related | No | Changed files, relative to the project root as `git diff --name-only` writes them, such as ["pages/order-ticket.ts"]. Keeps the tests a change to one of them can affect: those whose dependencies include it, and those that reach code the scan can't follow (hasUnfollowedDependencies). | |
| patterns | No | Globs of the test files, relative to `directory`, such as ["tests/**/*.spec.ts"]. Default: the ones the server was started with, or without them the files the configs in `directory` and below it run. | |
| directory | No | A folder inside the project to scan, relative to its root, such as "packages/web". Default: the root. | |
| framework | No | The test runner. Default: the one the server was started with, otherwise the one the project in `directory` uses. | |
| expandCases | No | Lists each case of a .each or .for table and each pass of a loop as its own test, with the name the runner gives it and caseIndex, as the runner registers them. Ids differ from those without it, so pass the same value to get_tests. Default: false, one test per declaration with caseCount. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| hint | Yes | ||
| total | Yes | ||
| groups | Yes | ||
| configs | Yes | The config files the scanned test files use, with their projects; [] when none was found. | |
| summary | Yes | Counts over the matching tests; fileCount is every file scanned. | |
| framework | Yes | ||
| nextCursor | Yes | ||
| scanErrors | Yes | Problems of level error in the scan, which may leave tests out of the answer. | |
| frameworkVersion | Yes |