When writing tests you don’t always want to use a physical database, instead opting for an in-memory solution. Whatever your reasons for doing this, with the release of Entity Framework Core we now have a couple of different options recommended by the EF team for when we are testing using in-memory databases.
These two choices for in-memory database providers depend on whether or not you’re using the
Microsoft.EntityFrameworkCore.Relational package and if you need the full behaviour of a relational database during testing.
If this doesn’t apply to you, you can use the Entity Framework Core In-Memory Database Provider (
Microsoft.EntityFrameworkCore.InMemory). If you do need this behavior, you can use the SQLite Database Provider (
Microsoft.EntityFrameworkCore.Sqlite) using the SQLite in-memory mode.