FsUnit is a set of libraries that makes unit-testing with F# more enjoyable. It adds a special syntax to your favorite .NET testing framework. FsUnit currently supports NUnit, xUnit, and MsTest.
The goals of FsUnit are:
- to make unit-testing feel more at home in F#, i.e., more functional.
- to leverage existing test frameworks while at the same time adapting them to the F# language in new ways.
GitHub makes collaboration very easy. To get involved with FsUnit, simply follow the directions provided by GitHub to fork this repository, then implement lots of cool stuff, and finally send a pull request.
A few things to keep in mind:
-
Going forward, FsUnit will aim to support as much functionality as possible across all supported testing frameworks.
-
Development environments need to be setup to run tests for xUnit and NUnit. A product like ReSharper can make this easier.
-
Since the unit tests for FsUnit are written with FsUnit, failing tests are just as important as passing tests.
- Find and run either
./build.shorbuild.cmd(depending on your platform). - Restore local tools with
dotnet tool restore; usedotnet outdatedto review or update NuGet dependencies. - Push a
v<version>tag matching the latest entry inRELEASE_NOTES.mdto build and publish all six NuGet packages. - Configure a NuGet.org Trusted Publisher for
fsprojects/FsUnitand.github/workflows/publish.yml; add the NuGet account username (not email) as theNUGET_USERGitHub secret.
The default maintainer account for projects under "fsprojects" is @fsprojectsgit - F# Community Project Incubation Space (repo management)
