Although Conical has never been intended to replace existing unit test / CI workflow tools, it’s a fairly common for teams to have a series of what are actually integration or regression tests structured as unit tests (if only because it’s rather easy to do).
Obviously, in these circumstances, we would tend to advocate for having a more appropriate, specialised piece of software to handle the different requirements of these. However, we acknowledge that in a lot of circumstances, this might be overkill and as what we’re aiming to do is help you improve your testing at a reasonable cost rather than aim for a prohibitively expensive and unrealistic testing perfection, we’re pragmatic in how we can help people’s existing processes.
With this approach, it’s possible to use your existing testing processes etc. but report your results in a nicer, more accessible fashion and then to subsequently improve the generation process if this would be beneficial to your product.
Generating TRX files
To ‘refresh your memory’, it’s very easy to generate a trx file from the command line. Navigate to the directory containing your tests’ project file and run:
dotnet test -r ../testOutput --logger "trx;logfilename=output.trx"
This will generate a trx file in the output directory.
Installing the upload tool
The tool is packaged as a .net tool so you can follow the instructions on MSDN. In short:
- Create a tool manifest
- Install or update the tool
- Run the tool
Note that we would always recommend updating the tool as well in order to pick up the latest version of the tool.
These instructions expand into:
# Create manifest dotnet new tool-manifest # Install tool dotnet tool install BorsukSoftware.Conical.Tools.TRXUploader # Update tool dotnet tool update BorsukSoftware.Conical.Tools.TRXUploader # Run tool dotnet tool run BorsukSoftware.Conical.Tools.TRXUploader \ -server https://demo.conical.cloud \ -product "myProduct" \ -source "output.trx" \ -token "noThisIsntOurToken" \ -tag "local" \ -tag "example" \ -testRunType "Unit Test"
Viewing the results
When the results are uploaded to the Conical instance, they will be mapped as one unit test run to one Conical test run, with the tests being subsequently displayed grouped by name (. are treated as hierarchy separators).
The details from the trx file (e.g. the machine details, timings etc.) are uploaded as results XML with any logging output being stored as logs.
If you have any suggestions as to how to improve the tool / make it easier to handle your use-case etc. then do get in touch, either with the contact us below or via GitHub.