fsharp-testing

Automate F# unit, property-based, and integration tests with xUnit, FsUnit, Unquote, and FsCheck.

Updated Apr 13, 2026
One-click install
npx skills add https://github.com/sakamoto-family-smile/agent_monorepo --skill fsharp-testing
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: fsharp-testing
Source: https://github.com/sakamoto-family-smile/agent_monorepo/tree/main/.claude/skills/ecc/fsharp-testing
Command: npx skills add https://github.com/sakamoto-family-smile/agent_monorepo --skill fsharp-testing

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

F# projects often struggle with consistent testing practices across the unit, integration, and property-based testing landscapes. This skill consolidates tried-and-true patterns (xUnit, FsUnit, Unquote, FsCheck) and modern testing workflows to raise quality and maintainability.

Core Features & Use Cases

  • Unit tests with xUnit + FsUnit
  • Assertions with Unquote
  • Async tests and property-based testing with FsCheck
  • Custom generators for property-based tests
  • Mocking dependencies with NSubstitute
  • ASP.NET Core integration tests using WebApplicationFactory
  • Test organization and scaffolding for large F# projects

Quick Start

Enable this skill to scaffold comprehensive F# tests across unit, property-based, and integration workflows.

Frequently Asked Questions about fsharp-testing

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up F# unit tests with xUnit and FsUnit?

F# unit tests with xUnit and FsUnit are structured by applying consistent testing patterns and best practices, enforcing specific tooling to scaffold, execute, and verify tests across .NET projects for improved maintainability and quality.

What is property-based testing in F# and how does FsCheck work?

Property-based testing in F# uses FsCheck to generate custom test data and automatically verify properties across a wide range of inputs, replacing manual test cases with automated, exhaustive testing workflows for robust .NET applications.

How do I write F# assertions with Unquote?

F# assertions with Unquote are written by evaluating F# expressions and providing detailed error messages upon failure, complementing xUnit and FsUnit to enforce clear, readable verification logic within testing workflows.

Can I use NSubstitute for mocking dependencies in F# testing?

Yes, NSubstitute is enforced for mocking dependencies in F# testing, allowing you to isolate components and verify interactions within unit tests across .NET projects using the established testing patterns.

How do I create ASP.NET Core integration tests for F# projects?

ASP.NET Core integration tests for F# projects are created using WebApplicationFactory and Testcontainers to structure, execute, and verify tests, enforcing consistent integration testing patterns across F# codebases.

What's the best way to organize F# tests in a large project?

Organizing F# tests in large projects involves applying consistent test organization and scaffolding patterns across unit, property-based, and integration tests, consolidating tooling like xUnit, FsCheck, and Unquote to raise quality and maintainability.