We've added more code analyzers to help you prevent mistakes, and to ensure a consistent code style of your tests.
One example of a new analyzer that was added in 3.4.0 is MSTEST0024: Do not store TestContext in static members. This analyzer has info severity by default, and will show a message, when you store TestContext in a static member in your class. This is not recommended, and you should be using a TestContext property instead:
The other analyzers added in this release:
MSTEST0017: Assertion arguments should be passed in the correct order by @Evangelink in #2256
MSTEST0019: Prefer TestInitialize over ctor by @Evangelink in #2580
MSTEST0020: Prefer ctors over TestInitialize methods by @Evangelink in #2582
MSTEST0021: Prefer Dispose over TestCleanup methods by @Evangelink in #2585
MSTEST0022: Prefer 'TestCleanup' methods over Dispose by @Evangelink in #2586
MSTEST0023: Do not negate boolean assertions by @Evangelink in #2594
MSTEST0024: Do not store TestContext in static members by @Evangelink in #2597
Add PreferAssertFailOverAlwaysFalseConditionsAnalyzer by @Youssef1313 in #2799
If you've just learned about MSTest analyzers, please also check out the analyzers that were added in previous releases. They will help you ensure that your test classes and test methods are recognized by MSTest and are not accidentally ignored.
The analyzers are automatically installed with the MSTest NuGet meta-package. But can also be installed separately using the MSTest.Analyzers NuGet package.
More timeout options
Timeout can now be specified on all fixture methods, including ClassCleanup, AssemblyCleanup, TestCleanup and TestInitalize. In this case I want my [ClassCleanup] to time out after 1 second:
Alternatively timeouts can be specified through runsettings. For example like this:
We've added more code analyzers to help you prevent mistakes, and to ensure a consistent code style of your tests.
One example of a new analyzer that was added in 3.4.0 is MSTEST0024: Do not store TestContext in static members. This analyzer has info severity by default, and will show a message, when you store TestContext in a static member in your class. This is not recommended, and you should be using a TestContext property instead:
The other analyzers added in this release:
MSTEST0017: Assertion arguments should be passed in the correct order by @Evangelink in #2256
MSTEST0019: Prefer TestInitialize over ctor by @Evangelink in #2580
MSTEST0020: Prefer ctors over TestInitialize methods by @Evangelink in #2582
MSTEST0021: Prefer Dispose over TestCleanup methods by @Evangelink in #2585
MSTEST0022: Prefer 'TestCleanup' methods over Dispose by @Evangelink in #2586
MSTEST0023: Do not negate boolean assertions by @Evangelink in #2594
MSTEST0024: Do not store TestContext in static members by @Evangelink in #2597
Add PreferAssertFailOverAlwaysFalseConditionsAnalyzer by @Youssef1313 in #2799
If you've just learned about MSTest analyzers, please also check out the analyzers that were added in previous releases. They will help you ensure that your test classes and test methods are recognized by MSTest and are not accidentally ignored.
The analyzers are automatically installed with the MSTest NuGet meta-package. But can also be installed separately using the MSTest.Analyzers NuGet package.
More timeout options
Timeout can now be specified on all fixture methods, including ClassCleanup, AssemblyCleanup, TestCleanup and TestInitalize. In this case I want my [ClassCleanup] to time out after 1 second:
Alternatively timeouts can be specified through runsettings. For example like this:
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
Bumps the tests group with 4 updates in the /src/DevOpsMetrics.Tests directory: Microsoft.AspNetCore.TestHost, Microsoft.NET.Test.Sdk, MSTest.TestAdapter and MSTest.TestFramework.
Updates
Microsoft.AspNetCore.TestHost
from 8.0.4 to 8.0.5Release notes
Sourced from Microsoft.AspNetCore.TestHost's releases.
Commits
c9e3996
Merged PR 39207: [internal/release/8.0] Updated Version.Details.xml - replace...1681d9a
Merged PR 39048: [internal/release/8.0] Update dependencies from dnceng/inter...b5c1ba3
Merged PR 39041: [internal/release/8.0] Update dependencies from dnceng/inter...582b2e3
Merged PR 38666: [internal/release/8.0] Update dependencies from dnceng/inter...4fb5420
Merge in 'release/8.0' changesd65b2f0
[release/8.0] Update Wix version (#55101)eac2e5a
Update dependencies from https://github.com/dotnet/arcade build 20240404.3 (#...90f8928
Merged PR 38780: Fix Abort lock1002bb7
Merge in 'release/8.0' changesfa6339e
Merge pull request #55034 from vseanreesermsft/internal-merge-8.0-2024-04-09-...Updates
Microsoft.NET.Test.Sdk
from 17.9.0 to 17.10.0Release notes
Sourced from Microsoft.NET.Test.Sdk's releases.
... (truncated)
Commits
83d73f7
Merge branch 'rel/17.10' of https://github.com/microsoft/vstest into rel/17.10d170364
Prebuilds that are allowed on main2eaee54
Update dependencies from https://github.com/dotnet/arcade build 20240520.3 (#...238626a
Touch 17.10 (#5051)cd5cc85
Update arcade25f10aa
Merge branch 'rel/17.10' of https://github.com/microsoft/vstest into rel/17.103d869ea
Remove pt4990482
[rel/17.10] Add list of known TestingPlatform dlls (#4982)56d2884
Disable CA2022 errors (#4961)1cd0d89
Brand as releaseUpdates
MSTest.TestAdapter
from 3.3.1 to 3.4.1Release notes
Sourced from MSTest.TestAdapter's releases.
... (truncated)
Changelog
Sourced from MSTest.TestAdapter's changelog.
... (truncated)
Commits
efc614f
Fix assembly resolution error (#2948)b4ab8ee
Bump version to 3.4.1bafa77b
Use VSTest 17.10 (#2902)7fd9f76
Use latest version of TA and MSTest.Engine (#2885)019168f
Fix property name for enabling aspire in MSTest.Sdk (#2888)f77b630
MSTest.Sdk: do not use IsImplictlyDefined (#2880)a0515c5
Flow execution context across fixture methods when using timeout (#2843)4ca86ba
Fix MSTEST0014 FP with arrays (#2857)03eb3e8
Cleaning command line validations and adding unit tests (#2842) (#2847)5ee0a23
Revert code coverage to latest released (#2840)Updates
MSTest.TestFramework
from 3.3.1 to 3.4.1Release notes
Sourced from MSTest.TestFramework's releases.
... (truncated)
Changelog
Sourced from MSTest.TestFramework's changelog.
... (truncated)
Commits
efc614f
Fix assembly resolution error (#2948)b4ab8ee
Bump version to 3.4.1bafa77b
Use VSTest 17.10 (#2902)7fd9f76
Use latest version of TA and MSTest.Engine (#2885)019168f
Fix property name for enabling aspire in MSTest.Sdk (#2888)f77b630
MSTest.Sdk: do not use IsImplictlyDefined (#2880)a0515c5
Flow execution context across fixture methods when using timeout (#2843)4ca86ba
Fix MSTEST0014 FP with arrays (#2857)03eb3e8
Cleaning command line validations and adding unit tests (#2842) (#2847)5ee0a23
Revert code coverage to latest released (#2840)Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show