Release Notes: August 4, 2015
xUnit.net v2 2.1 Beta 4
Core framework
- Added support for Universal Windows Platform.
- Added support for DNX Beta 6.
- Added support for the new
dotnet
NuGet target framework.
-
Added the ability to configure
your unit test projects using JSON, supported by all project types.
The
App.config
-based configuration system continues to be
supported for desktop and PCL projects only.
-
Added output into the default runner reporter, so the three text-based
runners (console, MSBuild, and DNX) should now show test output.
-
You can now use constructor injection to get access to your collection
fixtures from within your class fixtures' constructors.
-
Using
BeforeAfterTestAttribute
-derived classes is now supported
on test collection definitions (in addition to being supported on test
classes and test methods).
- Brought back
[ClassData]
from the v1 code base.
-
Improved reporting of serialization issues (mostly affects the Visual Studio
runner).
-
The paths used by the NuGet packages for PCL259 libraries have been
made shorter. Hopefully this will alleviate some issues related to
exceeding
MAX_PATH
on the file system when using xUnit.net.
-
BUG: The serialization system could not correct roundtrip
float.MinValue
, float.MaxValue
,
double.MinValue
or double.MaxValue
. This primarily
affect theories using these values, when run in Visual Studio.
-
BUG: Environmentally enabled reporters (like TeamCity and
AppVeyor) should override explicitly chosen reporters.
-
BUG: xUnit.net was unable to load signed test assemblies.
Extensibility
-
Runner authors can now opt out of using app domains when running on
the desktop CLR. The flag is passed to
XunitFrontController
,
Xunit1
, Xunit2
, and Xunit2Discoverer
.
This is a breaking API change, so that authors will be aware of the impact
of this potential change.
-
The discovery systems in
FactAttributeDiscoverer
and
TheoryAttributeDiscoverer
have been enhanced
-
Added
ITestFrameworkExecutionStarting
and
ITestFrameworkExecutionFinished
messages for runner reporters.
-
Added
TestInvoker.CallTestMethod
as an extensibility point.
-
BUG: Fixed a bug where types which implemented
IXunitSerializable
but did not actually serialize anything
were not working.
Console Runner
- Added a -noappdomain switch to disable using app domains.
- BUG: XSL-T transforms were being opened as read/write
MSBuild Runner
-
Added an
AppDomains
property to the xunit
task, to
disable using app domains.
TestDriven.NET runner
-
Turned off shadow copying when using TestDriven.NET. This was the behavior
in v1, but it was inadvertently turned on when the code was moved to v2 2.0.
Visual Studio Runner 2.1 Beta 4
For information on using xUnit.net from within Visual Studio, see
Running xUnit.net tests in Visual
Studio.
-
Added support for Universal Windows Platform. To write unit tests for UWP,
create a new UWP unit test project, then remove the reference to MSTest.
Add your xUnit.net package references.
-
Added support for using traits to filter tests when using
vstest.console.exe
and Visual Studio Online.
-
Added a bunch of new diagnostic messages, which should help when debugging
test discovery and execution issues.
-
BUG: Fixed an issue where some tests may not have been
run when using Visual Studio 2015 (in particular, theories from v1 or
any v2 theory will non-serializable data).
-
BUG: Fixed an issue with test discovery being broken when
the display name of a test is longer than ~ 450 characters.
DNX Runner 2.1 Beta 4
For information on using xUnit.net from DNX projects, see
Getting Started with DNX.
- Added support for DNX Beta 6.
-
The
xunit.assert.source
NuGet package is now usable via DNX.
Unlike with older services, you will not see (or be able to edit) the
source for the built-in assertions, but you can extend the built-in
Assert
class (which is a partial class).
-
Due to the switch to
dotnet
libraries for DNX, the ability to
limit the number of threads running tests has been temporarily removed from
the DNX runner. This functionality will be restored once dnx451
is retired, as the feature now requires dnx46
. You can still
enable/disable parallelism (and when enabled, the system will use the
built-in thread pool to run the tests).
-
BUG: If the destination folder for the XML report does
not exist, it will be created.
-
BUG: Fixed an issue where the DNX runner would append
to the XML file when writing the XML report, rather than overwriting it
(as was intended).