Today, we’re shipping one new release and two new prereleases:
0.6.0-pre.7
1.17.0
(release notes)3.0.0-pre.49
(release notes)It’s been 3 weeks since the release of 0.5.0-pre.27
.
As always, we’d like to thank all the users who contributed to the success of xUnit.net through usage, feedback, and code contributions. 🎉
We have created two new pieces of documentation that we will continue to evolve as we create newer prerelease versions of xUnit.net v3:
We recommend you read them in that order. The migration guide will help you understand what changes are necessary to get your v2 test project ready to upgrade to v3, and it includes a fairly comprehensive list of the changes (and hopefully relatively small bumps in the road) that you can expect. This latter part is provided primarily in resource form, so rather than reading the giant boring lists, you can do a search on the page when you encounter issues with specific types. Once you’ve got your project ported over to v3, the what’s new guide will be useful to understand what new features are available to you with v3.
Please note that you will need to use a version 3.x.y
release of the Visual Studio adapter to run v3 tests, as the 2.x.y
releases are only capable of running v1 and v2 tests. We will eventually stop shipping the 2.x.y
builds, as the 3.x.y
builds are also capable of running v1 and v2 tests. We’d love if users test the 3.x.y
release of the Visual Studio adapter even if they cannot migrate to the v3 Core Framework.
These release notes are a list of changes from 0.5.0-pre.27
to 0.6.0-pre.7
.
We have introduced a new base class (TheoryDataRowBase
) that TheoryDataRow
and all the generic versions of TheoryDataRow<>
derive from. Previously, the generic versions derived from the non-generic TheoryDataRow
, but this is no longer the case (so this is a breaking change from an inheritance/identity perspective).
We have updated the generic versions of TheoryData<>
, TheoryDataRow<>
, and MatrixTheoryData<>
to now accept up to 15 parameters. xunit/xunit#3049
BUG: We have fixed an issue with theory data serialization where arrays of enums or arrays of types implementing IXunitSerializable
were coming back as the wrong array type, causing a catastrophic failure when trying to run the tests in Test Explorer. xunit/xunit#3051
Assert.IsType
and Assert.IsNotType
which accept a new parameter: bool exactMatch
. Passing true
for this value is the same as calling the old overloads; passing false
for this value is the same as calling Assert.IsAssignableFrom
or Assert.IsNotAssignableFrom
. These new overloads attempt to address naming confusing regarding “assignable from”, specifically which argument is the “from” and which is the “to”. xunit/xunit#3044Functional:
In-box Console and MSBuild runners
Command line (dotnet test
anddotnet vstest
) [tested with17.11.9
]
Visual Studio 2022 (Test Explorer) [tested with17.11.5
]
Visual Studio Code [tested with1.95.1
]
Support for dotnet test
, Visual Studio, and Visual Studio Code comes from the Visual Studio runner (a 3.x.y
build of xunit.runner.visualstudio
).
Functional:
NCrunch [requires
5.10
or later]
Resharper/Rider [requires2024.2
or later]
Status unknown:
CodeRush