C#

EfCore.TestSupport

Tools for helping in unit testing applications that use Entity Framework Core

J

JonPSmith

Dernière activité 23 déc. 2025
JonPSmith/EfCore.TestSupport

368

étoiles

57

forks

3

issues ouvertes

Ce README est souvent en anglais.

EfCore.TestSupport

This NuGet package containing methods to help test applications that use Entity Framework Core for database access using SQL Server, PostgreSQL, Cosmos DB, and a generic in-memory SQLite approach which works with every EF Core database provider (with limitations). This readme provides links to the documentation in the EfCore.TestSupport wiki. Also see Release Notes for information on changes.

The EfCore.TestSupport library is available on NuGet as EfCore.TestSupport and is an open-source library under the MIT license. See ReleaseNotes for details of the changes in each version.

List of versions and which .NET framework they support

Since .NET 8 this library only supports one .NET. This change makes it easier to update to the next .NET release.

  • Version 10.?.? supports NET 10 only
  • Version 9.?.? supports NET 9 only
  • Version 8.?.? supports NET 8 only
  • Version 6.?.? supports NET 6, 7 and 8

There are older versions of the EfCore.TestSupport library, but .NET lower than .NET 5 are not supported by Microsoft.

Documentation

The NuGet package EfCore.TestSupport containing methods to help you unit test applications that use Entity Framework Core for database access. This readme defines the various groups, with links to the documentation in the EfCore.TestSupport wiki.

NOTE: The techniques are explained in much more details in chapter 17 of the book Entity Framework in Action, second edition.

Here is an image covering just a few of the methods available in this library.

Examples of library methods in use

The various groups of tools are:

  1. Helpers to create an in-memory Sqlite database for unit testing.
    See Sqlite in memory test database.
  2. Helpers to create connection strings with a unique database name.
    See Creating connection strings.
  3. Helpers for creating unique SQL Server databases for unit testing.
    See Create SQL Server databases.
  4. Helpers to create Cosmos DB databases linked to Azure Cosmos DB Emulator.
    See Create Cosmos DB options.
  5. Helper for wiping all data and resetting the schema a SQL Server database.
    See Quickly wipe and reset schema on SQL Server.
  6. Various tools for getting test data, or file paths to test data.
    See Test Data tools.
  7. A tool for applying a SQL script file to a EF Core database.
    See Run SQL Script.
  8. Tools for capturing EF Core logging.
    See Capture EF Core logging.

Projets similaires

Entity Framework Effort is a powerful tool that enables a convenient way to create automated tests for Entity Framework based applications.

C#
Zzzzprojects
430 étoiles99

A modern, fast and flexible .NET testing framework

C#csharpdotnettest
Tthomhurst
4 k étoiles138

Add-on feature for Entity Framework

C#
Zzzzprojects
1,3 k étoiles380