trace_run_tests

[solution]

Runs dotnet test (or dotnet vstest against prebuilt assemblies) under the workspace, captures stdout/stderr/TRX evidence, optionally reruns safe failures, and stores a GliderTrace test session.

Why this tool exists

Test failures need TRX and blame artifacts as well as summarized stdout and stderr.

How it helps the agent

The model can query structured test failure evidence and rerun identified failures when requested.

Try it locally in the GliderTrace playground

Parameters

NameTypeRequiredDescription
targetPathstringNoOptional solution, project, or directory path under the workspace root. Defaults to the workspace root. Not valid with runner 'vstest'.
configurationstringNoBuild configuration passed to dotnet test. Defaults to Release. Not valid with runner 'vstest'.
filterstringNoOptional dotnet test filter expression. With runner 'vstest' it is applied as --TestCaseFilter.
verbositystringNodotnet test verbosity: 'quiet', 'minimal', 'normal', 'detailed', or 'diagnostic'. Defaults to minimal. Not valid with runner 'vstest'.
noRestorebooleanNoPass --no-restore to dotnet test. Defaults to false so fresh workspaces can restore normally.
collectBlamebooleanNoCollect blame sequence artifacts when supported. Defaults to true.
rerunFailednumberNoNumber of times to rerun safely identified failed tests. Defaults to 0. Rerun-cleared failures are recorded as flaky candidates.
runnerstringNoTest runner: 'auto' (default, dotnet test with mode detection), 'dotnet-test', or 'vstest' (dotnet vstest against prebuilt assemblies). 'nunit-console' and 'msbuild-vstest' are reserved for a future release.
assembliesjsonNoPrebuilt test assembly paths under a configured workspace root. Requires runner 'vstest'.
testsjsonNoExact FullyQualifiedName test names, run through a vstest --TestCaseFilter so each name matches exactly. Requires runner 'vstest'; cannot be combined with filter or testCaseFilter.
testCaseFilterstringNoVSTest --TestCaseFilter expression for trait/category selection. Requires runner 'vstest'.
testAdapterPathstringNoDirectory containing test adapters, mapped to vstest --TestAdapterPath. Requires runner 'vstest'.
platformstringNoTarget platform architecture for vstest: 'x86', 'x64', or 'ARM'. Requires runner 'vstest'.
frameworkstringNoTarget framework moniker for vstest, for example Framework48. Requires runner 'vstest'.
labelstringNoOptional short label for the stored session, for example nightly-baseline. Use it to find the session again with trace_list_sessions. Maximum 128 characters.

Examples

Run tests for the current workspace

Request
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "trace_run_tests",
    "arguments": {}
  }
}

Run a prebuilt legacy test assembly through vstest

Request
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "trace_run_tests",
    "arguments": {
      "runner": "vstest",
      "assemblies": [
        "Tests/bin/Debug/Sample.UnitTests.dll"
      ]
    }
  }
}

Response Notes

Returns a test session id, result summary, TRX artifacts, stdout/stderr references, failure evidence, and rerun metadata.

↑/↓ NavigateEnter OpenSpace Expand