# Тестирование

Редактировал(а) Alexandr Fokin 2024/01/11 16:27

#### Внутренние ссылки:

###### Дочерние страницы:

###### Обратные ссылки:

- Безопасно by design | Ден Берг
- ASP.NET Core. Сценарии
- Сценарии
- Вопрос тестирования
- Создание микросервисов | Сэм Ньюмен | O’Reilly
- Простой moq для MediatR command
- Практическая автоматизация процессов - Бернд Рюкер | O’Reilly
- Тестирование
- Микросервисы. Паттерны разработки и рефакторинга. | Крис Ричардсон.

| Кодовая база может быть представлена в виде снимков состояний. Каждый раз, когда мы вносим изменения в код, мы берем за основу некое состояние и добавляем. меняем строки кода, тем самым создавая новое состояние. Условно, мы можем сказать, что предыдущее состояние является корректным - в нем программа выполняет поставленные задачи, а вот состояние после изменения может содержать ошибки. Механизмы тестирования призваны удостовериться, что новое состояние кодовой базы (версия приложения), работает корректно. Тест описывание наши ожидания относительно поведения программы. Выполнение теста подтверждает, что код ведет себя именно так, как он него ожидается. (Это может касаться, как обязательств интерфейсов на уровне кода, так и поведение и контракт web api, UI, отправки сообщений, состояния БД, поведения отдельно взятой функции).
| AS IS TO BE
| Вопрос стоимости создания и поддержания тестов.
| Функциональное и нефункциональное тестирование.
Тип |
--- | ---
Unit test. Модульное тестирование. | Тестирование отдельных модулей (компонентов) системы(программы) в изолированной среде, с заранее известными входными и выходными значениями тестов. Используется техника подмены реализации, когда вместо зависимостей классу передаются заглушки с заранее известным поведением и наборами данных (MOQ). Обычно предполагает изолирование от внешних систем и хранилищ данных. Обычно является наиболее дешевым с точки зрения выполнения. MOQ - объекты, выполняющий роль заглушки, замещающей реальны объекты, с заранее известными входами и выходами.
Интеграционное тестирование | Тестирование взаимодействия между собой различных модулей системы. По сравнению с UnitTest более приближено к реальному виду системы.
Регрессионное тестирование | Проверка функционала, который уже существовал в системе и не является новым для нее. Суть в том, чтобы убедиться, что в рамках доработок системы старые функции/варианты использования не были повреждены/некорректно изменены.
Нагрузочное тестирование | Проверка, что инфраструктура системы справляется с предполагаемой нагрузкой. Проверка производительности компонентов системы.
| Автоматизированное интеграционное тестирование ASP.NET приложения https://habr.com/ru/post/174735/ Автоматизация тестирования Web-приложений https://habr.com/ru/post/178407/ В чём разница Smoke, Sanity, Regression, Re-test и как их различать? https://habr.com/ru/post/358142/

Теги: Тестирование moq
Создал(а) Alexandr Fokin 2020/01/05 22:48

- Комментарии (3)
- Вложения (0)
- История
- Информация

## Приложения