get_test_case
Retrieve a full manual test case with all fields: steps, metadata, and optional edit history. Use for detailed review or sharing in Slack or Jira.
Instructions
Get one manual test case in full: id, caseNumber, displayId, title, description, status, priority, tags, ordered steps, folderId/folderName, projectId/projectName, dependsOn, customFields, createdAt/updatedAt and a shareUrl for pasting into Slack or Jira. Optional flags add linkedAutotests (includeLinkedAutotests, default true), recentAutotestExecutions from CI runs (includeRecentExecutions) and an edit-history audit trail (includeHistory). Read-only; nothing is modified. caseId is the internal numeric id from list_test_cases / create_test_case, not a user-facing TC-N; the project is derived from the case. Choose list_test_cases instead to browse, filter or count many cases, or to turn a TC-N into an id - it returns summaries without steps, so use it to pick the case and this tool to read it. Choose get_case_execution_history instead for how the case has fared in Manual Test Executions over time (pass rate plus an execution timeline); includeRecentExecutions here reports automated CI results only. search_tests covers automated tests, which are separate records from manual cases. IMPORTANT if you plan to write back: description and steps are RICH TEXT and do not round-trip as they arrive. Both come back as arrays of formatting nodes rather than strings, and a step reads as title and expected while create_test_case and update_test_case take action and expected. So sending a step straight back sets the wrong field to the wrong type. Send plain strings or Markdown on write and the server converts them; to edit one step, rebuild the whole steps array from your own text, since steps is replace-all.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| caseId | Yes | Internal numeric test case id (the "id" from list_test_cases / get_test_case / create_test_case). This is NOT the user-facing "TC-N" number (caseNumber/displayId) - if the user gave you a "TC-N", resolve it first via list_test_cases(search: "TC-N") and use the returned id. Project is derived from the case. | |
| includeHistory | No | Include the edit audit trail: field, oldValue, newValue, changeType, userName, userEmail and changedAt per entry. It is NOT a complete account of the case, for two separate reasons. COVERAGE: the trail holds only the changes it audits, and updatedAt can be newer than every entry in it - one case here carries updatedAt two months after its latest recorded change - while the case itself has no updatedBy field. VOLUME: the array is capped at the 50 most recent entries, with no truncation flag, no total and no way to page further back, so a trail of exactly 50 IS a truncated one and its oldest entry is not the oldest change. Two traps inside the rows as well: an entry records that a field was SUBMITTED rather than that its value moved, so oldValue and newValue are often identical - 28 of 50 on one case here - and userName is frequently just the email address again. So this answers what changed and by whom AMONG AUDITED, RECENT changes, and cannot always answer who last touched the case. | |
| includeLinkedAutotests | No | Include autotest links made with link_autotest_to_case. These are the only links reported here, and they are not the only links that exist: a reporter can also bind a test to a case by putting a [TC-N] marker in the test title, which ingest resolves to a case id on the test row itself. get_coverage_gaps counts that second kind as covered in its unlinkedAutotests section ONLY: its summary, automationRate, foldersWithLowCoverage and unlinkedCases all use the same narrow, explicit-link definition this list does. So a test can be absent here and still be linked, and a case can sit in unlinkedCases while a marker-bound test covers it, which makes automationRate a floor rather than the whole picture. | |
| includeRecentExecutions | No | Include autotest results for this case from CI. There is NO time window: the latest result per distinct test title is returned, up to 20, with no date cutoff at all - so an empty array is DEFINITIVE and means no automated test has ever reported against this case, rather than none lately. This is also the only place a test bound to the case by a [TC-N] title marker appears, which makes it the arbiter when linkedAutotests comes back empty. |