dotnet test not creating test results folder

DomBurf picture DomBurf · Mar 20, 2018 · Viewed 13.4k times · Source

As part of our ASP.NET Core 2.0 build process I have added a dotnet test command which I have added as a Windows batch file.

Here is my command.

dotnet test "MyProject.csproj" --no-restore --results-directory "MyProject\TestResults" --verbosity minimal

And here is the output when run from the command line.

enter image description here

So it all appears to work correctly, yet no test results / test output is created.

Answer

Alexz picture Alexz · May 3, 2018

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