diff --git a/.github/workflows/run-tests.yml b/.github/workflows/run-tests.yml
index c88a972da65..3d2300a9545 100644
--- a/.github/workflows/run-tests.yml
+++ b/.github/workflows/run-tests.yml
@@ -13,10 +13,10 @@ on:
# relative the repo root
required: false
type: string
- testSessionTimeoutMs:
+ testSessionTimeout:
required: false
type: string
- default: "900000"
+ default: "15m"
testHangTimeout:
required: false
type: string
@@ -220,18 +220,14 @@ jobs:
TEST_LOG_PATH: ${{ github.workspace }}/artifacts/log/test-logs
TestsRunningOutsideOfRepo: true
run: >
- dotnet test -s .runsettings -v:n ${{ env.TEST_ASSEMBLY_NAME }}.dll
- -l "console;verbosity=normal"
- -l "trx;LogFilePrefix=${{ inputs.testShortName }}"
- -l "GitHubActions;summary.includePassedTests=true;summary.includeSkippedTests=true"
- --blame
- --blame-hang-timeout ${{ inputs.testHangTimeout }}
- --blame-crash
+ dotnet ${{ env.TEST_ASSEMBLY_NAME }}.dll
+ --report-trx --report-trx-filename "${{ inputs.testShortName }}.trx"
+ --hangdump --hangdump-timeout ${{ inputs.testHangTimeout }}
+ --crashdump
--results-directory ${{ github.workspace }}/testresults
+ --filter-not-trait "category=failing"
+ --timeout ${{ inputs.testSessionTimeout }}
${{ inputs.extraTestArgs }}
- --
- RunConfiguration.CollectSourceInformation=true
- RunConfiguration.TestSessionTimeout=${{ inputs.testSessionTimeoutMs }}
- name: Run tests
if: ${{ ! inputs.requiresNugets }}
@@ -240,24 +236,24 @@ jobs:
CI: false
DCP_DIAGNOSTICS_LOG_LEVEL: debug
DCP_DIAGNOSTICS_LOG_FOLDER: ${{ github.workspace }}/testresults/dcp
+ # During restore and build, we use -ci, which causes NUGET_PACKAGES to point to a local cache (Arcade behavior).
+ # In this step, we are not using Arcade, but want to make sure that MSBuild is able to evaluate correctly.
+ # So, we manually set NUGET_PACKAGES
+ NUGET_PACKAGES: ${{ github.workspace }}/.packages
run: >
${{ env.DOTNET_SCRIPT }} test ${{ env.TEST_PROJECT_PATH }}
/p:ContinuousIntegrationBuild=true
- -s eng/testing/.runsettings
- -l "console;verbosity=normal"
- -l "trx;LogFilePrefix=${{ inputs.testShortName }}"
- -l "GitHubActions;summary.includePassedTests=true;summary.includeSkippedTests=true"
- "--blame"
- --blame-hang-timeout ${{ inputs.testHangTimeout }}
- --blame-crash
- --results-directory testresults
+ /p:TrxFileNamePrefix="${{ inputs.testShortName }}"
+ -bl:${{ github.workspace }}/testresults/test.binlog
--no-restore
--no-build
- -bl:${{ github.workspace }}/testresults/test.binlog
- ${{ inputs.extraTestArgs }}
--
- RunConfiguration.CollectSourceInformation=true
- RunConfiguration.TestSessionTimeout=${{ inputs.testSessionTimeoutMs }}
+ --report-trx
+ --hangdump --hangdump-timeout ${{ inputs.testHangTimeout }}
+ --crashdump
+ --results-directory ${{ github.workspace }}/testresults
+ --timeout ${{ inputs.testSessionTimeout }}
+ ${{ inputs.extraTestArgs }}
# Save the result of the previous steps - success or failure
# in the form of a file result-success/result-failure -{name}.rst
diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
index c85e92e8c6b..4f40b71ec06 100644
--- a/.github/workflows/tests.yml
+++ b/.github/workflows/tests.yml
@@ -77,7 +77,7 @@ jobs:
with:
testShortName: ${{ matrix.shortname }}
os: "ubuntu-latest"
- extraTestArgs: "--filter \"(quarantined!=true)\""
+ extraTestArgs: "--filter-not-trait \"quarantined=true\""
integrations_test_win:
uses: ./.github/workflows/run-tests.yml
@@ -90,7 +90,7 @@ jobs:
with:
testShortName: ${{ matrix.shortname }}
os: "windows-latest"
- extraTestArgs: "--filter \"(quarantined!=true)\""
+ extraTestArgs: "--filter-not-trait \"quarantined=true\""
templates_test_lin:
name: Templates Linux
@@ -103,10 +103,9 @@ jobs:
testShortName: ${{ matrix.shortname }}
os: "ubuntu-latest"
testProjectPath: tests/Aspire.Templates.Tests/Aspire.Templates.Tests.csproj
- testSessionTimeoutMs: 1200000
+ testSessionTimeout: 20m
testHangTimeout: 12m
- # append '.' to the name so only the test class with exactly that name is run
- extraTestArgs: "--filter \"(quarantined!=true)&(FullyQualifiedName~Aspire.Templates.Tests.${{ matrix.shortname }}.)\""
+ extraTestArgs: "--filter-not-trait quarantined=true --filter-class Aspire.Templates.Tests.${{ matrix.shortname }}"
requiresNugets: true
requiresTestSdk: true
@@ -121,10 +120,9 @@ jobs:
testShortName: ${{ matrix.shortname }}
os: "windows-latest"
testProjectPath: tests/Aspire.Templates.Tests/Aspire.Templates.Tests.csproj
- testSessionTimeoutMs: 1200000
+ testSessionTimeout: 20m
testHangTimeout: 12m
- # append '.' to the name so only the test class with exactly that name is run
- extraTestArgs: "--filter \"(quarantined!=true)&(FullyQualifiedName~Aspire.Templates.Tests.${{ matrix.shortname }}.)\""
+ extraTestArgs: "--filter-not-trait quarantined=true --filter-class Aspire.Templates.Tests.${{ matrix.shortname }}"
requiresNugets: true
requiresTestSdk: true
diff --git a/eng/.runsettings b/eng/.runsettings
deleted file mode 100644
index 955954d2c90..00000000000
--- a/eng/.runsettings
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
-
-
- category!=failing
-
-
-
-
-
-
-
- Minimal
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/eng/QuarantinedTestRunsheetBuilder/QuarantinedTestRunsheetBuilder.targets b/eng/QuarantinedTestRunsheetBuilder/QuarantinedTestRunsheetBuilder.targets
index 13790a2cc80..015fa4ef272 100644
--- a/eng/QuarantinedTestRunsheetBuilder/QuarantinedTestRunsheetBuilder.targets
+++ b/eng/QuarantinedTestRunsheetBuilder/QuarantinedTestRunsheetBuilder.targets
@@ -58,14 +58,13 @@
<_TestEnvironment>%(TestToRun.EnvironmentDisplay)
<_TestAssembly>%(TestToRun.Identity)
+ <_TestAssembly Condition="'$(OS)'=='Windows_NT'">$([System.IO.Path]::ChangeExtension($(_TestAssembly), '.exe'))
+ <_TestAssembly Condition="'$(OS)'!='Windows_NT'">$(_TestAssembly.TrimEnd('.dll'))
<_TestTimeout>%(TestToRun.TestTimeout)
- <_TestRunnerAdditionalArguments>%(TestToRun.TestRunnerAdditionalArguments)
<_TargetDir>$([System.IO.Path]::GetDirectoryName('$(_TestAssembly)'))\
- <_TestRunnerCommand>"$(DotNetTool)" test $(_TestAssembly) --list-tests --logger:"console%3Bverbosity=normal" "--Framework:%(TestToRun.TargetFrameworkIdentifier),Version=%(TestToRun.TargetFrameworkVersion)"
- <_TestRunnerCommand Condition="'$(VSTestRunSettingsFile)' != ''">$(_TestRunnerCommand) "--settings:$(VSTestRunSettingsFile)"
- <_TestRunnerCommand Condition="'$(_TestRunnerAdditionalArguments)' != ''">$(_TestRunnerCommand) $(_TestRunnerAdditionalArguments)
+ <_TestRunnerCommand>$(_TestAssembly) --list-tests $(_QuarantinedTestRunAdditionalArgs)
-
-
<_ResultsFileToDisplay>%(TestToRun.ResultsStdOutPath)
-
-
-
-
-
-
-
-
-
- $([System.String]::Copy('%(FileLines.Identity)').Replace('`', ''))
-
-
- <_UnhandledExceptionLines Include="@(Lines)" Condition=" $([MSBuild]::ValueOrDefault(`%(Lines.Sanitized)`, '').Contains(`Unhandled exception`)) " />
- <_ExceptionDiscoveringTestsLines Include="@(Lines)" Condition=" $([MSBuild]::ValueOrDefault(`%(Lines.Sanitized)`, '').Contains(`Exception discovering tests`)) " />
- <_NoTestMatchesLines Include="@(Lines)" Condition=" $([MSBuild]::ValueOrDefault(`%(Lines.Sanitized)`, '').Contains(`No test matches the given testcase filter`)) " />
-
+
+
+
- <_FailedToEnumerateTests Condition=" '@(_UnhandledExceptionLines)' != '' or '@(_ExceptionDiscoveringTestsLines)' != '' ">true
-
<_HasQuarantinedTests>true
- <_HasQuarantinedTests Condition=" '@(_NoTestMatchesLines)' != '' ">false
+ <_HasQuarantinedTests Condition=" '$(_TestErrorCode)' == '8' ">false
-
-
-
@@ -160,6 +133,12 @@
<_TestRunnerLinux>./eng/build.sh
<_TestCommand>-restore -build -test -projects "$(_RelativeTestProjectPath)" /bl:"$(_RelativeTestBinLog)" -c $(Configuration) -ci /p:RunQuarantinedTests=true /p:CI=false
+
+ <_TestCommand>$(_TestCommand) /p:IgnoreZeroTestResult=true
+
<_TestCommand>$([System.String]::Copy($(_TestCommand)).Replace("\", "/").Replace('"', '\"'))
diff --git a/eng/Testing.props b/eng/Testing.props
index 60021f935df..db722fddc9e 100644
--- a/eng/Testing.props
+++ b/eng/Testing.props
@@ -9,24 +9,20 @@
true
true
true
-
-
-
- <_QuarantinedTestRunAdditionalArgs>-trait "quarantined=true"
- <_NonQuarantinedTestRunAdditionalArgs>-notrait "quarantined=true"
-
-
- <_QuarantinedTestRunAdditionalArgs>--filter "quarantined=true"
- <_NonQuarantinedTestRunAdditionalArgs>--filter "quarantined!=true"
+ <_QuarantinedTestRunAdditionalArgs>--filter-trait "quarantined=true"
+ <_NonQuarantinedTestRunAdditionalArgs>--filter-not-trait "quarantined=true"
20m
10m
- <_BlameArgs>--blame --blame-hang-timeout $(BlameHangTimeout) --blame-crash
+ <_BlameArgs>--hangdump --hangdump-timeout $(BlameHangTimeout) --crashdump
+
+ $(TestRunnerAdditionalArguments) --filter-not-trait "category=failing"
+ $(TestRunnerAdditionalArguments) --ignore-exit-code 8
- $(TestRunnerAdditionalArguments) $(_NonQuarantinedTestRunAdditionalArgs) $(TestRunnerAdditionalArguments) $(_BlameArgs)
- $(TestRunnerAdditionalArguments) $(_QuarantinedTestRunAdditionalArgs) $(TestRunnerAdditionalArguments) $(_BlameArgs)
+ $(TestRunnerAdditionalArguments) $(_NonQuarantinedTestRunAdditionalArgs) $(_BlameArgs)
+ $(TestRunnerAdditionalArguments) $(_QuarantinedTestRunAdditionalArgs) $(_BlameArgs)
diff --git a/eng/Versions.props b/eng/Versions.props
index 913611b4984..b20d1c265d2 100644
--- a/eng/Versions.props
+++ b/eng/Versions.props
@@ -12,10 +12,11 @@
8.0.13
8.0.406
- true
2.0.0
1.20.0
3.0.2
+ 1.6.3
+ 17.13.0
false
release
diff --git a/eng/Xunit3/Xunit3.targets b/eng/Xunit3/Xunit3.targets
index 2cda46b44b6..86d4d093ab0 100644
--- a/eng/Xunit3/Xunit3.targets
+++ b/eng/Xunit3/Xunit3.targets
@@ -4,15 +4,25 @@
-
+
+
+
+
+
+
+
+
+
+
+
-
-
\ No newline at end of file
+
+
diff --git a/eng/testing/.runsettings b/eng/testing/.runsettings
deleted file mode 100644
index 88a92c090ab..00000000000
--- a/eng/testing/.runsettings
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
-
- 1200000
-
- category!=failing
-
-
-
-
-
- TestResults.trx
-
-
-
-
- normal
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/tests/Aspire.Components.Common.Tests/Aspire.Components.Common.Tests.csproj b/tests/Aspire.Components.Common.Tests/Aspire.Components.Common.Tests.csproj
index 9bee666eb8e..8bd5357c0c0 100644
--- a/tests/Aspire.Components.Common.Tests/Aspire.Components.Common.Tests.csproj
+++ b/tests/Aspire.Components.Common.Tests/Aspire.Components.Common.Tests.csproj
@@ -9,6 +9,11 @@
true
true
false
+
+
+
+
+ $(TestingPlatformCommandLineArguments) --ignore-exit-code 8
diff --git a/tests/Aspire.EndToEnd.Tests/.runsettings b/tests/Aspire.EndToEnd.Tests/.runsettings
deleted file mode 100644
index 348b55730ea..00000000000
--- a/tests/Aspire.EndToEnd.Tests/.runsettings
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
- true
-
-
-
- 900000
-
- category!=failing
-
-
-
-
-
- TestResults.trx
-
-
-
-
- normal
-
-
-
-
-
diff --git a/tests/Aspire.EndToEnd.Tests/Aspire.EndToEnd.Tests.csproj b/tests/Aspire.EndToEnd.Tests/Aspire.EndToEnd.Tests.csproj
index 5694b015626..a074d720d09 100644
--- a/tests/Aspire.EndToEnd.Tests/Aspire.EndToEnd.Tests.csproj
+++ b/tests/Aspire.EndToEnd.Tests/Aspire.EndToEnd.Tests.csproj
@@ -20,7 +20,6 @@
BUILD_FOR_TESTS_RUNNING_OUTSIDE_OF_REPO;$(DefineConstants)
xunit.runner.json
- $(MSBuildThisFileDirectory).runsettings
$(TestArchiveTestsDirForEndToEndTests)
diff --git a/tests/Aspire.Hosting.Containers.Tests/.runsettings b/tests/Aspire.Hosting.Containers.Tests/.runsettings
deleted file mode 100644
index 591a45e7ab7..00000000000
--- a/tests/Aspire.Hosting.Containers.Tests/.runsettings
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
-
- 900000
-
- category!=failing
-
-
-
-
-
- TestResults.trx
-
-
-
-
- normal
-
-
-
-
-
diff --git a/tests/Aspire.Hosting.Keycloak.Tests/.runsettings b/tests/Aspire.Hosting.Keycloak.Tests/.runsettings
deleted file mode 100644
index 591a45e7ab7..00000000000
--- a/tests/Aspire.Hosting.Keycloak.Tests/.runsettings
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
-
- 900000
-
- category!=failing
-
-
-
-
-
- TestResults.trx
-
-
-
-
- normal
-
-
-
-
-
diff --git a/tests/Aspire.Playground.Tests/.runsettings b/tests/Aspire.Playground.Tests/.runsettings
deleted file mode 100644
index 1eb28e08584..00000000000
--- a/tests/Aspire.Playground.Tests/.runsettings
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
- true
-
-
-
- 1200000
-
- category!=failing
-
-
-
-
-
- TestResults.trx
-
-
-
-
- normal
-
-
-
-
-
diff --git a/tests/Aspire.Playground.Tests/Aspire.Playground.Tests.csproj b/tests/Aspire.Playground.Tests/Aspire.Playground.Tests.csproj
index 2b048c12806..d07a3033a95 100644
--- a/tests/Aspire.Playground.Tests/Aspire.Playground.Tests.csproj
+++ b/tests/Aspire.Playground.Tests/Aspire.Playground.Tests.csproj
@@ -17,7 +17,6 @@
$(MSBuildThisFileDirectory)..\..\playground\
$(MSBuildThisFileDirectory)..\Shared\
- $(MSBuildThisFileDirectory).runsettings
true
diff --git a/tests/Aspire.Templates.Tests/.runsettings b/tests/Aspire.Templates.Tests/.runsettings
deleted file mode 100644
index 1eb28e08584..00000000000
--- a/tests/Aspire.Templates.Tests/.runsettings
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
- true
-
-
-
- 1200000
-
- category!=failing
-
-
-
-
-
- TestResults.trx
-
-
-
-
- normal
-
-
-
-
-
diff --git a/tests/Aspire.Templates.Tests/Aspire.Templates.Tests.csproj b/tests/Aspire.Templates.Tests/Aspire.Templates.Tests.csproj
index 3c4a6f83018..9fdc76892f8 100644
--- a/tests/Aspire.Templates.Tests/Aspire.Templates.Tests.csproj
+++ b/tests/Aspire.Templates.Tests/Aspire.Templates.Tests.csproj
@@ -7,7 +7,6 @@
true
xunit.runner.json
- $(MSBuildThisFileDirectory).runsettings
$(TestArchiveTestsDirForTemplateTests)
true
diff --git a/tests/Directory.Build.props b/tests/Directory.Build.props
index 8c0aabbcfa9..beb44b89dcd 100644
--- a/tests/Directory.Build.props
+++ b/tests/Directory.Build.props
@@ -5,8 +5,6 @@
-
- $(RepositoryEngineeringDir)testing\.runsettings
$([MSBuild]::NormalizeDirectory($(ArtifactsDir), 'helix', 'tests'))
$([MSBuild]::NormalizeDirectory($(ArtifactsDir), 'helix', 'templates-tests'))
$([MSBuild]::NormalizeDirectory($(ArtifactsDir), 'helix', 'e2e-tests'))
@@ -16,14 +14,8 @@
$(ArtifactsTestResultsDir)
-
- Exe
-
-
-
-
false
diff --git a/tests/Directory.Build.targets b/tests/Directory.Build.targets
index a18ad0736dc..bf1b4461737 100644
--- a/tests/Directory.Build.targets
+++ b/tests/Directory.Build.targets
@@ -4,17 +4,12 @@
-
- $(RunSettingsFilePath)
-
- true
$(RepoRoot)tests\helix\xunit.runner.json
$(RepositoryEngineeringDir)testing\xunit.runner.json
-
@@ -41,7 +36,7 @@
-
+
@@ -66,7 +61,8 @@
-
+
+
diff --git a/tests/Shared/RepoTesting/Aspire.RepoTesting.props b/tests/Shared/RepoTesting/Aspire.RepoTesting.props
index f4c225f2e54..25749020524 100644
--- a/tests/Shared/RepoTesting/Aspire.RepoTesting.props
+++ b/tests/Shared/RepoTesting/Aspire.RepoTesting.props
@@ -14,6 +14,16 @@
Xunit3
+
+ true
+ true
+ false
+
+
+
+ true
+ Exe
+
diff --git a/tests/Shared/RepoTesting/Aspire.RepoTesting.targets b/tests/Shared/RepoTesting/Aspire.RepoTesting.targets
index ac54f9b7fd3..55aa43919ab 100644
--- a/tests/Shared/RepoTesting/Aspire.RepoTesting.targets
+++ b/tests/Shared/RepoTesting/Aspire.RepoTesting.targets
@@ -41,6 +41,9 @@
true
$(IntermediateOutputPath)Directory.Packages.Versions.props
+
+ $(TestingPlatformCommandLineArguments) --filter-not-trait "category=failing"
+ $(TestingPlatformCommandLineArguments) --report-trx-filename "$(TrxFileNamePrefix)_$(TargetFramework)_$([System.DateTime]::UtcNow.ToString('yyyyMMddhhmmss')).trx"
@@ -68,7 +71,11 @@
-
+
+
+
+
+
diff --git a/tests/Shared/RepoTesting/Directory.Packages.Helix.props b/tests/Shared/RepoTesting/Directory.Packages.Helix.props
index a36826bcfe9..3a74f01ca7e 100644
--- a/tests/Shared/RepoTesting/Directory.Packages.Helix.props
+++ b/tests/Shared/RepoTesting/Directory.Packages.Helix.props
@@ -86,7 +86,5 @@
-
-
diff --git a/tests/Shared/TemplatesTesting/BuildEnvironment.cs b/tests/Shared/TemplatesTesting/BuildEnvironment.cs
index e68638df5a3..66b33a2683c 100644
--- a/tests/Shared/TemplatesTesting/BuildEnvironment.cs
+++ b/tests/Shared/TemplatesTesting/BuildEnvironment.cs
@@ -173,8 +173,6 @@ public BuildEnvironment(bool useSystemDotNet = false, string sdkDirName = "dotne
// Avoid using the msbuild terminal logger, so the output can be read
// in the tests
EnvVars["_MSBUILDTLENABLED"] = "0";
- // .. and disable new output style for vstest
- EnvVars["VsTestUseMSBuildOutput"] = "false";
EnvVars["SkipAspireWorkloadManifest"] = "true";
DotNet = Path.Combine(sdkForTemplatePath!, "dotnet");
diff --git a/tests/helix/send-to-helix-basictests.targets b/tests/helix/send-to-helix-basictests.targets
index fcfb8bdc47d..29b05b8a3e1 100644
--- a/tests/helix/send-to-helix-basictests.targets
+++ b/tests/helix/send-to-helix-basictests.targets
@@ -21,8 +21,7 @@
- <_TestRunCommandArguments Condition="'$(OS)' != 'Windows_NT'" Include="--filter "quarantined!=true" -- RunConfiguration.TestSessionTimeout=$TEST_TIMEOUT" />
- <_TestRunCommandArguments Condition="'$(OS)' == 'Windows_NT'" Include="--filter "quarantined!=true" -- RunConfiguration.TestSessionTimeout=%TEST_TIMEOUT%" />
+ <_TestRunCommandArguments Include="--filter-not-trait "quarantined=true"" />
@@ -37,16 +36,9 @@
<_DefaultWorkItems TestName="$([System.Text.RegularExpressions.Regex]::Replace(%(FileName), $(TargetFrameworkSuffixRegex), '$1'))" />
<_DefaultWorkItems TestNameSuffix="$([System.Text.RegularExpressions.Regex]::Replace(%(FileName), $(TargetFrameworkSuffixRegex), '$2'))" />
-
- <_DefaultWorkItems TimeoutMs="900000" />
-
- <_DefaultWorkItems Condition="$([System.String]::new('%(FileName)').StartsWith('Aspire.Hosting.Elasticsearch.Tests'))" TimeoutMs="3600000" />
- <_DefaultWorkItems Condition="$([System.String]::new('%(FileName)').StartsWith('Aspire.Hosting.Oracle.Tests'))" TimeoutMs="1200000" />
- <_DefaultWorkItems Condition="$([System.String]::new('%(FileName)').StartsWith('Aspire.Pomelo.EntityFrameworkCore.MySql.Tests'))" TimeoutMs="1200000" />
-
%(Identity)
- $(_EnvVarSetKeyword) "TEST_NAME=%(TestName)" $(_ShellCommandSeparator) $(_EnvVarSetKeyword) TEST_TIMEOUT=%(TimeoutMs) $(_ShellCommandSeparator) $(_EnvVarSetKeyword) "TEST_NAME_SUFFIX=%(TestNameSuffix)" $(_ShellCommandSeparator) $(_EnvVarSetKeyword) "CODE_COV_FILE_SUFFIX=%(TestNameSuffix)"
+ $(_EnvVarSetKeyword) "TEST_NAME=%(TestName)" $(_ShellCommandSeparator) $(_EnvVarSetKeyword) $(_ShellCommandSeparator) $(_EnvVarSetKeyword) "TEST_NAME_SUFFIX=%(TestNameSuffix)" $(_ShellCommandSeparator) $(_EnvVarSetKeyword) "CODE_COV_FILE_SUFFIX=%(TestNameSuffix)"
$(_TestRunCommand)
$(_workItemTimeout)
diff --git a/tests/helix/send-to-helix-buildonhelixtests.targets b/tests/helix/send-to-helix-buildonhelixtests.targets
index 096bf419beb..19e0c189d19 100644
--- a/tests/helix/send-to-helix-buildonhelixtests.targets
+++ b/tests/helix/send-to-helix-buildonhelixtests.targets
@@ -31,14 +31,14 @@
<_TestRunCommandArguments Remove="@(_TestRunCommandArguments)" />
<_TestBlameArguments Remove="@(_TestBlameArguments)" />
- <_TestBlameArguments Include="--blame-crash" />
- <_TestBlameArguments Include="--blame-crash-dump-type full" />
+ <_TestBlameArguments Include="--crashdump" />
+ <_TestBlameArguments Include="--crashdump-type Full" />
- <_TestRunCommandArguments Include="dotnet test -s .runsettings --results-directory $(_HelixLogsPath) -v:n" />
+ <_TestRunCommandArguments Include="dotnet test -- --results-directory $(_HelixLogsPath) --report-trx --report-trx-filename TestResults.trx" />
<_TestRunCommandArguments Include="@(_TestBlameArguments, ' ')" />
- <_TestRunCommandArguments Include="--filter "quarantined!=true"" />
+ <_TestRunCommandArguments Include="--filter-not-trait "quarantined=true"" />
diff --git a/tests/helix/send-to-helix-endtoendtests.targets b/tests/helix/send-to-helix-endtoendtests.targets
index a64f35da2a4..1e9b2d70f33 100644
--- a/tests/helix/send-to-helix-endtoendtests.targets
+++ b/tests/helix/send-to-helix-endtoendtests.targets
@@ -21,7 +21,7 @@
Text="Could not find EndToEnd tests at %24(_E2ETestsArchivePath)=$(_E2ETestsArchivePath)" />
- <_TestRunCommandArguments Include="--filter "(quarantined!=true)&(scenario=$(_TestScenarioEnvVar))"" />
+ <_TestRunCommandArguments Include="--filter-not-trait "quarantined=true" --filter-trait "scenario=$(_TestScenarioEnvVar)"" />
diff --git a/tests/helix/send-to-helix-inner.proj b/tests/helix/send-to-helix-inner.proj
index 1f2fb9f6248..02e9cef40d8 100644
--- a/tests/helix/send-to-helix-inner.proj
+++ b/tests/helix/send-to-helix-inner.proj
@@ -58,13 +58,19 @@
- <_TestBlameArguments Include="--blame-hang" />
- <_TestBlameArguments Include="--blame-hang-dump-type full" />
- <_TestBlameArguments Include="--blame-hang-timeout 20m" />
- <_TestBlameArguments Include="--blame-crash" />
- <_TestBlameArguments Include="--blame-crash-dump-type full" />
-
- <_TestRunCommandArguments Include="$(_SetExecutableBitCommand)dotnet test -s .runsettings $(_TestNameEnvVar).dll --ResultsDirectory:$(_HelixLogsPath) -v:n" />
+ <_TestBlameArguments Include="--hangdump" />
+ <_TestBlameArguments Include="--hangdump-type Full" />
+ <_TestBlameArguments Include="--hangdump-timeout 20m" />
+ <_TestBlameArguments Include="--crashdump" />
+ <_TestBlameArguments Include="--crashdump-type Full" />
+
+
+ <_TestRunCommandArguments Include="$(_SetExecutableBitCommand)dotnet exec $(_TestNameEnvVar).dll --results-directory:$(_HelixLogsPath) --report-trx --report-trx-filename TestResults.trx --filter-not-trait "category=failing" --ignore-exit-code 8" />
<_TestRunCommandArguments Include="@(_TestBlameArguments, ' ')" />
diff --git a/tests/helix/send-to-helix-templatestests.targets b/tests/helix/send-to-helix-templatestests.targets
index cdd6cee0918..f731f3b41c4 100644
--- a/tests/helix/send-to-helix-templatestests.targets
+++ b/tests/helix/send-to-helix-templatestests.targets
@@ -59,8 +59,8 @@
To fix that, append '.' to the name so only the test class with exactly that name is run.
-->
- %(PreCommands) $(_ShellCommandSeparator) set "TEST_ARGS=--filter quarantined^^!=true^&category^^!=failing^&FullyQualifiedName~%(Identity)."
- %(PreCommands) $(_ShellCommandSeparator) export "TEST_ARGS=--filter quarantined!=true&category!=failing&FullyQualifiedName~%(Identity)."
+ %(PreCommands) $(_ShellCommandSeparator) set "TEST_ARGS=--filter-not-trait quarantined=true --filter-not-trait category=failing --filter-class %(Identity)"
+ %(PreCommands) $(_ShellCommandSeparator) export "TEST_ARGS=--filter-not-trait quarantined=true --filter-not-trait category=failing --filter-class %(Identity)"
$(_TestRunCommand)
$(_workItemTimeout)