Open
Description
Description
The goal of this ticket is to announce the upcoming breaking changes in MSTest v4.
Planned
- Convert MSTest to async pattern (Convert MSTest to async pattern #1284)
- Caller argument expression (Openness for Caller Argument Expression in Assert failure messages #1154)
- Disable appdomain usage by default (Disable appdomain usage by default #1297)
- Change ClassCleanup default behavior to be "EndOfClass" (Change ClassCleanup default behavior to be "EndOfClass" #1316)
- Remove ClassCleanupBehavior.EndOfAssembly (Remove
ClassCleanupBehavior.EndOfAssembly
#1574) - Drop TestTimeout enum and related overload on TimeoutAttribute (Drop
TestTimeout
enum and related overload onTimeoutAttribute
#1317) - Update TestContext.Properties return type to IDictionary<string, object> (Update TestContext.Properties return type to IDictionary<string, object> #1377)
- Remove deprecated BeginTimer and EndTimer methods (Remove deprecated BeginTimer and EndTimer methods #1454)
- Deprecate TestContext properties kept for compatibility (Deprecate TestContext properties kept for compatibility #1453)
- Better DisplayName for data tests (Better DisplayNames for DataSource tests #713)
- Unify
SetOutcome
behavior across all target frameworks (TestContext: Unify SetOutcome behavior across TFMs #1426) - Deprecate
ExpectedExceptionAttribute
(Deprecate ExpectedException attribute. #135) - Simpify assembly names to improve 260 chars limitation (Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices errors due to path length not handled well on UWP #1607)
- Disable
CaptureTraceOutput
by default (linked issueTraceListenerManager
is not thread safe #2616) - [v4] Broader changes for the story around attributes and their inheritance #4292
To be discussed
- [Breaking] Remove
ITestMethod.IsAsync
in v4 #4724 - Reintroduce tree structure (
InnerResults
) for parameterized tests (Data Driven tests - Individual results of data rows are not in tree structure, missing parentID in trx file #1024) - Use a better serialization/deserialization mechanism for data discovery (Use a better serialization/deserialization mechanism for data discovery #1462)
- DataRow: Nulls and empty string are displayed as no data in display name (DataRow: Nulls and empty string are displayed as no data in display name #1647)
- Remove Assert.Equals
- Add relaxed versions of Assert.ThrowsException and Assert.ThrowsExceptionAsync #4257 (comment)
-
ITestMethod
in PlatformServices should not be public - [MSTest v4]: Discuss if the default of
TestingPlatformDotnetTestSupport
should matchEnableMSTestRunner
#4973 - [MSTest v4]: Discuss if MSTest.Sdk should set MSTestAnalysisMode to Recommended #4974