Come for the products,
stay for the community

The Atlassian Community can help you and your team get more value out of Atlassian products and practices.

Atlassian Community about banner
4,293,676
Community Members
 
Community Events
165
Community Groups

Why is my VSTest Runner test results file not being written to where I configured it?

VSRunnerConfig.PNG

12-Dec-2017 13:38:33Passed   ShortLocateCacheCollectionCreateDataRequestTest
12-Dec-2017 13:38:33Passed   ShortLocateCacheCollectionRequestTest
12-Dec-2017 13:38:33Passed   ShortLocateCacheCollectionRecoveryTest
12-Dec-2017 13:38:33Passed   DatabaseHelpersTest
12-Dec-2017 13:38:33Passed   EINT_667_TEST
12-Dec-2017 13:38:33Results File: C:\Users\bambooprod\AppData\Local\Temp\1513103893152-0\TestResults\bambooprod_CHI-BLD-W12-01 2017-12-12 13_38_16.trx
12-Dec-2017 13:38:33 
12-Dec-2017 13:38:33Total tests: 54. Passed: 54. Failed: 0. Skipped: 0.
12-Dec-2017 13:38:33Test Run Successful.
12-Dec-2017 13:38:33Test execution time: 18.8019 Seconds
12-Dec-2017 13:38:33Parsing test results under D:\agent-home\xml-data\build-dir\TRDSVR-LIN2-JOB1...
12-Dec-2017 13:38:33Failing task since test cases were expected but none were found.
12-Dec-2017 13:38:33Finished task 'Run unit tests' with result: Failed

The results file is clearly not what I configured above, any ideas please?

2 answers

0 votes

vstest.console.exe doesn't allow to specify output filename so Bamboo executes it at temporary folder and then copies generated *.trx file to folder specified by user. It's not clear from build logs, but it works like this from source code perspective: https://bitbucket.org/atlassian/bamboo-dotnet-plugin/src/d2788e3b641ccd5e5895d1adc7f115c1046df5f2/src/main/java/com/atlassian/bamboo/plugin/dotnet/tests/vstest/VSTestRunnerTaskType.java?at=default&fileviewer=file-view-default

According to the --help output on my version of vstest.console.exe you can specify the trx file name with the /logger option:

--logger|/logger:<Logger Uri/FriendlyName>
Specify a logger for test results. For example, to log results into a
Visual Studio Test Results File (TRX) use /logger:trx[;LogFileName=<Defaults to unique file name>]
Creates file in TestResults directory with given LogFileName.

So the command line:

"C:\Program Files (x86)\Microsoft Visual Studio\2017\TestAgent\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe" /logger:trx;LogFileName=MyResults.trx org.example.tests\bin\Debug\org.example.tests.dll

Will create output in:

MyResults.trx

Important: Contary to the help output shown above, if no trx file name is specified none will be created!

Unfortunately the Java code linked to in the post does not seem to allow for a user specified trx file name:

command.add("/logger:Trx");

My guess is that changing this line to the logical equivalent of the following psudo code

command.add("/logger:Trx;<resultFileName>");

 i.e. adding the string ";<resultFileName>" part where a file is specified, or a suitable default if not, would create the desired trx file.

See also: Microsoft/vstest-docs

Like Danilo Araujo likes this

Update: We found that using the vstest.console.exe installed as part of a Visual Studio install fixed our problems.

0 votes

Hi David,

If you take a look at the agent logs what do you see? The directory may not have been able to be created or move the result to the result directory. 

Take a look at the logs around 12-Dec-2017 13:38:33 and see if there are any errors related to the directory you specified.  Let me know what you find.

Cheers,

Branden

Suggest an answer

Log in or Sign up to answer
TAGS
Community showcase
Published in Bamboo

Bamboo Data Center on Kubernetes

Hi, If you are running self-managed environments and looking to adopt modern infrastructure, Bamboo Data Center can now be deployed in a Kubernetes cluster. By leveraging Kubernetes, you can easily...

912 views 3 8
Read article

Community Events

Connect with like-minded Atlassian users at free events near you!

Find an event

Connect with like-minded Atlassian users at free events near you!

Unfortunately there are no Community Events near you at the moment.

Host an event

You're one step closer to meeting fellow Atlassian users at your local event. Learn more about Community Events

Events near you