-
Notifications
You must be signed in to change notification settings - Fork 339
Description
I have a test that attaches an a file to the result as test attachment.
When I invoke the tests with dotnet test --logger trx, a TRX file is generated into the TestResults, with content like:
<?xml version="1.0" encoding="utf-8"?>
<TestRun id="4331b725-7dd8-4bf1-8f2d-5172f4badc2a" name="gaspar@SPECSOL-D02 2025-09-01 12:41:46" runUser="SPECSOL-D02\gaspar" xmlns="http://microsoft.com/schemas/VisualStudio/TeamTest/2010">
<TestSettings name="default" id="42cb1c37-a94c-47b4-a25d-b407aecac057">
<Deployment runDeploymentRoot="gaspar_SPECSOL-D02_2025-09-01_12_41_46" />
</TestSettings>
<Results>
<UnitTestResult executionId="933251df-f80e-4822-9a1c-f424a6a29418" testId="4b94be94-1b4e-0dc0-394e-895a6466b9fd" testName="[...]" computerName="SPECSOL-D02" duration="00:00:00.0002259" startTime="2025-09-01T12:41:46.2170389+02:00" endTime="2025-09-01T12:41:46.2173424+02:00" testType="13cdc9d9-ddb5-4fa4-a97d-d965ccfc6d4b" outcome="Passed" testListId="8c84fa94-04c1-424b-9868-57a2d4851a1d" relativeResultsDirectory="933251df-f80e-4822-9a1c-f424a6a29418">
<ResultFiles>
<ResultFile path="SPECSOL-D02\sample-image.png" />
</ResultFiles>
</UnitTestResult>
</Results>
[...]
</TestRun>
Based on the TRX file, the attachment is correctly saved to C:\MyProject\TestResults\gaspar_SPECSOL-D02_2025-09-01_12_41_46\In\933251df-f80e-4822-9a1c-f424a6a29418\SPECSOL-D02\sample-image.png because
C:\MyProject\TestResults\(because the TRX file is here) +gaspar_SPECSOL-D02_2025-09-01_12_41_46(because ofrunDeploymentRoot) +In(fix part) +933251df-f80e-4822-9a1c-f424a6a29418(because ofrelativeResultsDirectory) +SPECSOL-D02\sample-image.png(because ofResultFile path)
This is correct.
If I use a folder when specifying the LogFileName setting (this seems to be allowed based on the doc), the result is inconsistent:
- The TRX file is saved to the specified target location
- The attachments are saved to the
TestResultsfolder of the project - The TRX file
runDeploymentRootdoes not have a reference to the attachment save location
I would expect that in this case, the <Deployment runDeploymentRoot="gaspar_SPECSOL-D02_2025-09-01_12_41_46" /> is updated accordingly.
Note: If I don't use folder path for LogFileName, but just a file path and use --results-directory to specify the output folder, everything works fine.