The DotNet Test action in Continua CI is a wrapper around the .Net Core command line tools. If you're having trouble using the DotNet Test action, please refer to the .NET Core Command Line Tools documentation.
The DotNet Test action is used to run unit tests on a .Net project using the configured test runner.

A friendly name for this action (will be displayed in the actions workflow area).
Determines if this action will be run within the relevant stage.
Path to project file, solution file, assembly (dll or exe), or folder. If a folder is specified, it will be searched for a file that has a file extension that ends in 'proj' or, is 'sln' or 'slnx'. Defaults to the workspace folder. [--project]
Directory where test binaries can be found. Relative paths will be anchored to the workspace folder. [--output]
The path to file with settings to use when running tests. [--settings]
Optional working folder for running the executable. Defaults to the project folder.
The Using drop down is populated with any property collector whose namespace matches the pattern defined by the DotNet CLI actions. The pattern for this action is ^NetCore\.App.*
If you create a property collector for this action, make sure you select the Path Finder PlugIn type and give it a name that will match the pattern above in blue. Example names listed here, search the table's Plugin column for "DotNet Test".
For more in-depth explanations on property collectors see Property Collectors.
Alternatively, you can select the Custom option from the Using drop down list and specify a path in the resulting input field that will be displayed. Please read Why it's a good idea to use a property collector before using this option.
The bitness of the DotNet executable. Options are Default, 32 Bit (X86), or 64 Bit (X64).
The SDK version to set in global.json file before running the DotNet executable.
A custom SDK version string. This field is only visible when the SDK Version is set to 'Custom'.

The configuration to use when building the project. This defaults to "Debug" if left empty. [--configuration]
Look for test binaries for a specified framework. [--framework]
Target runtime to build for. For a list of Runtime Identifiers (RIDs), see the RID catalog. [--runtime]
Not available for .NET Core 1.x, 2.0, or 2.1.
All build output files will go in subfolders under the specified path, separated by project. [--artifacts-path]
Requires .NET 8 or later.

Arguments to be passed to the test runner. The relevant arguments depend on the test runner being used. [--]
To display the test results in Continua CI, you need to export the test results as a file and use one of the Import Tests actions to read the results from the file. Use this field to specify the path to the results file using the relevant argument for the test runner you are using e.g. -xml for XUnit and --resultxml for NUnit.
Use to filter tests using an expression. Examples: FullyQualifiedName~MyNamespace to run tests containing a name, TestCategory=Unit to run tests in a category, Priority=1 to run tests with a specific priority. Expressions can be combined with | (OR) and & (AND). For more information, see VSTest TestCase filter. [--filter]
The path to a diagnostics log file. Enables verbose diagnostic logging for the test platform, which is useful for troubleshooting test discovery or execution issues. Creates additional log files next to the specified path for test host and data collector diagnostics. [--diag]
The friendly name of a data collector to use for the test run. Common values include Code Coverage (Microsoft code coverage) and XPlat Code Coverage (cross-platform coverage via Coverlet). [--collect]
Not available for .NET Core 1.x.
Environment variables to set for the test process, one per line in KEY=VALUE format. Use of this option forces the tests to be run in an isolated process. These are separate from the Environment tab variables, which are set for the dotnet CLI process itself. [-e|--environment]
Requires .NET 6 or later.

Set this flag to skip running an implicit restore during build. [--no-restore]
Not available for .NET Core 1.x.
Set this flag to skip the building phase of the testing process. This implies --no-restore. Use this when the project has already been built in a previous build step. [--no-build]
Set this flag to list all the tests in the project to the log. [--list-tests]
Only visible when Log standard output is ticked on the Options tab.
Run the tests in blame mode. This creates a sequence file (Sequence.xml) that captures the order of test execution before a crash, helping to isolate problematic tests. This option does not collect memory dumps — use Blame crash or Blame hang for that. [--blame]
Not available for .NET Core 1.x or 2.0.
Collect a crash dump when the test host exits unexpectedly. This is useful for diagnosing tests that cause the test host process to crash. The dump file can be analyzed with tools like Visual Studio or dotnet-dump. Implies --blame. [--blame-crash]
Requires .NET 5 or later.
The type of crash dump to collect. Options are Full or Mini. Defaults to Full. [--blame-crash-dump-type]
Requires .NET 5 or later. Only visible when Blame Crash is ticked.
Collect a crash dump on expected as well as unexpected test host exit. [--blame-crash-collect-always]
Requires .NET 5 or later. Only visible when Blame Crash is ticked.
Run the tests in blame mode and collect a hang dump when a test exceeds the given timeout. This is particularly useful in CI environments where a hanging test can block the entire build pipeline indefinitely. Requires Blame hang timeout to be set. Implies --blame. [--blame-hang]
Requires .NET 5 or later.
The type of hang dump to collect. Options are Full, Mini, or None. When 'None', test host is terminated on timeout but no dump is collected. Defaults to Full. [--blame-hang-dump-type]
Requires .NET 5 or later. Only visible when Blame Hang is ticked.
Per-test timeout after which a hang dump is triggered and the test host process is terminated. Specify the duration using a suffix: 30s (seconds), 5m (minutes), 1.5h (hours). When used with data-driven tests, the timeout behavior depends on the test adapter — for xUnit, NUnit, and MSTest 2.2.4+, the timeout is renewed after every test case. [--blame-hang-timeout]
Requires .NET 5 or later. Only visible when Blame Hang is ticked. Required when visible.

The directory where the test results files are saved to. If left blank, a TestResults folder under the Working Folder is used. If the specified directory doesn't exist, it's created. [--results-directory]
Not available for .NET Core 1.x.
Tick to use the built-in Continua CI test logger to capture and report test results directly. When enabled, the action automatically configures the logger and test adapter path. Enabled by default.
Show verbose output from the internal logger.
Only visible when Use internal logger is ticked.
Delete the internal logger result files after they have been processed. Enabled by default.
Only visible when Use internal logger is ticked.
The path to custom test adapters to use for logging test results. [--test-adapter-path]
Only visible when Use internal logger is not ticked.
The name or URL to a test results logger. [--logger]
Only visible when Use internal logger is not ticked.

Use this to specify additional command line arguments and properties. Note that these will be placed at the end of the command line (before any Test Runner Arguments) and will override any other matching settings.

Suppress the startup banner and copyright message. [--nologo]
Not available for .NET Core 1.x or 2.x.
Don't tick this if you want to use an Import Unit Tests action to report on test output.
How many seconds to wait for command line to write output before timing out. Set to zero to wait until the main timeout. Defaults to 60 seconds, but adjusts automatically based on the Verbosity setting (0 for Quiet, 300 for Minimal).
If this is ticked, the command line output is written to the build log.
The amount of information detail to display in the build log. [--verbosity]
Only visible when Log standard output is ticked.
How long to wait for the action to finish running before timing out. Leaving this blank (or zero) will default to 86400 seconds (24 hours).
Tick to continue build on failure marking the action with a warning status.
If this is ticked, any warnings logged will not mark the action with a warning status.

Multiple environment variables can be defined - one per line. These are set before the command line is run.
If this is ticked, environment variable values are written to the build log.
Tick this checkbox to set up a list of new environment variables prefixed with 'ContinuaCI.' for all current system expression objects and variables.
This checkbox is visible only if the 'Generate system environment variables' checkbox is ticked.
If this is ticked, the values of any variables marked as sensitive will be masked with **** when setting system environment variables. Clear this to expose the values.