dotnet test not creating test results folder

To output the test results using the dotnet test option --results-directory you have to also set --logger.

The -xml and --work options no longer work as they are not part of the options provided by the test CLI. I remember have used -xml in the past and it worked but it doesn't anymore.

You can see all the options for CLI .NET Core 2.x here

To publish the tests results into a specific folder, you should use the command below:

dotnet test --logger "trx;logfilename=mytests.trx" --results-directory ./somefolder/subfolder

Or

dotnet test --logger "trx;LogFileName=./somefolder/subfolder/mytests.trx"

The trx file is a XML file, so you could name it as mytests.xml instead of mytests.trx.

If you use VSTS, you can publish your tests to be shown in your build page using the command above in '.NET Core' task for test and the 'Publish Test Result' task.

The '.NET Core' task explains where it publishes the results as per screenshot below:

enter image description here

Once all done, your build page would look like this:

enter image description here


To output the test results from dotnet test, you can try pass -xml /some/path/out.xml or use the work parameter, like this: dotnet test --work:"mypath/myresult.xml". See below threads for details:

  • dotnet test - Output test results
  • Is there a way to specify TestResult.xml location?

Besides, generally you need to specify the argument -l|--logger <LoggerUri/FriendlyName> which specifies a logger for test results.

e.g.:

dotnet test "myproject.csproj" --logger "trx;LogFileName=path\to\tests\folder\results.trx" or dotnet test "myproject.csproj" -l:"trx;LogFileName=path\to\tests\folder\results.trx"

To make the generated trx files available as test results in VSTS/TFS, you can use the "Publish Test Results" task:

enter image description here