![]() |
VOOZH | about |
dotnet add package Reo.Core.Testing --version 10.0.210
NuGet\Install-Package Reo.Core.Testing -Version 10.0.210
<PackageReference Include="Reo.Core.Testing" Version="10.0.210" />
<PackageVersion Include="Reo.Core.Testing" Version="10.0.210" />Directory.Packages.props
<PackageReference Include="Reo.Core.Testing" />Project file
paket add Reo.Core.Testing --version 10.0.210
#r "nuget: Reo.Core.Testing, 10.0.210"
#:package Reo.Core.Testing@10.0.210
#addin nuget:?package=Reo.Core.Testing&version=10.0.210Install as a Cake Addin
#tool nuget:?package=Reo.Core.Testing&version=10.0.210Install as a Cake Tool
Reo.Core.Testing — это библиотека для упрощения тестирования в .NET-приложениях, особенно при работе с базами данных. Пакет предоставляет инструменты для инициализации тестовых контекстов, очистки данных, автоматического мокирования сервисов и настройки тестовой инфраструктуры. Он решает проблемы, связанные с дублированием кода для настройки тестов, сложностью управления тестовыми данными и необходимостью интеграции с различными поставщиками баз данных.
TestDbContextInitCore<TDbContext>
Абстрактный класс для инициализации тестовых контекстов баз данных. Поддерживает настройку поставщиков данных (
SQLite, InMemory) и интеграцию с AutoMocker.
RegisteredProviders
Класс для хранения и управления зарегистрированными поставщиками данных (например, IDataProvider<int>,
IDataProvider<Guid>).
AutoMocker (из Moq.AutoMock)
Инструмент для автоматического мокирования сервисов, упрощающий настройку тестовых сценариев.
4 TestDbProviderType
Перечисление для выбора типа тестового поставщика баз данных (SQLite in-memory, InMemory).
Используйте следующие команды для установки пакета:
# NuGet Package Manager
Install-Package Reo.Core.Testing
# .NET CLI
dotnet add package Reo.Core.Testing
public void ConfigureServices(IServiceCollection services)
{
services.AddDbContext<ApplicationDbContext>(options =>
options.UseInMemoryDatabase("TestDatabase"));
services.AddSingleton<RegisteredProviders>(provider => new RegisteredProviders
{
EntityIntId = provider.GetRequiredService<IDataProvider<int>>(),
EntityGuidId = provider.GetRequiredService<IDataProvider<Guid>>()
});
}
TestDbProviderType (например, SqliteMemory или
MicrosoftInMemory).DbClearTypes (удаление базы или очистка таблиц).public class MyTest : TestDbContextInitCore<ApplicationDbContext>
{
public MyTest() : base(TestDbProviderType.SqliteMemory)
{
// Автоматическая настройка контекста и поставщиков
}
[Fact]
public void TestDatabaseInitialization()
{
using var context = Mocker.Resolve<ApplicationDbContext>();
// Проверка инициализации таблиц
}
}
public class MyServiceTests
{
private readonly AutoMocker _mocker = new();
[Fact]
public void TestServiceBehavior()
{
var service = _mocker.Create<MyService>();
var mockRepository = _mocker.GetMock<IDataRepository>();
mockRepository.Setup(repo => repo.GetData()).Returns(new List<MyData>());
var result = service.ProcessData();
Assert.NotNull(result);
}
}
Данный пакет распространяется под лицензией MIT.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net10.0 net10.0 is compatible. net10.0-android net10.0-android was computed. net10.0-browser net10.0-browser was computed. net10.0-ios net10.0-ios was computed. net10.0-maccatalyst net10.0-maccatalyst was computed. net10.0-macos net10.0-macos was computed. net10.0-tvos net10.0-tvos was computed. net10.0-windows net10.0-windows was computed. |
Showing the top 2 NuGet packages that depend on Reo.Core.Testing:
| Package | Downloads |
|---|---|
|
Reo.Core.IntegrationTesting
Package Description |
|
|
Reo.Core.CodeGeneratorTesting
Package Description |
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 10.0.210 | 0 | 6/18/2026 |
| 10.0.209 | 67 | 6/17/2026 |
| 10.0.208 | 66 | 6/17/2026 |
| 10.0.207 | 72 | 6/17/2026 |
| 10.0.206 | 68 | 6/17/2026 |
| 10.0.205 | 95 | 6/16/2026 |
| 10.0.204 | 91 | 6/16/2026 |
| 10.0.203 | 89 | 6/16/2026 |
| 10.0.202 | 90 | 6/16/2026 |
| 10.0.201 | 91 | 6/16/2026 |
| 10.0.200 | 91 | 6/16/2026 |
| 10.0.199 | 88 | 6/16/2026 |
| 10.0.198 | 87 | 6/16/2026 |
| 10.0.197 | 111 | 6/16/2026 |
| 10.0.196 | 92 | 6/16/2026 |
| 10.0.195 | 101 | 6/15/2026 |
| 10.0.194 | 104 | 6/15/2026 |
| 10.0.193 | 104 | 6/15/2026 |
| 10.0.192 | 109 | 6/11/2026 |
| 10.0.191 | 110 | 6/11/2026 |