Skip to content
SPECIFICTION
Get listed

FsCheck vs Pest

FsCheck

fscheck.github.io

Pest

pestphp.com

Side by side

FigureFsCheckPest
Price fromFreeFree
Free planYesYes
Free trial——
Open source——
WindowsYesYes
macOSYesYes
LinuxYesYes
Self-hosted—Yes
Plans published11
Spec score · Unit Testing Frameworks8.4 (#2)8.2 (#7)
IntegrationsThe project documents integrations with xUnit.net and NUnit, and user-created integrations with Expecto, Fuchu, AutoFixture and MSTest.Pest's team-maintained plugins include Faker, Laravel, and Livewire.
PurposeFsCheck automatically tests .NET programs by checking properties against randomly generated cases.Pest is a PHP testing framework for developers and AI agents.
SupportThe project invites users to report issues on GitHub and says contributors may open issues about documentation problems or gaps.Pest's maintainers say they cannot guarantee a fixed bug resolution time or a fix for every issue; bug fixes for outdated versions are available for 12 months after the latest version's release.

Plans

FsCheck

  • FsCheckFree

FsCheck pricing →

Pest

  • PestFree

Pest pricing →

In their own words

FsCheck

FsCheck checks properties of.NET programs against randomly generated cases. Developers can express properties in F#, C# or VB, then run them with the built-in runner from an interactive session, a command-line program or a test framework. Integrations are documented for xUnit.net and NUnit, with user-created integrations for Expecto, Fuchu, AutoFixture and MSTest. When a property fails, FsCheck shrinks the input and shows a minimal counterexample. Developers can also define custom generators and shrinkers and group them in Arbitrary instances. The library supports parameterized cases and parallel execution, and its packages and NUnit and xUnit.NET plugins are available from NuGet. FsCheck is free: its listed plan is free, with a BSD license permitting commercial and non-commercial modification and redistribution. It runs on Linux, macOS and Windows. The project maintains version 3.x, but its documentation covers 2.x and is described as out of date and incomplete. Its model-based testing API is experimental and exempt from semantic-versioning guarantees.

Visit fscheck.github.io

Pest

Pest is a free PHP testing framework for developers and AI agents, installed in a PHP project as a Composer development dependency. Pest 5 requires PHP 8.4 or later. It supports parallel execution, coverage, mutation and snapshot testing, profiling, architectural testing and browser testing. Its Browser plugin uses Playwright for page interactions, while the Agent plugin lets coding agents run one-off application checks and can drive a real browser when the Browser plugin is installed. Pest Evals combines deterministic tests with AI-powered scorers for evaluating LLM output. The Tia Engine reruns tests affected by recent changes and requires PCOV or Xdebug as a coverage driver. Pest 5 includes PHPStan and Rector plugins; team-maintained plugins include Faker, Laravel and Livewire. JetBrains maintains the PhpStorm plugin, included by default since version 2023.3. Pest supports parameterized cases but does not include built-in mocks. Its maintainers say bug fixes for outdated major versions are available for 12 months after the latest version's release, without a guaranteed resolution time or fix for every issue.

Visit pestphp.com