diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index b9dd523d..c952c8a2 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -39,16 +39,13 @@ jobs:
- name: Test
run: dotnet test --no-build --configuration Release
- # TODO: Create a TRX report and upload as an artifact. Tracked by #22.
- # - name: Publish Test Report
- # uses: dorny/test-reporter@v1
- # if: success() || failure()
- # with:
- # name: .NET Test Report (${{ matrix.os }})
- # path: "artifacts/TestResults/**/*.trx"
- # reporter: dotnet-trx
- # fail-on-error: true
- # fail-on-empty: true
+ - name: Publish Test Report
+ uses: actions/upload-artifact@v4
+ if: success() || failure()
+ with:
+ name: .NET Test Reports (${{ matrix.os }})
+ path: "artifacts/TestResults/**/*.trx"
+ if-no-files-found: error
- name: Upload binlogs
uses: actions/upload-artifact@v4
diff --git a/Directory.Build.props b/Directory.Build.props
new file mode 100644
index 00000000..75594389
--- /dev/null
+++ b/Directory.Build.props
@@ -0,0 +1,8 @@
+
+
+ $(MSBuildThisFileDirectory)
+
+
+
+
+
diff --git a/Directory.Build.targets b/Directory.Build.targets
new file mode 100644
index 00000000..9bd765d4
--- /dev/null
+++ b/Directory.Build.targets
@@ -0,0 +1,4 @@
+
+
+
+
diff --git a/build/targets/artifacts/Artifacts.props b/build/targets/artifacts/Artifacts.props
new file mode 100644
index 00000000..f7bda062
--- /dev/null
+++ b/build/targets/artifacts/Artifacts.props
@@ -0,0 +1,6 @@
+
+
+ $(RepoRoot)/artifacts
+ $(ArtifactsPath)/TestResults
+
+
diff --git a/build/targets/artifacts/Artifacts.targets b/build/targets/artifacts/Artifacts.targets
new file mode 100644
index 00000000..8c119d54
--- /dev/null
+++ b/build/targets/artifacts/Artifacts.targets
@@ -0,0 +1,2 @@
+
+
diff --git a/build/targets/tests/Tests.props b/build/targets/tests/Tests.props
new file mode 100644
index 00000000..8c119d54
--- /dev/null
+++ b/build/targets/tests/Tests.props
@@ -0,0 +1,2 @@
+
+
diff --git a/build/targets/tests/Tests.targets b/build/targets/tests/Tests.targets
new file mode 100644
index 00000000..b3078335
--- /dev/null
+++ b/build/targets/tests/Tests.targets
@@ -0,0 +1,7 @@
+
+
+
+ trx%3bLogFileName=$(MSBuildProjectName).trx
+ $(ArtifactsTestResultsPath)/$(TargetFramework)
+
+