1
votes

This plugin is supposed to support NUnit test results, but the support leaves a helluva lot of space for improvement. The plugin does not:

  1. Preserve test output for successful test cases (they say it is by design - https://github.com/Microsoft/azure-pipelines-tasks/issues/8979 and https://developercommunity.visualstudio.com/idea/432166/the-publish-tests-azure-devops-plugin-should-publi.html)
  2. Does not preserve test attachments for successful test cases (same by design - https://github.com/Microsoft/azure-pipelines-tasks/issues/9093)
  3. Does not compute total duration correctly when merging test results (NUnit3 + NUnit2 - https://github.com/Microsoft/azure-pipelines-tasks/issues/8981)
  4. Show the full name of a test case consistently (https://github.com/Microsoft/azure-pipelines-tasks/issues/9497 and https://github.com/Microsoft/azure-pipelines-tasks/issues/9499)

The test case name display is especially problematic for me.

In short, it is a torture to use. I would like to see if I can debug it and figure out how it works, because maybe by doing some transformations on the test result XML I could work around some of the bugs. Like I do with the test output - it can be worked around for the NUnit3 test results (but not for MSTest).

1

1 Answers

1
votes

The source code appears open source @ azure-pipelines-tasks/Tasks/PublishTestResultsV2. If you install a local agent, one of the first things that happens is the task download. That gets installed into your _work\_tasks folder. I'd assume you could compile and overwrite at that local agent location _task directory, attach a debugger in some fashion, and then just target your local registered agent for it to pick-up and process the job.