The last several open source projects reviewed leveraged xUnit testing framework instead of NUnit. At work we use NUnit because it is FREE, ALL our unit tests are NUnit and our developer team is comfortable using NUnit. I’ve been meaning to start playing with xUnit since last summer but it keeps sliding down the list. I have chosen to leverage xUnit for a new side project to roll-up the sleves and get my hands dirty. I know some of the basics BUT am really interested to see:
- how it compares to NUnit
- BDD with xUnit.Extensions
- integration with SpecFlow – Integrating SpecFlow and xUnit
- browser automation testing with WatiN extension for xUnit or Web Testing with Selenium and xUnit
- Gallio support xUnit.
The xUnit Contrib documentation for ReSharper integration is good BUT I would give one word of advise to save time.
ReSharper Integration
After downloading xUnit extract to a tools directory, C:\tools\xunit-1.9
. Run xunit.installer.exe
to enable xUnit Test Framework support for TestDriven.NET 2.x +, ASP.NET MVC 2/3 and Windows Explorer.
xUnit ReSharper integration is provided by xUnitContrib project. xUnitContrib 5.2 supprts integration with ReSharper 5.1.3, 6.0, 6.1. The instructions for xUnitContrib 5.2 ReSharper integrations are good BUT to save time in To install into ReSharper
section:
Step 3
initially copy the noted files intoRoamingAppData
\JetBrains\ReSharper\vX.X\vs10.0\plugins, where vs10.0 is for VS2010 (use vs9.0 is for VS2008 and vs8.0 for VS2005) andRoamingAppData
is e.g. C:\Users\matt\AppData\Roaming.Step 6
did not work. Instead use,Mount File Storage
option and continue with step 7.
TestDriven.NET Integration
If you are unable to run xUnit tests using TestDriven.NET ensure you are runnning 2.x or greater and you have run xunit.installer.exe
. I was able to run unit tests with xUnit after running xunit.installer.exe
using version 3.0.2749 of TestDriven.NET. Release notes for xUnit indicates support for TestDriven.NET 2.x but there are some documented issues; reading further xUnit recommends upgrading to TestDriven.NET 3.x.