Моя команда разрабатывает приложение Web API 2 с использованием платформы Entity framework 6 ORM.Как написать интеграционные тесты?
Наша заявка действует как электронная почта, и основная цель и действие - отправить письмо от одного клиента другому.
Поскольку это основная цель приложения, всем нам хотелось бы получить интеграционный тест, который заверит нас, что письмо отправлено правильно. Это связано с тем, что мы не хотим случайно вставлять код, который сломает это.
При отправке письма основные действия, которые происходят, и что мы хотели бы, чтобы проверить являются-
- письмо получено через HTTP Post метод и проверяется на сервере
- Письмо сохранен в базе данных .
- Буква сериализована.
- Сериализованная буква отправляется в указанные пункты назначения через внешний модуль.
- Письмо десериализуется на стороне приемника.
- Письмо добавляется в базу данных получателя.
Я спрашиваю об этом, потому что я не знаю, как подойти к этому, но я действительно хочу такой тест, на который я могу положиться.
Каким должен быть тест для этого? С чего начать? Как достичь фактической отправки письма через тест и убедиться, что он работает?
Это не обязательный тест.
Благодаря
Edit:
Я не против тестов, чтобы занять длительное время, они могут работать в ночное время, но я хочу их проверить, насколько это возможно, что применение основных частей работают как и ожидалось.
Мы имеем модульные тесты для всех частей приложения, мы хотели несколько тестов, чтобы покрыть все это r и убедитесь, что мы не разрушаем отправку –
Я не против, чтобы этот тест был очень длинным и работал ночью, но я хочу, чтобы он как можно больше проверял, что все работает, а не только то, что правильные методы называются , –
Правда, и я не говорю, что вы не должны запускать интеграционный тест, однако он не должен быть частью вашей непрерывной интеграции, но что-то, что вы либо запускаете вручную, либо, в лучшем случае, ночью, иначе это будет разрушить ваш опыт разработчика. Главная проблема здесь - скорость исполнения. Если тесты начинают работать медленно, люди перестают писать их. –