#c# #visual-studio #unit-testing #nuget-package
#c# #visual-studio #модульное тестирование #nuget-пакет
Вопрос:
Visual Studio 2019. c #. Существующий модульный тест после некоторых изменений начал завершаться ошибкой с сообщением об ошибке
Система.Исключение InvalidOperationException: нет службы для типа ‘Microsoft.Зарегистрирован Extensions.Http.DefaultHttpClientFactory».
Интересно то, что в тестируемый код не было внесено никаких прямых изменений. Обновлено несколько пакетов и все.
Ответ №1:
Я обнаружил, что для решения проблемы необходимо установить пакет Microsoft.AspNet.WebAPI.Ядро 5.2.7 (версия на момент публикации сообщения)
и после этого мне пришлось реализовать IHttpClientFactory
Из-за этого тест был простым
public class HttpClientFactoryTest : IHttpClientFactory
{
public HttpClient CreateClient(string name)
{
var config = new HttpConfiguration();
config.MapHttpAttributeRoutes();
var inMemoryServer = new HttpServer(config);
return new HttpClient(inMemoryServer);
}
}
Тогда также необходимо было зарегистрировать такой тип
unityContainer.RegisterType<IHttpClientFactory, HttpClientFactoryTest>();
После этого ошибка исчезла.
Вот и все
Комментарии:
1. Похоже, ваша проблема решена, поэтому, пожалуйста, подумайте о том, чтобы принять ее .