All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog
See full log here
- Fix discard handling for newer Assert.Throws codefix by @Youssef1313 in #5118
- Fix
parallelism:enabled
incorrectly settingOrderTestsByNameInClass
by @Youssef1313 in #5114 - Ship props/targets of MSTest.TestFramework and MSTest.TestAdapter in both build and buildTransitive by @Youssef1313 in #5221
- Fix TestFailedException outcome not propagating to TestResult outcome by @Youssef1313 in #5244
- Remove extra space by @nohwnd in #5252
- MSTest: 3.8.3
- MSTest.TestFramework: 3.8.3
- MSTest.TestAdapter: 3.8.3
- MSTest.Analyzers: 3.8.3
- MSTest.Sdk: 3.8.3
- Microsoft.Testing.Extensions.CrashDump: 1.6.3
- Microsoft.Testing.Extensions.HangDump: 1.6.3
- Microsoft.Testing.Extensions.HotReload: 1.6.3
- Microsoft.Testing.Extensions.Retry: 1.6.3
- Microsoft.Testing.Extensions.TrxReport: 1.6.3
- MSTest.SourceGeneration: 1.0.0-alpha.25167.5
- MSTest.Engine: 1.0.0-alpha.25167.5
See full log here
- Fix ClassCleanup not called when the first test in class is ignored by @Youssef1313 in #5071
- MSTest: 3.8.2
- MSTest.TestFramework: 3.8.2
- MSTest.TestAdapter: 3.8.2
- MSTest.Analyzers: 3.8.2
- MSTest.Sdk: 3.8.2
- Microsoft.Testing.Extensions.CrashDump: 1.6.2
- Microsoft.Testing.Extensions.HangDump: 1.6.2
- Microsoft.Testing.Extensions.HotReload: 1.6.2
- Microsoft.Testing.Extensions.Retry: 1.6.2
- Microsoft.Testing.Extensions.TrxReport: 1.6.2
- MSTest.SourceGeneration: 1.0.0-alpha.25119.7
- MSTest.Engine: 1.0.0-alpha.25119.7
See full log here
- Fix MSTEST0038 message by @Youssef1313 in #5011
- Fix parameterized test treated as ignored when using VSTest in Test Explorer by @Youssef1313 in #5023
- Avoid handling tuples for test methods with only
object[]
parameter by @Youssef1313 #5022 - Set packages README correctly by @Youssef1313 in #5030
- Fix serialization of exceptions by BinaryFormatter in .NET Framework by @nohwnd in #5055
- MSTest: 3.8.1
- MSTest.TestFramework: 3.8.1
- MSTest.TestAdapter: 3.8.1
- MSTest.Analyzers: 3.8.1
- MSTest.Sdk: 3.8.1
- Microsoft.Testing.Extensions.CrashDump: 1.6.1
- Microsoft.Testing.Extensions.HangDump: 1.6.1
- Microsoft.Testing.Extensions.HotReload: 1.6.1
- Microsoft.Testing.Extensions.Retry: 1.6.1
- Microsoft.Testing.Extensions.TrxReport: 1.6.1
- MSTest.SourceGeneration: 1.0.0-alpha.25118.9
- MSTest.Engine: 1.0.0-alpha.25118.9
See full log here
- Introduce Assert.Throws(Async) and Assert.ThrowsExactly(Async) APIs by @Evangelink in #4350
- Support generic test method by @Youssef1313 in #4204
- Add support for ValueTuple for all target frameworks by @Evangelink in #4360
- Auto detect DynamicDataSourceType by @Youssef1313 in #4340
- Open source Retry and Hot Reload extensions by @Evangelink in #4354
- Add DisplayMessage to TestContext by @Youssef1313 in #4345
- Allow any IEnumerable as return type to DynamicData source member by @Evangelink in #4389
- Allow AssemblyCleanup/ClassCleanup to have TestContext parameter by @Youssef1313 in #4387
- Update ExpectedException codefix to use the new Assert.Throws[Exactly][Async] overloads by @Youssef1313 in #4504
- Introduce interpolated string handler overloads for assertions by @Youssef1313 in #4476
- Add analyzer for value type usage with Assert.AreSame by @Youssef1313 in #4493
- Allow DynamicData source to be on base types by @Youssef1313 in #4482
- Use different message for Assert.AreEqual when string difference is casing only by @Youssef1313 in #4525
- Report diagnostic when AreNotSame is passed value type by @Youssef1313 in #4523
- Implement analyzer and codefix to switch to Assert.ThrowsExactly[Async] by @Youssef1313 in #4459
- Update ExpectedException analyzer message/description to use the new Assert.Throws methods (and fix typo) by @Youssef1313 in #4527
- Add ability to ignore specific test cases by @Youssef1313 in #4457
- Implement codefix for MSTEST0026: Avoid conditional access in assertions (and small analyzer false positive) by @Youssef1313 in #4502
- Add messageBuilder overloads for Assert.Throws[Exactly][Async] by @Youssef1313 in #4541
- Implement codefix for 'Are[Not]Same' usage with value types by @Youssef1313 in #4584
- Implement analyzer to warn for use of Assert methods in async void by @Youssef1313 in #4640
- Introduce
RetryAttribute
for test methods by @Youssef1313 in #4586 - Obsolete InternalTestFailureException and GenericParameterHelper by @Evangelink in #4703
- Implement MSTestAnalysisMode by @Youssef1313 in #4712
- Add Assert.HasCount by @Evangelink in #4748
- Add UsingMSTestSdk property by @aelij in #4754
- Add Assert.HasCount, Assert.IsEmpty, Assert.IsNotEmpty and Assert.ContainsSingle by @Evangelink in #4756
- Support conditional tests by @Youssef1313 in #4734
- MSTEST0030: add codefix by @Evangelink in #4769
- Add Contains/DoesNotContain assert APIs by @Evangelink in #4799
- Add GitHubWorkItem by @Evangelink in #4813
- Add MSTest trace logs when using MTP by @Evangelink in #4833
- Add string Contains/DoesNotContain assertions by @Evangelink in #4842
- Add UWP .NET 9 support for MSTest extensions by @Sergio0694 in #3848
- Add TrxReport dependency to MSTest metapackage by @Youssef1313 in #4956
- Add TestDataRow class by @Youssef1313 in #4930
- Add SourceGen + Engine by @Evangelink in #4966
- Add CodeCoverage to MSTest metapackage by @Youssef1313 in #4962
- Don't consider TestClassAttribute for inheritance when calculating assembly initialize/cleanup by @Youssef1313 in #4318
- Fix false positive for PreferTestCleanupOverDispose on non-test classes by @Youssef1313 in #4378
- Report diagnostic if DynamicData is referencing a member that's not method/property (e.g, field) (and some cleanup) by @Youssef1313 in #4383
- Fix MSTestV2Files msbuild items by @Evangelink in #4405
- method scope fix by @SimonCropp in #4415
- Fix analyzer messages not localized by @Youssef1313 in #4434
- Best effort tracking for properties assigned indirectly via fields for TestContext analyzer by @Youssef1313 in #4439
- Better handling of CTS and timeout tokens by @Evangelink in #4444
- Don't report MSTEST0001 when TestAdapter isn't referenced by @Youssef1313 in #4481
- Don't report diagnostic for DeploymentItem on abstract class by @Youssef1313 in #4538
- Fix NaN behavior for Assert.AreEqual/AreNotEqual by @Youssef1313 in #4536
- Fix ExpectedException codefix to handle few edge cases by @Youssef1313 in #4560
- Fix MSTEST0002 (Test classes should have valid layout) codefix crash on records by @SimonCropp in #4580
- MSTEST0018: Fix FP with types implementing IEnumerable by @Evangelink in #4924
- Preserve TestIdGenerationStrategy in the execution AppDomain by @Youssef1313 in #4942
- Ensure to use the test execution AppDomain for loading the test assembly by @Youssef1313 in #4952
- MSTEST0029 do not report on implementation of interface by @Evangelink in #4803
- Reword unhandled TestMethodAttribute.Execute exception message by @Evangelink in #4641
- Fix bad nullability annotation on CultureInfo by @Evangelink in #4670
- Remove incorrect isReportedAtCompilationEnd for UseParallelizeAttributeAnalyzer by @Youssef1313 in #4737
- Disable MSTEST0026 by default by @Evangelink in #4816
- Ensure all public APIs are documented by @Evangelink in #4920
- Fix some missing xml docs by @Evangelink in #4841
- Move TATF based tests to MSTest by @Evangelink in #4348
- Reduce alloc in GetStackTraceInformation by @SimonCropp in #4367
- Remove unused resources in TestAdapter by @Youssef1313 in #4379
- Improve some flaky tests by @Evangelink in #4381
- Fix flakiness on test Log_WhenAsyncFlush_StreamWriterIsCalledOnlyWhenLogLevelAllowsIt by @Evangelink in #4394
- Simplify adapter props and targets by @Evangelink in #4397
- Fix typo in analyzer message by @Youssef1313 in #4452
- Hide DataTestMethodAttribute from IntelliSense by @Youssef1313 in #4465
- Add API docs feedback template by @Youssef1313 in #4687
- Drop unused source gen related code by @Evangelink in #4662
- Don't make TestDataSourceDiscoveryOption obsolete by @Evangelink in #4366
- Drop dependency to System.ValueTuple by @Evangelink in #4398
- Remove AsyncTestProperty by @Youssef1313 in #4725
- Cleanup VB entrypoint by @Youssef1313 in #4884
- Fix doc about supported tfms by @Evangelink in #4825
- Fix MSTest metapackage README by @Youssef1313 in #4887
- Many cleanup PRs by @SimonCropp!
- MSTest: 3.8.0
- MSTest.TestFramework: 3.8.0
- MSTest.TestAdapter: 3.8.0
- MSTest.Analyzers: 3.8.0
- MSTest.Sdk: 3.8.0
- Microsoft.Testing.Extensions.CrashDump: 1.6.0
- Microsoft.Testing.Extensions.HangDump: 1.6.0
- Microsoft.Testing.Extensions.HotReload: 1.6.0
- Microsoft.Testing.Extensions.Retry: 1.6.0
- Microsoft.Testing.Extensions.TrxReport: 1.6.0
- MSTest.SourceGeneration: 1.0.0-alpha.25112.8
- MSTest.Engine: 1.0.0-alpha.25112.8
See full log here
- Fix
Could not load type 'System.Threading.Lock'
error for WinUI when using net9.0 by @dependabot in #4794
- MSTest: 3.7.3
- MSTest.TestFramework: 3.7.3
- MSTest.TestAdapter: 3.7.3
- MSTest.Analyzers: 3.7.3
- MSTest.Sdk: 3.7.3
- Microsoft.Testing.Extensions.CrashDump: 1.5.3
- Microsoft.Testing.Extensions.HangDump: 1.5.3
- Microsoft.Testing.Extensions.HotReload: 1.5.3
- Microsoft.Testing.Extensions.Retry: 1.5.3
- Microsoft.Testing.Extensions.TrxReport: 1.5.3
See full log here
- Drop package ref to System.Memory by @Evangelink in #4652
- Fix Tuple/ValueTuple handling of TRest by @Youssef1313 in #4653
- MSTest: 3.7.2
- MSTest.TestFramework: 3.7.2
- MSTest.TestAdapter: 3.7.2
- MSTest.Analyzers: 3.7.2
- MSTest.Sdk: 3.7.2
- Microsoft.Testing.Extensions.CrashDump: 1.5.2
- Microsoft.Testing.Extensions.HangDump: 1.5.2
- Microsoft.Testing.Extensions.HotReload: 1.5.2
- Microsoft.Testing.Extensions.Retry: 1.5.2
- Microsoft.Testing.Extensions.TrxReport: 1.5.2
See full log here
- Don't report MSTEST0001 when TestAdapter isn't referenced (#4481) by @Evangelink in #4509
- Fix MSTEST0017 false positive when both actual/expected are constants (#4460) by @Evangelink in #4510
- MSTEST0037 (proper assert analyzer): Don't report for user defined eq… by @Evangelink in #4511
- Fix typo in analyzer message (#4452) by @Evangelink in #4512
- method scope fix (#4415) by @Evangelink in #4513
- Fix analyzer messages not localized (#4434) by @Evangelink in #4514
- Fix "Could not load file or assembly 'Microsoft.Testing.Platform'" exception by @Evangelink in #4537
- Don't report diagnostic for DeploymentItem on abstract class by @Youssef1313 in #4539
- Fix DynamicData.GetData regression preventing it to work without adapter by @Youssef1313 in #4626
- MSTest: 3.7.1
- MSTest.TestFramework: 3.7.1
- MSTest.TestAdapter: 3.7.1
- MSTest.Analyzers: 3.7.1
- MSTest.Sdk: 3.7.1
- Microsoft.Testing.Extensions.CrashDump: 1.5.1
- Microsoft.Testing.Extensions.HangDump: 1.5.1
- Microsoft.Testing.Extensions.HotReload: 1.5.1
- Microsoft.Testing.Extensions.Retry: 1.5.1
- Microsoft.Testing.Extensions.TrxReport: 1.5.1
See full log here
- MSTEST0029 code fix by @engyebrahim in #3747
- Add codefix for MSTEST0025 by @engyebrahim in #3756
- Add codefix for MSTEST0022 by @engyebrahim in #3770
- Add codefix for MSTEST0020 by @engyebrahim in #3798
- Add code fix for MSTEST0019 by @engyebrahim in #3812
- Add support for testconfig.json entries in MSTest by @engyebrahim in #3872
- Implement method lookup for dynamic data by @nohwnd in #3892
- Add TestData property to the TestContext by @Evangelink in #4015
- Add TestException property to the TestContext by @Evangelink in #4018
- Add code fix for MSTEST0021 by @engyebrahim in #3827
- Add TestDisplayName property to the TestContext by @Evangelink in #4037
- Implement codefix for MSTEST0006 (AvoidExpectedException) by @Youssef1313 in #4038
- Implement 'Use proper Assert methods' analyzer by @Youssef1313 in #4052
- Support ValueTask-returning test methods for all target frameworks by @Youssef1313 in #4059
- Support rsp in MTP by @Youssef1313 in #4072
- Enable UseProperAssertMethodsAnalyzer by default by @Youssef1313 in #4076
- Add property to SDK for Fakes feature by @Evangelink in #4121
- Support VS/.NET CLI localization in MTP, and add our own env variable as well by @Youssef1313 in #4122
- Implement
--config
for specifying testconfig.json file by @Youssef1313 in #4124 - Add mac os on pr pipeline by @Evangelink in #4155
- Implement codefix for MSTEST0037: Use proper 'Assert' methods by @Youssef1313 in #4162
- Build targeting net9.0 by @Evangelink in #4167
- Add a MSTest sample with a program.cs by @Evangelink in #4201
- Obsolete public types that should not be public by @Evangelink in #4208
- Allow to disable test expansion on implementations of ITestDataSource by @Evangelink in #4269
- Display an error when '--maximum-failed-tests' is used with a framewo… by @Evangelink in #4326
- Make MSTest.TestFramework depends upon MSTest.Analyzers (#4351) by @Evangelink in #4361
- Add support for ValueTuple for all target frameworks (#4360) by @Evangelink in #4364
- Support 'TestPropertyAttribute' on test classes by @Youssef1313 in #4249
- Support '--maximum-failed-tests' to abort test run when failure threshold is reached by @Youssef1313 in #4238
- Fix MSTEST0034 doesn't handle ClassCleanupExecutionAttribute by @engyebrahim in #3741
- fix code format in readme by @SimonCropp in #3750
- Fix running cleanup after first test method by @nohwnd in #3766
- Fix timedout test does not fail test run (in ui) by @nohwnd in #3772
- Fix typo by @engyebrahim in #3797
- MSTEST0018: fix false positive with data member visibility by @Evangelink in #3866
- Fix localization of test adapter messages by @nohwnd in #3867
- Fix localization info to avoid translating workers and scope by @nohwnd in #3869
- Fix resources included in MSTest.TestAdapter nupkg by @Evangelink in #3874
- Fix MSTEST0036 is shown for cases where no shadowing happens by @engyebrahim in #3881
- Fix MSTest hook to be always generated by @Evangelink in #3889
- Fix CollectionAssert.AreEqual fails for list of strings using IEqualityComparer following by @engyebrahim in #3886
- Fix CollectionAssert.AreEqual for collection of collections ignores even-items by @engyebrahim in #3893
- Fix mstest0036 by @engyebrahim in #3895
- Fix casing for event key value by @MarcoRossignoli in #3915
- Fix concurrency issue with registering callback on TestRunCancellationToken by @Evangelink in #3958
- Fix MSTEST0030 to correctly handle all methods by @Evangelink in #3973
- Fix MSTEST0018 FP with IEnumerable<SomeType[]> by @Evangelink in #3978
- Handle trivia properly in PreferTestCleanupOverDisposeFixer by @Youssef1313 in #4000
- Only ship TestAdapter related resources by @nohwnd in #4012
- Fix IsNonDerived implementation for attribute comparison by @Youssef1313 in #4024
- Partially improve CollectionAssert message by @Youssef1313 in #4027
- Respect custom ExpectedExceptionBase attribute implementations by @Youssef1313 in #4045
- Consider readonly TestContext as valid by @Youssef1313 in #4053
- Fix DataSourceAttribute not being discovered with TestDataSourceDiscoveryOption.DuringDiscovery by @Youssef1313 in #4058
- Ensure
--minimum-expected-tests
description is localized by @Youssef1313 in #4125 - Improve Regex to Reduce Matching Time by @thomhurst in #4160
- Refactor WarnOnUnsupportedEntries by @Youssef1313 in #4182
- Mark IgnoreAttribute as not inherited by @Youssef1313 in #4183
- Small XML doc refreshing by @Youssef1313 in #4184
- Fix local warning (and fix typo) by @Youssef1313 in #4185
- Fix analyzers package to support VB.NET by @Evangelink in #4224
- Preserve message and parameters in MSTEST0025 fixer by @Youssef1313 in #4301
- Throw exception if ExpectedExceptionBaseAttribute is applied more than once by @Youssef1313 in #4359
- Fix false positive for PreferTestCleanupOverDispose on non-test classes by @Youssef1313 in #4380
- Simplify adapter props and targets by @Evangelink in #4403
- Don't reference MTP in UWP by @Evangelink in #4402
- Fix MSTestV2Files msbuild items by @Evangelink in #4406
- Avoid nuspec when creating M.T.P.MSBuild package by @ViktorHofer in #4004
- Move off validate arg from VSTest ObjectModel by @SimonCropp in #4019
- [main] Bump System.Management from 8.0.0 to 9.0.0 by @dependabot in #4136
- [main] Bump MicrosoftCodeAnalysisAnalyzersVersion from 3.11.0-beta1.24527.2 to 3.11.0-beta1.24574.2 by @dependabot in #4137
- Bump version of playwright by @Evangelink in #4140
- Update Fakes package version by @drognanar in #4143
- Use Polyfill lock by @Evangelink in #4153
- Further
System.Threading.Lock
usages by @thomhurst in #4156 - Use VS version 17.12 by @Evangelink in #4176
- Bump version in samples by @Evangelink in #4232
- Sort UnsupportedRunConfigurationSettings by @Youssef1313 in #4234
- Fix server mode in playground by @MarcoRossignoli in #4243
- Cleanup FailedStates in TrxReportEngine by @Youssef1313 in #4247
- [main] Bump MicrosoftCodeAnalysisAnalyzersVersion from 3.11.0-beta1.24574.2 to 3.11.0-beta1.24605.2 by @dependabot in #4252
- Use
ValidationResult.ValidTask
instead ofTask.FromResult(ValidationResult.Valid())
by @Youssef1313 in #4262 - Avoid Linq allocations from usage of Union by @Youssef1313 in #4265
- Avoid repetitive string.Format call for every character of command-line options by @Youssef1313 in #4264
- More efficient reflection by @Youssef1313 in #4263
- [Performance] Avoid System.Action allocations for test context cancellation by @Youssef1313 in #4272
- [Performance] Avoid TraitCollection.AddRange call with empty array by @Youssef1313 in #4274
- [Performance] Don't parse the same runsettings for each class in the assembly by @Youssef1313 in #4270
- Simplify Ignore handling in IsTestMethodRunnable by @Youssef1313 in #4281
- Simplify AttributeComparer.IsDerived by @Youssef1313 in #4280
- [Performance] Create dictionary with the right capacity by @Youssef1313 in #4276
- [Performance] Avoid repetitive string allocations from TestRunDirectories by @Youssef1313 in #4275
- cleanup SourceGeneratedFileOperations by @SimonCropp in #4285
- remove some un-used parameters by @SimonCropp in #4283
- remove redundant ascending by @SimonCropp in #4287
- remove param values where same as default by @SimonCropp in #4286
- [Performance] Ensure ReflectionOperations return
Attribute[]
when possible by @Youssef1313 in #4271 - leverage out null pattern in IsValidDeploymentItem by @SimonCropp in #4048
- Refactor GetTestFromMethod by @Youssef1313 in #4279
- Avoid dictionary resizes when the size is approximately known by @Youssef1313 in #4313
- Cleanup duplicate logic for timeout handling when creating assembly info by @Youssef1313 in #4317
- Use
List<T>
rather thanCollection<T>
by @Youssef1313 in #4315 - Cleanup MSTest.Sdk now that analyzers are deps of framework by @Evangelink in #4407
- MSTest: 3.7.0
- MSTest.TestFramework: 3.7.0
- MSTest.TestAdapter: 3.7.0
- MSTest.Analyzers: 3.7.0
- MSTest.Sdk: 3.7.0
- Microsoft.Testing.Extensions.CrashDump: 1.5.0
- Microsoft.Testing.Extensions.HangDump: 1.5.0
- Microsoft.Testing.Extensions.HotReload: 1.5.0
- Microsoft.Testing.Extensions.Retry: 1.5.0
- Microsoft.Testing.Extensions.TrxReport: 1.5.0
See full log here
- MSTest: 3.6.4
- MSTest.TestFramework: 3.6.4
- MSTest.TestAdapter: 3.6.4
- MSTest.Analyzers: 3.6.4
- MSTest.Sdk: 3.6.4
- Microsoft.Testing.Extensions.CrashDump: 1.4.3
- Microsoft.Testing.Extensions.HangDump: 1.4.3
- Microsoft.Testing.Extensions.HotReload: 1.4.3
- Microsoft.Testing.Extensions.Retry: 1.4.3
- Microsoft.Testing.Extensions.TrxReport: 1.4.3
See full log here
- Only ship TestAdapter related resources by @nohwnd in #4013
- MSTest: 3.6.3
- MSTest.TestFramework: 3.6.3
- MSTest.TestAdapter: 3.6.3
- MSTest.Analyzers: 3.6.3
- MSTest.Sdk: 3.6.3
- Microsoft.Testing.Extensions.CrashDump: 1.4.3
- Microsoft.Testing.Extensions.HangDump: 1.4.3
- Microsoft.Testing.Extensions.HotReload: 1.4.3
- Microsoft.Testing.Extensions.Retry: 1.4.3
- Microsoft.Testing.Extensions.TrxReport: 1.4.3
See full log here
- Fix localization of test adapter messages by @nohwnd in #3949
- Fix call to EqtTrace by @nohwnd in #3952
- Fix concurrency issue with registering callback on TestRunCancellationToken by @Evangelink in #3958
- Fix MSTEST0030 to correctly handle all methods by @Evangelink in #3974
- Fix displaying inner exceptions by @Evangelink in #3965
- Fix MSTEST0018 FP with IEnumerable<SomeType[]> by @Evangelink in #3978
- MSTest: 3.6.2
- MSTest.TestFramework: 3.6.2
- MSTest.TestAdapter: 3.6.2
- MSTest.Analyzers: 3.6.2
- MSTest.Sdk: 3.6.2
- Microsoft.Testing.Extensions.CrashDump: 1.4.2
- Microsoft.Testing.Extensions.HangDump: 1.4.2
- Microsoft.Testing.Extensions.HotReload: 1.4.2
- Microsoft.Testing.Extensions.Retry: 1.4.2
- Microsoft.Testing.Extensions.TrxReport: 1.4.2
See full log here
- MSTEST0016: Fix typo in rule message and description by @Evangelink in #3808
- MSTEST0018: fix false positive with data member visibility by @Evangelink in #3866
- Fix MSTEST0036 is shown for cases where no shadowing happens by @engyebrahim #3881
- Bump VSTest to v17.11.1 by @Evangelink
- Fix MSTest hook to be always generated by @Evangelink in #3889
- Fix CollectionAssert.AreEqual fails for list of strings using IEqualityComparer following by @engyebrahim in #3886
- Fix CollectionAssert.AreEqual for collection of collections ignores even-items by @engyebrahim in #3893
- MSTest: 3.6.1
- MSTest.TestFramework: 3.6.1
- MSTest.TestAdapter: 3.6.1
- MSTest.Analyzers: 3.6.1
- MSTest.Sdk: 3.6.1
- Microsoft.Testing.Extensions.CrashDump: 1.4.1
- Microsoft.Testing.Extensions.HangDump: 1.4.1
- Microsoft.Testing.Extensions.HotReload: 1.4.1
- Microsoft.Testing.Extensions.Retry: 1.4.1
- Microsoft.Testing.Extensions.TrxReport: 1.4.1
See full log here
- Feat: Add code suppressor for CS8618 on TestContext property by @Evangelink in #3271
- Feature: add support for injecting TestContext in ctor by @Evangelink in #3267
- Feat: Add
[STATestClass]
by @Evangelink in #3278 - Feat: Add [STATestMethod] by @Evangelink in #3286
- Feat: add support for overloaded parameterized tests by @Evangelink in #3298
- Improve display name for DynamicDataAttribute by @Evangelink in #3293
- Feat: allow cooperative timeout by @Evangelink in #3314
- MSTEST0010: report when class is abstract and inheritance is not set by @engyebrahim in #3347
- MSTEST0011: report when class is abstract and inheritance is not specified by @engyebrahim in #3352
- MSTEST0010: report if InheritanceBehavior.BeforeEachDerivedClass is set on a sealed class by @engyebrahim in #3369
- MSTEST0011: report if InheritanceBehavior.BeforeEachDerivedClass is set on a sealed class by @engyebrahim in #3370
- MSTEST0018: DynamicData usage should be valid by @Evangelink in #3374
- Add analyzer for DeploymentItem by @engyebrahim in #3387
- MSTEST0004: Add code fix by @engyebrahim in #3482
- MSTEST0003: Add code fix by @engyebrahim in #3493
- Warn on invalid DisableParallelization configuration entry by @engyebrahim in #3526
- MSTEST0007: Add code fix by @engyebrahim in #3540
- MSTEST0002: Add code fix by @engyebrahim in #3554
- MSTEST0005: Add code fix by @engyebrahim in #3571
- MSTest.Sdk handles library mode by @Evangelink in #3581
- MSTest.Sdk warn or error on invalid or untested properties by @Evangelink in #3603
- MSTEST0036: Add analyzer for when a test member is shadowing another member by @engyebrahim in #3589
- Allows to cancel at multiple points before test execution by @Evangelink in #3723
- Add option to order tests by name by @Evangelink in #3796
- Fix timeout message to reflect that 0 is not allowed by @Evangelink in #3279
- Fix TestInitialize and TestCleanup analyzers to allow generic class by @Evangelink in #3280
- Fix test case id filtering for server mode by @MarcoRossignoli in #3284
- Fix collectionAssert.AreEqual fails for list of lists by @engyebrahim in #3275
- MSTEST0034: Use CleanupBehavior.EndOfClass on ClassCleanupAttribute by @engyebrahim in #3289
- Fix MSTEST0029 false positive on TestInitialize/TestCleanup by @engyebrahim in #3318
- Fix passing null to DataRow when signature is object[] by @Evangelink in #3331
- Fix spelling issues by @Evangelink in #3330
- Fix: TestCleanup is always called in case of timeout by @Evangelink in #3334
- Fix cooperative cancellation for TestInit/TestCleanup by @Evangelink in #3333
- Fix message when step is canceled through TestContext by @Evangelink in #3335
- Fix: Skip AssemblyInitialize/Cleanup when all tests are skipped by @Evangelink in #3339
- Fix XmlDataConnection by @Evangelink in #3346
- Fix class initialization/cleanup calls by @Evangelink in #3362
- Fix Assert.VerifyThrows to use standard message pattern by @Evangelink in #3363
- Refactor TestMethod DisplayName by @Evangelink in #3365
- Fix display name for parameterized tests by @Evangelink in #3366
- Fix settings parsing ignore invalid values by @engyebrahim in #3338
- use GetExceptionMessage instead of ex.Message in TestDataSource by @SimonCropp in #3415
- Fix MSTEST0036 to report only on ordinary methods by @Evangelink in #3711
- fix: TRLPlusCCancellationTokenSource doesn't cancel current TestRun by @engyebrahim in #3672
- Fix running cleanup after first test method by @nohwnd in #3764
- Perf: avoid creation of tasks by @Evangelink in #3282
- For fixtures in STA thread, use TCS instead of Task.Run by @Evangelink in #3308
- Fix typo in initialized by @nohwnd in #3319
- Highlight C# code in analyzer tests by @Evangelink in #3327
- MSTest.Sdk use Playwright 1.45.1 by @Evangelink in #3380
- MSTest.Sdk use aspire 8.1.0 by @Evangelink in #3379
- Update description for (init/cleanup) analyzers by @engyebrahim in #3391
- use SupportedOSPlatform from polyfill by @SimonCropp in #3409
- use Guard from Polyfill by @SimonCropp in #3508
- Save all code files with UTF8BOM by @nohwnd in #3536
- Save all project files with UTF8 (NOBOM) by @nohwnd in #3539
- Reduce verbosity of internal test framework by @Evangelink in #3537
- MSTest: 3.6.0
- MSTest.TestFramework: 3.6.0
- MSTest.TestAdapter: 3.6.0
- MSTest.Analyzers: 3.6.0
- MSTest.Sdk: 3.6.0
- Microsoft.Testing.Extensions.CrashDump: 1.4.0
- Microsoft.Testing.Extensions.HangDump: 1.4.0
- Microsoft.Testing.Extensions.HotReload: 1.4.0
- Microsoft.Testing.Extensions.Retry: 1.4.0
- Microsoft.Testing.Extensions.TrxReport: 1.4.0
See full log here
- Update dependencies from devdiv/DevDiv/vs-code-coverage by @dotnet-maestro in #3533
- MSTest: 3.5.2
- MSTest.TestFramework: 3.5.2
- MSTest.TestAdapter: 3.5.2
- MSTest.Analyzers: 3.5.2
- MSTest.Sdk: 3.5.2
- Microsoft.Testing.Extensions.CrashDump: 1.3.2
- Microsoft.Testing.Extensions.HangDump: 1.3.2
- Microsoft.Testing.Extensions.HotReload: 1.3.2
- Microsoft.Testing.Extensions.Retry: 1.3.2
- Microsoft.Testing.Extensions.TrxReport: 1.3.2
See full log here
- Fix XmlDataConnection by @Evangelink in #3346
- Fix timeout message to reflect that 0 is not allowed by @Evangelink in #3279
- Fix Fix TestInitialize and TestCleanup analyzers to allow generic classes by @Evangelink in #3280
- MSTest: 3.5.1
- MSTest.TestFramework: 3.5.1
- MSTest.TestAdapter: 3.5.1
- MSTest.Analyzers: 3.5.1
- MSTest.Sdk: 3.5.1
- Microsoft.Testing.Extensions.CrashDump: 1.3.2
- Microsoft.Testing.Extensions.HangDump: 1.3.2
- Microsoft.Testing.Extensions.HotReload: 1.3.2
- Microsoft.Testing.Extensions.Retry: 1.3.2
- Microsoft.Testing.Extensions.TrxReport: 1.3.2
See full log here
- Add overloads to
CollectionAssert.AreEquivalent
/AreNotEquivalent
withIEqualityComparer<T>
by @engyebrahim in #3130 - Add code fix for MSTEST0017 by @engyebrahim in #3091
- Add SDK samples from rel/3.4 by @nohwnd in #3074
- Add suppressors for VSTHRD200 by @Evangelink in #2926
- Add code fix for TestInitializeShouldBeValidAnalyzer by @Evangelink in #2890
- Add code fix for ClassCleanupShouldBeValidAnalyzer by @Evangelink in #2883
- Add code fix for AssemblyInitializeShouldBeValidAnalyzer by @Evangelink in #2882
- Add code fix for ClassInitializeShouldBeValidAnalyzer by @Evangelink in #2884
- Add code fixes for AssemblyCleanupShouldBeValidAnalyzer by @Evangelink in #2866
- Add sample of MSTest runner for WinUI by @Evangelink in #2834
- MSTEST0032: Always pass assertions by @engyebrahim in #3238
- MSTEST0025: add support for Assert.IsNull by @engyebrahim in #3233
- Update fixture analyzers to report on missing [TestClass] by @Evangelink in #3252
- Customize MSTest runner banner by @Evangelink in #3235
- Analyzer: Ensure to use Microsoft.VisualStudio.TestTools.UnitTesting.DescriptionAttribute and not System.ComponentModel.DescriptionAttribute by @engyebrahim in #3202
- MSTEST0030: Type containing [TestMethod] must be a [TestClass] by @engyebrahim in #3199
- leverage DoesNotReturnIfAttribute for better assertion by @SimonCropp in #3168
- Assertions: add support for [StringSyntax(CompositeFormat)] by @Evangelink in #3185
- Display fixture (Assembly/Class Initialize/Cleanup) methods as "test" entries by @fhnaseer in #2904
- Improve display name for string and char by @MichelZ in #3082
- Improve display name when DataRow contains arrays by @MichelZ in #3053
- TestCaseFilter with custom properties by @engyebrahim in #3015
- MSTEST0029: Public methods should be test methods by @engyebrahim in #3065
- Avoid conditionals inside assertions analyzer by @fhnaseer in #2848
- Localize console service by @nohwnd in #2900
- Code fix for TestCleanupShouldBeValidAnalyzer by @Evangelink in #2887
- Run and fail tests when ITestDataSource.GetData returns empty IEnumerable by @fhnaseer in #2865
- Include timeout duration in timeout message by @engyebrahim in #2877
- Flow execution context across fixture methods when using timeout by @Evangelink in #2843
- MSTest runner: allow overriding TestRunParameters by @Evangelink in #3106
- Fix some IDEXXX warnings by @Evangelink in #2844
- fix install-windows-sdk path by @SimonCropp in #2930
- Fix release years in changelog by @Evangelink in #3001
- Fix some diagnostics happening only in VS by @Evangelink in #3016
- Add acceptance tests for info with all extensions by @Evangelink in #3119
- Refactor STA pool code by @MarcoRossignoli in #3231
- Make IProcess disposable by @Evangekunj in #3120
- Use GetTypes() instead of DefinedTypes by @SimonCropp in #3112
- Use ConcurrentDictionary for attribute cache, and avoid func by @nohwnd in #3062
- Lower reflection overhead by @nohwnd in #2839
- avoid array alloc in CommandLineParseResult by using IReadOnlyList by @SimonCropp in #3027
- remove set for toolname on CommandLineParseResult by @SimonCropp in #3028
- remove redundant array alloc in CommandLineOptionsProviderCache by @SimonCropp in #3026
- use some StringSyntax Xml by @SimonCropp in #2974
- Use polyfill package by @Evangelink in #3014
- Use concurrent dictionary for attribute cache by @nohwnd in #3061
- MSTest.Sdk: do not use IsImplictlyDefined by @Evangelink in #2880
- Fix ResultFiles placement in TRX report by @nohwnd in #3264
- Use short date for platform build date on banner by @Evangelink in #3249
- Skipped tests count as not run by @Evangelink in #3243
- Fix running parallelized tests in STA thread by @eengyebrahim in #3213
- Fix
Assert.AreEqual
using null dynamic by @Evangelink in #3181 - Fix test run footer color to be red when not successful by @Evangelink in #3180
- Fix --info and --help when tools are registered by @Evangelink in #3123
- Fix --info when tools are present by @Evangelink in #3118
- Fix MSTEST0029 by @engyebrahim in #3090
- Fix assembly resolution with DeploymentItem (#3034) by @XXX in #3036
- Fix assembly resolution error by @XXX in #2948
- Fix property name for enabling aspire in MSTest.Sdk by @XXX in #2888
- Fix MSTEST0014 FP with arrays by @XXX in #2857
- Workaround the UWP release mode issue with DataRow data by @XXX in #3240
- Handle InvalidOperationException when accessing process ID by @XXX in #3250
- MSTEST0004: Report only on non-abstract, non-static, classes by @XXX in #3230
- Downgrade some log levels from info to debug by @Evangelink in #3206
- Retrieve PID inside try/catch by @Evangelink in #3193
- Shorten pipe names by @Evangelink in #3183
- dispose of IProcess by @SimonCropp in #3141
- ClassCleanup are not executed if testclass is ignored by @Evangelink in #3142
- Ensure ValueTask test methods are awaited by @Evangelink in #3137
- Print exceptions occurring during Task.WaitAll by @Evangelink in #3128
- Discriminate MissingMethodException from hot reload by @Evangelink in #3098
- Check that Reflect Helper caches inherited and non-inherited attributes separately by @nohwnd in #3117
- Fixes displaying arity for many (N instead of int.Max) by @engyebrahim in #3115
- MSTest: 3.5.0
- MSTest.TestFramework: 3.5.0
- MSTest.TestAdapter: 3.5.0
- MSTest.Analyzers: 3.5.0
- MSTest.Sdk: 3.5.0
- Microsoft.Testing.Extensions.CrashDump: 1.3.1
- Microsoft.Testing.Extensions.HangDump: 1.3.1
- Microsoft.Testing.Extensions.HotReload: 1.3.0
- Microsoft.Testing.Extensions.Retry: 1.3.0
- Microsoft.Testing.Extensions.TrxReport: 1.3.1
See full log here
- Revert version of Code Coverage to 17.10.4 by @Evangelink in #3048
- MSTest: 3.4.3
- MSTest.TestFramework: 3.4.3
- MSTest.TestAdapter: 3.4.3
- MSTest.Analyzers: 3.4.3
- MSTest.Sdk: 3.4.3
- Microsoft.Testing.Extensions.CrashDump: 1.2.1
- Microsoft.Testing.Extensions.HangDump: 1.2.1
- Microsoft.Testing.Extensions.HotReload: 1.2.1
- Microsoft.Testing.Extensions.Retry: 1.2.1
- Microsoft.Testing.Extensions.TrxReport: 1.2.1
See full log here
- Use latest released version for Playwright and Aspire by @Evangelink in #3024
- Fix project samples for 3.4 by @Evangelink in #3032
- Fix assembly resolution with DeploymentItem by @Evangelink in #3034
- MSTest: 3.4.2
- MSTest.TestFramework: 3.4.2
- MSTest.TestAdapter: 3.4.2
- MSTest.Analyzers: 3.4.2
- MSTest.Sdk: 3.4.2
- Microsoft.Testing.Extensions.CrashDump: 1.2.1
- Microsoft.Testing.Extensions.HangDump: 1.2.1
- Microsoft.Testing.Extensions.HotReload: 1.2.1
- Microsoft.Testing.Extensions.Retry: 1.2.1
- Microsoft.Testing.Extensions.TrxReport: 1.2.1
See full log here
- Fix assembly resolution error by @Evangelink in #2948
- MSTest: 3.4.1
- MSTest.TestFramework: 3.4.1
- MSTest.TestAdapter: 3.4.1
- MSTest.Analyzers: 3.4.1
- MSTest.Sdk: 3.4.1
- Microsoft.Testing.Extensions.CrashDump: 1.2.1
- Microsoft.Testing.Extensions.HangDump: 1.2.1
- Microsoft.Testing.Extensions.HotReload: 1.2.1
- Microsoft.Testing.Extensions.Retry: 1.2.1
- Microsoft.Testing.Extensions.TrxReport: 1.2.1
See full log here
- MSTEST0017: Assertion arguments should be passed in the correct order by @Evangelink in #2556
- Support "Central Package Management" with the MSTest.Sdk by @MarcoRossignoli in #2581
- 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
- Use System.Text.Json instead of Jsonite y @mariam-abdulla in #2564
- Update MSTest.Sdk to handle playwright by @Evangelink in #2598
- Add support for runner in WinUI mode by @Evangelink in #2617
- Init and cleanup timeout by @engyebrahim in #2570
- Add project samples for MSTest.Sdk by @Evangelink in #2675
- Cache CommandLineOption from the providers by @MarcoRossignoli in #2680
- Simplify Microsoft.Testing.Platform banner by @Evangelink in #2686
- Add support for STA thread by @Evangelink in #2682
- Improve error message when dynamic data source layout is invalid by @Evangelink in #2690
- Add global using feature in MSTest.Sdk by @Varorbc in #2701
- Added AssertInstanceOf overloads with out parameter by @Mrxx99 in #2717
- Improve error message for mismatched data driven test by @Evangelink in #2691
- SDK: add playwright default using by @Evangelink in #2730
- SDK: add global usings to VSTest targets by @Evangelink in #2731
- MSTest.Sdk: add support for Aspire by @Evangelink in #2758
- Ensure that fixtures also support sta threading by @Evangelink in #2769
- Add option to consider empty data of DynamicData as inconclusive by @engyebrahim in #2771
- Add PreferAssertFailOverAlwaysFalseConditionsAnalyzer by @Youssef1313 in #2799
- Get real exception in case of error in AssemblyInitialize by @nohwnd in #2571
- Fix MSTEST0014 to handle optional parameters by @Evangelink in #2574
- Get real exception for AssemblyCleanup/ClassInitialize/ClassCleanup by @Evangelink in #2576
- Fix MSTEST0014 problems with arrays by @Evangelink in #2607
- Fix MSTest version under testing platform by @Evangelink in #2629
- Fix MSTEST0005 to report only inside test classes by @Evangelink in #2641
- Fix TestHostControllersTestHost startup by @MarcoRossignoli in #2659
- Fix ITestHostEnvironmentVariableProvider tests by @MarcoRossignoli in #2660
- Simplify added logic for AssemblyResolution in netcore by @Evangelink in #2654
- add Tests for --list-tests does not work with --filter by @engyebrahim in #2699
- Fix false positive in TestClassShouldHaveTestMethodAnalyzer (MSTEST0016) for derived class by @engyebrahim in #2715
- Fix ThreadOperations to handle TaskCanceledException by @Evangelink in #2722
- Update PackageReferences to be properly defined by @dansiegel in #2727
- Tests for --info shows incorrect version for MSTest by @engyebrahim in #2745
- Fix typo by @thomhurst in #2749
- Fix localappdata folder for Linux and Mac by @Evangelink in #2765
- Fix deserializers for DiscoveryRequestArgs and RunRequestArgs by @mariam-abdulla in #2768
- Don't start thread/task when not using timeout for fixture methods by @Evangelink in #2825
- Fix parameters/arguments check for data driven tests by @nohwnd in #2829
- Cleaning command line validations and adding unit tests by @fhnaseer in #2847
- Fix MSTEST0014 FP with arrays by @Evangelink in #2857
- Flow execution context across fixture methods when using timeout by @Evangelink #2843
- Use dotnet-public instead of nuget feed for samples by @Evangelink in #2623
- Update NativeAOT runner example by @nohwnd in #2634
- Use Platform.MSBuild to setup nativeAot example by @nohwnd in #2645
- Remove IsPackable from the DemoMSTestSdk by @Varorbc in #2696
- allow rollForward of sdk to latestFeature by @SimonCropp in #2714
- Onboard Central Package Management by @Evangelink in #2728
- Add dependabot by @Evangelink in #2737
- perf: reduce allocations and calls to ToArray by @Evangelink in #2747
- Add test for resource recursion problem by @nohwnd in #2778
- Opt-out from CPM in samples by @Evangelink in #2805
- @mariam-abdulla made their first contribution in #2564
- @Varorbc made their first contribution in #2696
- @skanda890 made their first contribution in #2706
- @SimonCropp made their first contribution in #2714
- @Mrxx99 made their first contribution in #2717
- @dansiegel made their first contribution in #2727
- @thomhurst made their first contribution in #2749
- @Youssef1313 made their first contribution in #2799
- MSTest: 3.4.0
- MSTest.TestFramework: 3.4.0
- MSTest.TestAdapter: 3.4.0
- MSTest.Analyzers: 3.4.0
- MSTest.Sdk: 3.4.0
- Microsoft.Testing.Extensions.CrashDump: 1.2.1
- Microsoft.Testing.Extensions.HangDump: 1.2.1
- Microsoft.Testing.Extensions.HotReload: 1.2.1
- Microsoft.Testing.Extensions.Retry: 1.2.1
- Microsoft.Testing.Extensions.TrxReport: 1.2.1
See full log here
- Fix
MSTest.SDK
deps by @MarcoRossignoli in #2650
- MSTest: 3.3.1
- MSTest.TestFramework: 3.3.1
- MSTest.TestAdapter: 3.3.1
- MSTest.Analyzers: 3.3.1
- MSTest.Sdk: 3.3.1
- Microsoft.Testing.Extensions.CrashDump: 1.1.0
- Microsoft.Testing.Extensions.HangDump: 1.1.0
- Microsoft.Testing.Extensions.HotReload: 1.1.0
- Microsoft.Testing.Extensions.Retry: 1.1.0
- Microsoft.Testing.Extensions.TrxReport: 1.1.0
See full log here
- MSTEST0007: [<\Test Attributes>] can only be set on methods marked with [TestMethod] by @cvpoienaru in #2221
- MSTEST0008:
[TestInitialize]
should be valid by @engyebrahim in #2292 - MSTEST0009:
[TestCleanup]
should have valid layout by @cvpoienaru in #2312 - MSTEST0010:
[ClassInitialize]
should be valid by @engyebrahim in #2354 - MSTEST0011:
[ClassCleanup]
should be valid by @engyebrahim in #2356 - MSTEST0012:
[AssemblyInitialize]
should be valid by @engyebrahim in #2328 - MSTEST0013:
[AssemblyCleanup]
should be valid by @engyebrahim in #2353 - MSTEST0014:
[DataRow]
should be valid by @cvpoienaru in #2352 - MSTEST0015: Test method should not be ignored by @engyebrahim in #2429
- MSTEST0016: Test class should have test method by @engyebrahim in #2518
- Add support for ValueTask return type by @Evangelink in #2208
- Allow IEnumerable of tuple for DynamicData source by @Evangelink in #2226
- Add a console logger sample for the runner by @Evangelink in #2246
- Create preview.md by @nohwnd in #2268
- Use Task.Run for Assembly/Class init to allow exiting by @Evangelink in #2265
- Document logging public APIs by @Evangelink in #2290
- Document test framework public APIs by @Evangelink in #2286
- Document messages public APIs by @Evangelink in #2287
- Document command line public APIs by @Evangelink in #2285
- Document requests public APIs by @Evangelink in #2289
- Document builder public API by @Evangelink in #2283
- Document configuration public APIs by @Evangelink in #2291
- Document testhost related public APIs by @Evangelink in #2284
- Document extensions/services public APIs by @Evangelink in #2288
- Document messages public api by @MarcoRossignoli in #2357
- Complete public api docs by @MarcoRossignoli in #2359
- Assert.AreEqual allow IEquatable<\T> for actual and expected by @Evangelink in #2381
- Introduce
--exit-on-process-exit
by @MarcoRossignoli in #2434 - Add example for simple framework without VSTest bridge by @nohwnd in #2446
- Add graph query filtering doc draft by @MarcoRossignoli in #2460
- MSTEST0002: fix false-positive with static TestClass by @Evangelink in #2182
- Fix code samples by @Evangelink in #2217
- Fix setup of MSBuild Reference item entry by @Evangelink in #2220
- Fix support of WinUI for net6+ by @Evangelink in #2222
- Fix MSTEST0002 - Generic TestClass is valid by @Evangelink in #2428
- Fix MSTEST0005 to report only inside test classes by @Evangelink in #2642
- Preserve real exception and fix tests by @MarcoRossignoli in #2272
- Shorten server pipe name by @MarcoRossignoli in #2302
- Fix
TestMethod
should be valid analyzer description by @engyebrahim in #2295 - Fix command line banner output by @MarcoRossignoli in #2314
- Workaround harmless MSBuild warning in VS by @Evangelink in #2349
- Fix analyzers doc link by @Evangelink in #2361
- Remove the
TestingPlatformServer
if the runner is disabled by @MarcoRossignoli in #2409 - Honor request.Complete() by @MarcoRossignoli in #2448
- Make
RootDeploymentDirectory
name unique by @MarcoRossignoli in #2456
- Reduce calls to GetTypeInfo() by @Evangelink in #2426
- Improve warning message for generic non-abstract test classes by @Evangelink in #2427
- Remove the
Microsoft.Testing.Extensions.Telemetry
from the package by @MarcoRossignoli in #2454
- MSTest: 3.3.0
- MSTest.TestFramework: 3.3.0
- MSTest.TestAdapter: 3.3.0
- MSTest.Analyzers: 3.3.0
- Microsoft.Testing.Extensions.CrashDump: 1.1.0
- Microsoft.Testing.Extensions.HangDump: 1.1.0
- Microsoft.Testing.Extensions.HotReload: 1.1.0
- Microsoft.Testing.Extensions.Retry: 1.1.0
- Microsoft.Testing.Extensions.TrxReport: 1.1.0
See full log here
- [rel/3.2] Workaround harmless MSBuild warning in VS by @Evangelink in #2350
- [rel/3.2] Fix analyzers doc link by @Evangelink in #2362
- Assert.AreEqual allow IEquatable<T> for actual and expected by @Evangelink in #2382
- Fix msbuild integration (#2389) by @MarcoRossignoli in #2395
- Remove the
TestingPlatformServer
if the runner is disabled (#2409) by @MarcoRossignoli in #2410
- MSTest: 3.2.2
- MSTest.TestFramework: 3.2.2
- MSTest.TestAdapter: 3.2.2
- MSTest.Analyzers: 3.2.2
- Microsoft.Testing.Extensions.CrashDump: 1.0.2
- Microsoft.Testing.Extensions.HangDump: 1.0.2
- Microsoft.Testing.Extensions.HotReload: 1.0.2
- Microsoft.Testing.Extensions.Retry: 1.0.2
- Microsoft.Testing.Extensions.TrxReport: 1.0.2
See full log here
- MSTEST0002: fix false-positive with static TestClass (#2182) by @Evangelink in #2199
- Bump version of coverage and platform by @Evangelink in #2280
- [rel/3.2] Update dependencies from devdiv/DevDiv/vs-code-coverage by @dotnet-maestro in #2315
- Fix command line output validation (#2314) by @MarcoRossignoli in #2317
- [rel/3.2] Update dependencies from microsoft/testanywhere by @dotnet-maestro in #2320
- [rel/3.2] Update dependencies from microsoft/testanywhere by @dotnet-maestro in #2326
- Remove unused localization entries by @Evangelink in #2192
- Remove version fixup workaround (#2209) by @Evangelink in #2212
- MSTest: 3.2.1
- MSTest.TestFramework: 3.2.1
- MSTest.TestAdapter: 3.2.1
- MSTest.Analyzers: 3.2.1
- Microsoft.Testing.Extensions.CrashDump: 1.0.1
- Microsoft.Testing.Extensions.HangDump: 1.0.1
- Microsoft.Testing.Extensions.HotReload: 1.0.1
- Microsoft.Testing.Extensions.Retry: 1.0.1
- Microsoft.Testing.Extensions.TrxReport: 1.0.1
See full log here
- MSTest runner by @Evangelink in #1775
- Add analyzers by @Evangelink in #1870
- Add more analyzers by @Evangelink in #1974
- Rework MSTEST0002 and MSTEST0003 by @Evangelink in #1985
- Update description of MSTEST0001 by @Evangelink in #1988
- MSTEST0004: Public types should be test classes by @Evangelink in #1989
- Add readme to MSTest.Analyzer package by @Evangelink in #2006
- Add
--ignore-exit-code
andTESTINGPLATFORM_EXITCODE_IGNORE
by @MarcoRossignoli in #2057 - Add samples of runner vs dotnet test by @Evangelink in #2063
- Add mstest runner samples by @nohwnd in #2068
- Add comparison stats by @MarcoRossignoli in #2069
- Performance measurements by @jakubch1 in #2071
- Add protocol documentation by @drognanar in #2073
- Cache platform command line options by @MarcoRossignoli in #2127
- Don't stop by @nohwnd in #1737
- Fix DataRowAttribute to be cls compliant by @Evangelink in #1878
- Workaround issue with managed type name utility by @Evangelink in #1876
- Fix path normalization by @Evangelink in #1880
- MSTEST0005: TestContext should be valid by @Evangelink in #2019
- MSTEST0006: Avoid '[ExpectedException]' by @Evangelink in #2025
- Hide MissingMethodException when in hot reload mode by @Evangelink in #2028
- Fix running tests with UWP by @Evangelink in #2047
- Fix rules help link URL by @Evangelink in #2048
- Fix short link to telemetry doc by @Evangelink in #2064
- Avoid some allocations by @MarcoRossignoli in #2079
- MSTEST0001: Set default severity to Info by @Evangelink in #2077
- Remove
IEnumerable
extensions by @MarcoRossignoli in #2090 - Simplify substring by @Evangelink in #2092
- Fix mstest runner namespace by @Evangelink in #2078
- Cleanup
ICommandLineOptionsProvider
api by @MarcoRossignoli in #2093 - Update ToHumanReadableDuration by @MarcoRossignoli in #2094
- [bug] Do not wait timeout duration in case of user cancellation by @Evangelink in #2104
- TrimStackTrace should handle empty stacktrace by @Evangelink in #2113
- Update Public API by @Evangelink in #2116
- Fix issue #2121 DataTestMethodAttribute is missing a constructor by @HannoZ in #2125
- Bump and cleanup global versions by @Evangelink in #1754
- Eng and global.json housekeeping by @Evangelink in #1756
- Code clean-up by @ViktorHofer in #1757
- Bump StyleCop analyzers version by @Evangelink in #1761
- Bump version of test dependencies by @Evangelink in #1762
- Bump VSTest deps to 17.7.2 by @Evangelink in #1769
- Pin Moq to 4.18.4 for security by @Evangelink in #1770
- Clean nuget.config by @Evangelink in #1772
- Fix warnings and cleanup infra by @Evangelink in #1773
- Drop ruleset in favor of editorconfig by @Evangelink in #1780
- Enable CA1001 by @Evangelink in #1811
- Set analysis level to latest-recommended by @Evangelink in #1816
- Use modern styles and rules by @Evangelink in #1852
- Add third-parties licenses by @Evangelink in #1955
- @ViktorHofer made their first contribution in #1757
- @jakubch1 made their first contribution in #2071
- @drognanar made their first contribution in #2073
- @HannoZ made their first contribution in #2125
- MSTest: 3.2.0
- MSTest.TestFramework: 3.2.0
- MSTest.TestAdapter: 3.2.0
- MSTest.Analyzers: 3.2.0
- Microsoft.Testing.Extensions.CrashDump: 1.0.0
- Microsoft.Testing.Extensions.HangDump: 1.0.0
- Microsoft.Testing.Extensions.HotReload: 1.0.0
- Microsoft.Testing.Extensions.Retry: 1.0.0
- Microsoft.Testing.Extensions.TrxReport: 1.0.0
See full log here
- Add readme to MSTest.Analyzer package by @Evangelink in #2006
- Add
--ignore-exit-code
andTESTINGPLATFORM_EXITCODE_IGNORE
by @MarcoRossignoli in #2057 - Add samples of runner vs dotnet test by @Evangelink in #2063
- Add mstest runner samples by @nohwnd in #2068
- Add comparison stats by @MarcoRossignoli in #2069
- Performance measurements by @jakubch1 in #2071
- Add protocol documentation by @drognanar in #2073
- Cache platform command line options by @MarcoRossignoli in #2127
- MSTEST0005: TestContext should be valid by @Evangelink in #2019
- MSTEST0006: Avoid '[ExpectedException]' by @Evangelink in #2025
- Hide MissingMethodException when in hot reload mode by @Evangelink in #2028
- Fix running tests with UWP by @Evangelink in #2047
- Fix rules help link URL by @Evangelink in #2048
- Fix short link to telemetry doc by @Evangelink in #2064
- Avoid some allocations by @MarcoRossignoli in #2079
- MSTEST0001: Set default severity to Info by @Evangelink in #2077
- Remove
IEnumerable
extensions by @MarcoRossignoli in #2090 - Simplify substring by @Evangelink in #2092
- Fix mstest runner namespace by @Evangelink in #2078
- Cleanup
ICommandLineOptionsProvider
api by @MarcoRossignoli in #2093 - Update ToHumanReadableDuration by @MarcoRossignoli in #2094
- [bug] Do not wait timeout duration in case of user cancellation by @Evangelink in #2104
- TrimStackTrace should handle empty stacktrace by @Evangelink in #2113
- Update Public API by @Evangelink in #2116
- Fix issue #2121 DataTestMethodAttribute is missing a constructor by @HannoZ in #2125
- @jakubch1 made their first contribution in #2071
- @drognanar made their first contribution in #2073
- @HannoZ made their first contribution in #2125
- MSTest: 3.2.0-preview.24069.3
- MSTest.TestFramework: 3.2.0-preview.24069.3
- MSTest.TestAdapter: 3.2.0-preview.24069.3
- MSTest.Analyzers: 3.2.0-preview.24069.3
- Microsoft.Testing.Extensions.CrashDump: 1.0.0-preview.24068.6
- Microsoft.Testing.Extensions.HangDump: 1.0.0-preview.24068.6
- Microsoft.Testing.Extensions.HotReload: 1.0.0-preview.24068.6
- Microsoft.Testing.Extensions.Retry: 1.0.0-preview.24068.6
- Microsoft.Testing.Extensions.TrxReport: 1.0.0-preview.24068.6
See full log here
- Add auto-generated header to generated entry point (through upgrade of
Microsoft.Testing.Platform.MSBuild
to 1.0.0-preview.23622.9)
- MSTest: 3.2.0-preview.23623.1
- MSTest.TestFramework: 3.2.0-preview.23623.1
- MSTest.TestAdapter: 3.2.0-preview.23623.1
- MSTest.Analyzers: 3.2.0-preview.23623.1
See full log here
- MSTest runner by @Evangelink in #1775
- Add analyzers by @Evangelink in #1870
- Add more analyzers by @Evangelink in #1974
- Rework MSTEST0002 and MSTEST0003 by @Evangelink in #1985
- Update description of MSTEST0001 by @Evangelink in #1988
- MSTEST0004: Public types should be test classes by @Evangelink in #1989
- Don't stop by @nohwnd in #1737
- Fix DataRowAttribute to be cls compliant by @Evangelink in #1878
- Workaround issue with managed type name utility by @Evangelink in #1876
- Fix path normalization by @Evangelink in #1880
- Bump and cleanup global versions by @Evangelink in #1754
- Eng and global.json housekeeping by @Evangelink in #1756
- Code clean-up by @ViktorHofer in #1757
- Bump StyleCop analyzers version by @Evangelink in #1761
- Bump version of test dependencies by @Evangelink in #1762
- Bump VSTest deps to 17.7.2 by @Evangelink in #1769
- Pin Moq to 4.18.4 for security by @Evangelink in #1770
- Clean nuget.config by @Evangelink in #1772
- Fix warnings and cleanup infra by @Evangelink in #1773
- Drop ruleset in favor of editorconfig by @Evangelink in #1780
- Enable CA1001 by @Evangelink in #1811
- Set analysis level to latest-recommended by @Evangelink in #1816
- Use modern styles and rules by @Evangelink in #1852
- Add third-parties licenses by @Evangelink in #1955
- @ViktorHofer made their first contribution in #1757
- MSTest: 3.2.0-preview.23622.1
- MSTest.TestFramework: 3.2.0-preview.23622.1
- MSTest.TestAdapter: 3.2.0-preview.23622.1
- MSTest.Analyzers: 3.2.0-preview.23622.1
- Artifact
3.1.0
was corrupted during pipeline and for security reasons we cannot regenerate it.
See full log here
See full log here
- Add AsyncLocal warning #1710
- Adding warning that AssemblyResolution works only with .NET Frameworks #1669
- Onboarding to GitOps.ResourceManagement #1688
- Document data source configuration #1595
- Enable TestContext.AddResultFile API for WinUI #1593
- Add documentation for [DeploymentItem] attribute #1581
- Docs: add links to MS learning docs #1577
- Document LegacySettings- support as discontinued delta from MSTestV1 #1571
- Add link to MSTest element settings in the Documentation page #1552
- Add TreatDiscoveryWarningsAsErrors setting #1547
- Rename Helper.cs into Guard.cs
- Update Changelog.md
- Bump TestPlatform to 17.6.0 #1666
- Avoid crash when method is not found using FQN #1714
- Prevent swallowing inner exception in async error #1712
- DeploymentItem: add test for file deployment using Windows/Linux path #1710
- Fix parallel output isolation #1705
- Fix DeploymentItem to support trailing directory separator #1703
- Fix Logger.LogMessage to not call string.Format when no arguments are provided #1702
- Update AreEqual/AreNotEqual XML documentation #1563
- @unsegnor made their first contribution in #1104
- @JasonMurrayCole made their first contribution in #1119
- @engyebrahim made their first contribution in #1172
- @johnthcall made their first contribution in #1547
See full log here
- Fix out of range exception in deployment tool #1682
- Fix issue/crash with deployment items and disabled app domains #1681
See full log here
- Use Test Platform 17.4.1 instead of 17.4.0
- Revert change for timeout test execution #1675
- Fix assembly resolution error #1670
- Revert usage of System.Collections.Immutable for TypeCache
- Remove DataRowAttribute argument count limitation #1646
See full log here
- Fix issue cannot load Microsoft.TestPlatform.CoreUtilities #1502
See full log here
- Fix some race condition issue #1477
- Fix cleanup inheritance calls #1475
- Fix class/assembly cleanups log collect and attachment #1470
- Allow most APIs to accept nullable values or arguments #1467
- Add console, trace and debug writeline calls to the lifecycle integration tests #1464
- Revert Framework.Extension project to be CLSCompliant #1450
- Fix regressions with DataRow supported arguments #1446
- Add parent domain assembly resolver for netfx #1443
- Remove unneeded dash in InformationalVersion for RTM builds
- Add NotNullAttribute postcondition to Assert APIs #1441
See full log here
Breaking changes announcements #1274
- Assert.AreEqual/AreNotEqual overloads with IEquatable #1433
- Add DoesNotReturn attribute for Assert.Inconclusive methods #1422
- Allow to override GetDisplayName method from DataRowAttribute #1413
- Add computer name on the test result #1409
- Add public api analyzers #1318
- Enable nullable for TestAdapter project #1370
- Enable nullable for Platform Services #1366
- Enable nullables for Framework #1365
- Enable nullable for TestFramework.Extensions #1363
- [breaking change] Introduce strategies for test ID generation #1306
- Add support for AsyncDisposable cleanup #1288
- Add Assert.IsInstanceOfType<T> #1241
- [breaking change] Follow supported .NET frameworks:
- Dropped support for .NET Framework before 4.6.2 (net462)
- Dropped support for .NET Standard before 2.0 (netstandard2.0)
- Dropped support for UWP before 16299
- Dropped support for WinUI before 18362
- Replaced support of .NET 5 by .NETCore 3.1 and .NET 6.0
- [breaking change] Assert.AreSame/AreNotSame use generic instead of object #1430
- Make BeginTimer and EndTimer methods obsolete #1425
- [breaking change] Unify DeploymentDirectory location across target frameworks #1414
- [breaking change] Add class/assembly cleanup/init messages to first/last test #1390
- Document that DeploymentItemAttribute only works for a test class with test method #1399
- Use NewtonsoftJson v13.0.1 #1361
- [breaking change] Merge timeout behaviors for .NET Core and .NET Framework #1296
- Mark exceptions with SerializableAttribute #1186
- [breaking change] Remove Assert.AreEqual/AreNotEqual overloads with object object #1429
- Propagate UI culture to appdomain #1401
- Include localization in Test Framework NuGet #1397
- [breaking change] Refactor available ctors for DataRowAttribute #1332
- Fix issue causing null ref when test class has no namespace #1283
- [breaking change] Unwrap real exception from TargetInvocationException #1254
- Fixed the case ignoring in AreEqual() with culture parameter #1216
See full log here
- Enable proper tooling for localization #1393
- Include localization in Test Framework NuGet #1397
- Propagate UI culture to appdomain #1401
- Visual Studio grouping tests by
Traits
rendering has changed. To keep something similar to the past, you will have to use group byTraits
+Class
. #1634 - Disable again the generation of localization files
- Cleanup TestFx.Loc.props
- Update xlf files #1387
- Reformat scripts
- Re-enable localization of dlls in CI #1386
- Move platformservices localization files to the right folder #1384
- Reformat and simplify build.ps1
- Replace other instances of Env.CurrentDir with Assembly.GetExecutingA… #1380
- Update testfx repo detection mechanism #1378
- Rename folder containing localization dlls in MSTest.TestAdapter NuGet package #1398
- Fix TestContext nullabilities #1382
- Fix ThrowsException methods return nullability #1381
- Fix all markdown issues in releases.md
- Fix some failing debug assertions #1379
- DeploymentItemAttribute only works for a test class with test method #1399
- Remove unused build switch
- Remove DependsOnTargets="TestFxLocalization" for signing
- Remove stale xlf.lcl files
- MSTest: 3.0.0-preview-20221122-01
- MSTest.TestFramework: 3.0.0-preview-20221122-01
- MSTest.TestAdapter: 3.0.0-preview-20221122-01
See full log here
- Enable and fix CA1806 violations #1227
- Enable and fix CA1822 (make member static) violations #1226
- Enable and fix performance analyzers #1223
- Id generator logic restored. #1174
- Enable nullable for TestAdapter project #1370
- Enable nullable for Platform Services #1366
- Enable nullables for Framework #1365
- Enable nullable for TestFramework.Extensions #1363
- Add tests to document test suite messages #1313
- Add support for AsyncDisposable cleanup #1288
- Added version parameter to build script #1264
- Add WinUI tests to PlatformServices #1234
- Add net6.0 tests for PlatformServices #1233
- Add Assert.IsInstanceOfType<T> #1241
- Add some simple test framwork to allow testing MSTest #1242
- Merge testfx-docs repo here and update links #1326
- Install required .NET before build instead of before test #1290
- Allow mirroring. BYPASS_SECRET_SCANNING
- List files in case Pdb2Pdb.exe is not found
- List files in case Pdb2Pdb.exe is not found
- Align MicrosoftDiaSymReaderPdb2PdbVersion with arcade one
- Use Foreach-Object to display contents
- Define and apply field naming conventions #1198
- Improve release notes generator #1374
- Bump version to v3.0.0 #1373
- Sort lines in public API files
- Refactor reflection helper to return strongly typed attributes #1369
- Use NewtonsoftJson v13.0.1 #1361
- Refactor integration tests to use FluentAssertions #1349
- Revert temporary hack related to .net 6.0.10 #1346
- Naming and using cleanup #1347
- Update links to official MSTest documentation
- Revisit RFCs #1342
- Refactor available ctors for DataRowAttribute #1332
- Refactor solution items to add UnitTests folder
- Update prerequisites section
- Bring back stylecop analyzers #1314
- Update version of Microsoft.CodeAnalysis.PublicApiAnalyzers
- Update GitHub issues and PR templates #1315
- Update Install-DotNetCli end to use similar wording as other steps
- Update PlatformServices.Desktop.Component.Tests to use new test fwk #1252
- Update comment about assembly version in TestFx.targets
- Update azure-pipelines.yml
- Update azure-pipelines.yml
- Various styling refactoring #1334
- Merge extension projects into one #1202
- Merge various PlatformServices.XXX.UnitTests projects together #1232
- Merge interfaces into PlatformServices #1293
- Merge all implementations of TestContext #1302
- Merge timeout behaviors for .NET Core and .NET Framework #1296
- Merge TFM specific classes together #1209
- Merge TFM specific PlatformServices into a single PlatformServices #1208
- Try to simplify automation.cli and support of different TFMs #1312
- Don't exclude TestAssets from source control #1298
- Rename projects to better match assembly #1291
- Convert PlatformServices tests to use new test framework #1249
- Convert test.core.unit.tests to use local test framework #1259
- Convert smoke.e2e.tests and DiscoveryAndExecutionTests to use local test framework #1261
- Ensure we run core tests for all supported TFMs #1268
- Ensure we run adapter tests for all supported TFMs #1267
- Cleanup solution and test projects #1282
- Cleanup on MSTest.CoreAdapter.UnitTests #1257
- Unwrap real exception from TargetInvocationException #1254
- Convert MSTest.CoreAdapter.Unit.Tests to use new test framework #1245
- Revert CallerArgumentExpression attribute changes #1251
- Do not fail generate release task notes when skipping
- Display full packages folder
- Discard auto PRs in write-release-notes.ps1 #1173
- Split Assert class per group of feature #1238
- Improve assembly versions and available metadata #1231
- More project/files simplification for PlatformServices #1221
- Projects cleanup #1219
- Factorize out some project properties #1217
- Find TP package version using Versions.props #1211
- Simplify Link references in csproj
- Review compiler directives #1203
- Ignore commit 4bb533 from revision logs
- Use newer C# syntaxes #1200
- Ignore commit "Define and apply field naming conventions"
- Ignore convert to file-scoped namespace revision
- Convert to file-scoped namespaces #1197
- Target .NET 6 instead of .NET 5 #1196
- Prefer specific tfm over generic ones #1192
- Simplify projects dependencies and files #1193
- Target netstandard2.0 as minimal netstandard #1194
- Simplify UWP projects #1191
- Make private fields readonly when possible #1188
- Favor inline initialization over static ctor #1189
- Mark exceptions with SerializableAttribute #1186
- Apply modern C# features/syntaxes #1183
- Rename MSTest.CoreAdapter into MSTest.TestAdapter #1181
- Move test projects to SDK style #1179
- Fix broken tests and refactor test API #1352
- Fix issue causing null ref when test class has no namespace #1283
- Fix localization path
- Fix .gitignore
- Fix included package #1280
- Fix common.lib.ps1 to download latest patched SDKs #1279
- Fix included package #1280
- Fix common.lib.ps1 to download latest patched SDKs #1279
- Fix broken unit tests
- Fix testasset of ComponentTests
- Fix some typos in test names
- Fix some typos
- Fix NuGet packages content + support netcoreapp3.1 #1228
- Fix broken tests on main #1265
- Fixed the case ignoring in AreEqual() with culture parameter #1216
- Fix behavior for netcore TFMs #1230
- Fixed package restore.
- Remove class/assembly initialization messages from logs. #1339
- Remove unexpected dll in target #1308
- MSTest: 3.0.0-preview-20221110-04
- MSTest.TestFramework: 3.0.0-preview-20221110-04
- MSTest.TestAdapter: 3.0.0-preview-20221110-04
A list of changes since last release are available here
- Better messages for XXXInitialize and XXXCleanup
- TestResults folder names are now cross platform compatible, as per #678
- Bumped up version to 2.3.0
- Assert failure messages
- Ensure assertions do not fail with FormatException
- Prevent format exceptions when parameters array is empty
- [main] Update dependencies from dotnet/arcade
- MSTest: 2.3.0-preview-20220810-02
- MSTest.TestFramework: 2.3.0-preview-20220810-02
- MSTest.TestAdapter: 2.3.0-preview-20220810-02
A list of changes since last release are available here
- Added more fail paths for data serialization.
- Added MSTest meta-package.
- Static init of StackTraceHelper.typesToBeExcluded
- Update description of the Nuget packages
- Converted files to utf-8 so they can be diffed.
- Update dependencies from https://github.com/dotnet/arcade build 20220425.6
- Run dotnet format whitespace
- Fix write conflicts in parallel output
- Fixed test run executable files.
- [UITestMethod] should invoke test method with null
- MSTest.TestFramework: 2.2.10-preview-20220414-01
- MSTest.TestAdapter: 2.2.10-preview-20220414-01
A list of changes since last release are available here
🙇 Shout out to @SimonCropp, for bringing this functionality to XUnit in his https://github.com/SimonCropp/XunitContext project. And being an inspiration for implementing this.
MSTest 2.2.9 captures all Console output and attaches it to the correct test, even if you are running tests in parallel. This output is captured from your test code as well as from the tested code. And it requires no special setup.
In 2.2.8, test output is scattered among tests, in our example, one unlucky test gets all the output of other tests just mixed together:
With 2.2.9, each output is correctly attached to the test that produced it:
Also notice that we are also capturing debug, trace and error. And we are not awaiting the FastChild method, and the output is still assigned correctly. Souce code.
Due to the way that class and assembly initialize, and cleanup are invoked, their output will end up in the first test that run (or last for cleanup). This is unfortunately not easily fixable.
A list of changes since last release are available here
- Added internal versioning
- Added 500ms overhead to parallel execution tests.
- Downgrade uwp
- Add DoesNotReturnIf to Assert.IsTrue/Assert.IsFalse
- Implement Class Cleanup Lifecycle selection
- Dependency version updates.
- Added 500ms overhead to parallel execution tests.
- Updated to WindowsAppSDK 1.0.0 GA
- Updated to WindowsAppSDK 1.0.0-preview1
- Cherry-picking the changes from 2.2.7
- Fixed .nuspec files to mitigate NU5050 error.
- Fix concurrent issues in DataSerializationHelper
- Fix for incorrect Microsoft.TestPlatform.AdapterUtilities.dll for net45 target (#980)
- CVE-2017-0247 fixed
A list of changes since last release are available here
A list of changes since last release are available here
- Enable internal testclass discovery (#937)
- Allow opting-out of ITestDataSource test discovery.
A list of changes since last release are available here
- Fixes #799 by testing logged messages against "null or whitespace" instead of "null or empty"
- Fixed a bug in
ITestDataSource
data deserialization - Fixed DataSource deserialization.
- Fixed a serialization issue with DataRows.
A list of changes since last release are available here
A list of changes since last release are available here
- MSTest.TestFramework: 2.2.4-preview-20210331-02
- MSTest.TestAdapter: 2.2.4-preview-20210331-02
A list of changes since last release are available here
A list of changes since last release are available here
- NuGet package dependencies fixed.
- Unit test display name issue fixed.
- Fix infinite iteration in Matches method
A list of changes since last release are available here
- Prepend MSTest to log messages, without formatting
- TestPlatform version updated to v16.9.1
- Forward logs to EqtTrace on netcore
- ManagedNames impl. refactored.
A list of changes since last release are available here
- Fixing pdb2pdb package
- Fixing nugets
- Fixed TypesToLoadAttribute compatibility
- BugFix: WorkItemAttribute not extracted
- Pdb2Pbp path fix
- MSTest.TestFramework: 2.2.0-preview-20210115-03
- MSTest.TestAdapter: 2.2.0-preview-20210115-03
A list of changes since last release are available here
- Added support for ManagedType and ManagedClass
- Add nullable-annotated Assert.IsNotNull
- Add support to treat class/assembly warnings as errors
- Added StringComparison to StringAssert Contains(), EndsWith(), and StartsWith()
- Fix XML doc comments (code -> c)
- Fix null ref bug when base class cleanup fails when there is no derived class cleanup method
- MSTest.TestFramework: 2.2.0-preview-20201126-03
- MSTest.TestAdapter: 2.2.0-preview-20201126-03
A list of changes since last release are available here
- Set IsClassInitializeExecuted=true after base class init to avoid repeated class init calls
- Change NuGet package to use
None
ItemGroup to copy files to output directory - Improve CollectionAssert.Are*Equal docs (#711)
- enhance documentation on when the TestCleanup is executed
- Make AssemblyCleanup/ClassCleanup execute even if Initialize fails.
A list of changes since last release are available here
A list of changes since last release are available here
A list of changes since last release are available here
- MSTest.TestFramework: 2.1.0-beta2
- MSTest.TestAdapter: 2.1.0-beta2
A list of changes since last release are available here
- Fix incompatibility between multiple versions of mstest adapter present in a solution
- Build script fix to work with VS2019
- MSTest.TestFramework: 2.1.0-beta
- MSTest.TestAdapter: 2.1.0-beta
A list of changes since last release are available here
- Implemented 'AddResultFile' for NetCore TestContext
- Implemented Initialize Inheritance for ClassInitialize attribute
- Apply TestCategory from derived class on inherited test methods
- Setting MapNotRunnableToFailed to true by default
- Datarow tests - support methods with optional parameters
A list of changes since last release are available here
- Deployment Item support in .NET Core
- Support for CancellationTokenSource in TestContext to help in timeout scenario
- Correcting error message when DynamicData doesn't have any data
- MSTest.TestFramework: 2.0.0-beta4
- MSTest.TestAdapter: 2.0.0-beta4
A list of changes since last release are available here
- (BREAKING CHANGE) TestContext Properties type fixed to be IDictionary
- Base class data rows should not be executed
- Setting option for marking not runnable tests as failed
- MSTest.TestFramework: 2.0.0-beta2
- MSTest.TestAdapter: 2.0.0-beta2
A list of changes since last release are available here
- Added new runsettings configuration to deploy all files from test source location i.e. DeployTestSourceDependencies [enhancement]
- (BREAKING CHANGE) Description, WorkItem, CssIteration, CssProjectStructure Attributes will not be treated as traits
- Allow test methods returning Task to run without suppling async keyword [Contributed by Paul Spangler]
- Removed Test discovery warnings in Test Output pane [Contributed by Carlos Parra]
A list of changes since last release are available here
- Enabling Tfs properties in test context object [enhancement]
- Description, WorkItem, CssIteration, CssProjectStructure Attributes should not be treated as traits
- MSTest.TestFramework: 1.4.0-beta
- MSTest.TestAdapter: 1.4.0-beta
A list of changes since last release are available here
A list of changes since last release are available here
A list of changes since last release are available here
- Run Class Cleanup in sync with Class Initialize
- TestTimeout configurable via RunSettings [enhancement]
- Consistent behavior of GenericParameterHelper's while running and debugging [Contributed by walterlv]
- Customize display name for DynamicDataAttribute [Contributed by Brad Stoney] [enhancement]
- Fix incompatibility between multiple versions of mstest adapter present in a solution
- Fix multiple results not returning for custom TestMethod [Contributed by Cédric Bignon]
- Fix to show right error message on assembly load exception during test run
A list of changes since last release are available here
- Add information about which assembly failed to discover test [Contributed by Andrey Kurdyumov]
- Adding warning message for vsmdi file
- Add missing Microsoft.Internal.TestPlatform.ObjectModel [Contributed by Andrey Kurdyumov]
- Fixing Key collision for test run parameters
- Fix for csv x64 scenario
- DataRow DisplayName Fix in .Net framework
- MSTest.TestFramework: 1.3.0-beta2
- MSTest.TestAdapter: 1.3.0-beta2
- Fixing Key collision for test run parameters
- Fix masking assembly load failure error message
- Fix UWP tests discovery
A list of changes since last release are available here
- Adding support for DiaNavigation in UWP test adapter
- Adding filtering support at discovery
- DataSourceAttribute Implementation
A list of changes since last release are available here
- Added Mapping for TestOutcome.None to the UnitTestOutcome Enum to achieve NotExecuted behaviour in VSTS [Contributed By Irguzhav] [enhancement]
- All the Assert constructor's has been made private and the classes sealed
- Adapter is not sending TestCategory traits in Testcase object to Testhost
- TestMethod failures masked by TestCleanUp exceptions
- Multiple copies added for same test on running multiple times in IntelliTest
- MSTest.TestFramework: 1.2.0-beta3
- MSTest.TestAdapter: 1.2.0-beta3
A list of changes since last release are available here
- Support for Dynamic Data Attribute [extensibility]
- Make discovering test methods from base classes defined in another assembly the default [enhancement]
- CollectSourceInformation awareness to query source information [enhancement]
- MSTest.TestFramework: 1.2.0-beta
- MSTest.TestAdapter: 1.2.0-beta
A list of changes since last release are available here
- Ability to provide a reason for Ignored tests [enhancement]
- VB unit test project templates that ship in VS 2017 do not reference MSTest V2 nuget packages [enhancement]
- Assert.IsInstanceOf passes on value null [Contributed By LarsCelie]
- Test methods in a base class defined in a different assembly are not navigable in Test Explorer [Contributed By ajryan]
- Enable MSTest framework based tests targeting .NET Core to be run and debugged from within VSCode
- Web project templates that ship in VS 2017 do not reference MSTest V2 nuget packages
A list of changes since last release are available here
- Console.WriteLine support for .NetCore Projects [enhancement]
- Inheritance support for base classes that resides in different assemblies [enhancement]
- TestContext.Writeline does not output messages
- Logger.LogMessage logs a message mutliple times
- TestContext.CurrentTestOutcome is always InProgress in the TestCleanup method
- An inconclusive in a test initialize fails the test if it has an ExpectedException
A list of changes since last release are available here
- Ability to add custom assertions [enhancement]
This is also the first release from GitHub and with source code building against Dev15 tooling.
- Tests with Deployment Item do not run
- Run tests fail intermittently with a disconnected from server exception
- Templates and Wizards vsix should be built with RC3 tooling
Initial release.