На docs.microsoft.com есть отличное руководство о том, как это сделать: https://docs.microsoft.com/en-us/aspnet/core/test/integration-tests?view=aspnetcore-2.1
В основном вам необходимо установить пакет Microsoft.AspNetCore.Mvc.Testing в вашПротестируйте проект и получите класс «фабрики тестовых приложений» из WebApplicationFactory в своем тестовом проекте.Затем в каждом из ваших тестовых классов вы захотите создать экземпляр класса, а затем использовать WebApplicationFactory.CreateClient для получения экземпляра HttpClient.Затем вы используете экземпляр HttpClient для вызова конечных точек API по мере необходимости.
По сути, приложение WebAPI будет работать в том же процессе, что и ваши тесты, что значительно упрощает отладку.
Вы будететакже, возможно, вы захотите добавить файл конфигурации тестовой среды для тестируемого приложения (например, appsettings.Test.json) и настроить WebApplicationFactory на использование одной и той же среды для тестовых прогонов, чтобы тестовые прогоны не затрагивали вашу среду разработки (включая базу данных), и напишите некоторый код в классе «test app factory» для повторного создания / очистки тестовых баз данных или других хранилищ, используемых в ваших тестах.