TFSBuild - Saving OpenCover/ReportGenerator output for each tfs build on tfs2013

720 Views Asked by At

I'm currently trying to run custom code coverage using OpenCover and to generate output in easily readable format using Report Generator. The final output of these two applications is xml files.

I am running these applications using InvokeProcess activity in build definition to get their outputs but the output are currently present only in my build controller's Build binaries folder.(ex:C:\Builds\1\project_collection\build_definition\bin)

I want to save these files per build in some location and to retrieve them back when needed by clicking on a hyperlink present in Build summary similar to how built-in code coverage results are displayed in tfs build summary.

I tried this question but as you can see there is no correct answers listed there.

So how do I copy these output files to some remote location and refer them in my build summary to retrieve them?

2

There are 2 best solutions below

0
On
  1. Copy outputs to some remote location is similar to copy outputs to drop folder. You can simply specify the drop location in Build Definition--Build Defaults--Staging location. Check the screenshot below:

enter image description here

  1. Refer the binaries in your build summary to retrieve them, you can add a new activity “WriteCustomSummaryInformation” to your build process template, which has several properties that allow you create a new Section and add text to that section. Check this blog for more information: http://blogs.msdn.com/b/jpricket/archive/2012/06/07/tfs11-rc-simple-build-summary-customization.aspx
0
On

As I also answered here Display OpenCover results in TFS 2015 build Summary, it is now possible to customize the build results in TFS 2015.

I managed to upload the OpenCover xml result file as 'testrun-attachment' via REST-interface and got the pieces in place to show the summary values on both the build summary tab and on its own extended “build-results-view”.