Издевательство над HttpClient в модульных тестахC#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Издевательство над HttpClient в модульных тестах

Сообщение Anonymous »

У меня возникли некоторые проблемы при попытке обернуть код для использования в модульных тестах. Проблемы вот в чем. У меня есть интерфейс IHttpHandler:

Код: Выделить всё

public interface IHttpHandler
{
HttpClient client { get; }
}
И класс, использующий его, HttpHandler:

Код: Выделить всё

public class HttpHandler : IHttpHandler
{
public HttpClient client
{
get
{
return new HttpClient();
}
}
}
А затем класс Connection, который использует simpleIOC для внедрения клиентской реализации:

Код: Выделить всё

public class Connection
{
private IHttpHandler _httpClient;

public Connection(IHttpHandler httpClient)
{
_httpClient = httpClient;
}
}
И затем у меня есть проект модульного тестирования, который имеет этот класс:

Код: Выделить всё

private IHttpHandler _httpClient;

[TestMethod]
public void TestMockConnection()
{
var client = new Connection(_httpClient);

client.doSomething();

// Here I want to somehow create a mock instance of the http client
// Instead of the real one. How Should I approach this?

}
Теперь, очевидно, у меня будут методы в классе Connection, которые будут получать данные (JSON) из моего бэкэнда. Однако я хочу написать модульные тесты для этого класса, и, очевидно, я не хочу писать тесты для реальной серверной части, а скорее для насмешки. Я попытался найти хороший ответ на этот вопрос в Google, но без особого успеха. Раньше я мог использовать Moq для издевательств, но никогда не использовал его для чего-то вроде HttpClient. Как мне подойти к этой проблеме?

Подробнее здесь: https://stackoverflow.com/questions/364 ... unit-tests
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Издевательство над HttpClient в модульных тестах
    Anonymous » » в форуме C#
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous
  • Хорошей ли практикой является издевательство над Automapper в модульных тестах?
    Anonymous » » в форуме C#
    0 Ответы
    11 Просмотры
    Последнее сообщение Anonymous
  • Ошибка утверждения при модульных тестах
    Гость » » в форуме C++
    0 Ответы
    50 Просмотры
    Последнее сообщение Гость
  • Миграция Flyway в модульных тестах выдает ошибку
    Anonymous » » в форуме JAVA
    0 Ответы
    42 Просмотры
    Последнее сообщение Anonymous
  • Как я могу использовать пакеты JDK в модульных тестах в проекте Android?
    Гость » » в форуме JAVA
    0 Ответы
    40 Просмотры
    Последнее сообщение Гость

Вернуться в «C#»