АШШумилкин А. О.ОАиП · ПиТПМ
Дисциплина

ПиТПМ

Поддержка и тестирование программных модулей. В курсе 13 лекций.

01

Методология обеспечения качества ПО. Жизненный цикл дефектов. Принципы тест-дизайна.

В современной инженерии программного обеспечения (ПО) качество перестало быть факультативной характеристикой. Оно является системообразующим фактором, влияющим на стоимость владения продуктом, лояльность пользователей и репутацию…

3 467 слов
12 разделов
02

Модульное тестирование (Unit Testing). Тестирование методом «белого ящика». Метрики покрытия кода (Code Coverage).

В первой лекции мы рассмотрели подходы «черного» и «серого» ящика, при которых тестировщик взаимодействует с системой через внешние интерфейсы — пользовательский интерфейс, API, базы данных. Эти подходы незаменимы на этапах систем…

5 299 слов
12 разделов
03

Архитектура тестируемых систем. Изоляция компонентов. Использование mock-объектов и заглушек (Stubs, Mocks)

Во второй лекции мы освоили модульное тестирование как метод проверки отдельных модулей кода. Мы научились писать тесты по схеме AAA, измерять покрытие и понимать, какие участки кода остаются непроверенными. Однако мы столкнулись…

4 468 слов
10 разделов
04

Автоматизация сквозного (E2E) тестирования интерфейсов и программных интерфейсов приложений (REST API)

В предыдущих лекциях мы освоили модульное тестирование — мощный инструмент, позволяющий проверять корректность отдельных методов и классов. Мы научились изолировать тестируемый код от внешних зависимостей с помощью заглушек (Stub)…

8 008 слов
12 разделов
05

Современные концепции поддержки ПО: Рефакторинг, регрессионное тестирование и управление техническим долгом

В предыдущих лекциях мы сосредоточились на том, как создавать программное обеспечение: писать код, тестировать его, исправлять дефекты и готовить релиз. Однако у начинающих разработчиков существует устойчивый миф: «Программа напис…

9 858 слов
12 разделов
06

Интеграционное тестирование сложных распределенных систем. Тестирование слоев взаимодействия с СУБД.

В первом семестре вы освоили юнит тестирование . Давайте вспомним ключевую идею:

5 419 слов
6 разделов
07

Автоматизированное тестирование веб-интерфейсов (E2E) и управление асинхронными операциями.

В первом семестре мы познакомились с Selenium WebDriver — классическим инструментом для автоматизации браузера. Мы научились:

4 379 слов
5 разделов
08

Тестирование производительности: Нагрузочное, стресс-тестирование, стабильность и масштабируемость системы.

Вы наверняка слышали эту фразу от разработчиков (или даже сами так говорили): «У меня всё работает!» .

6 610 слов
8 разделов
09

Практики непрерывной поддержки интеграции (CI/CD). Автоматический запуск тестов в конвейерах сборки (Build Pipelines).

Представьте себе команду разработчиков в 2000 х годах. Они пишут код на своих компьютерах . Каждый работает над своей задачей. Через несколько недель или месяцев они решают, что пора «собрать релиз» .

6 564 слов
8 разделов
10

Архитектура микросервисов и стратегии их поддержки. Контрактное тестирование.

В курсе «Основы Алгоритмизации и Программирования» вы уже знакомились с понятиями монолитной и микросервисной архитектуры .

4 503 слов
7 разделов
11

Безопасность модулей программного обеспечения. Анализ уязвимостей в зависимостях программного кода (SAST/DAST).

Осталось последнее: безопасность . Если система работает, но небезопасна — она не работает . Потому что:

4 150 слов
7 разделов
12

Профилирование программного обеспечения, диагностика утечек памяти и оптимизация выполнения алгоритмов.

Представьте, что вы написали программу . Она отлично справляется со своей задачей: считает налоги, отправляет отчеты, сохраняет данные. Всё работает.

4 531 слов
7 разделов
13

Инфраструктурный мониторинг развернутых модулей (Observability): Логирование, метрики и трассировка.

Мы с вами прошли долгий путь. Научились тестировать код, интеграции, интерфейсы, нагрузку, безопасность . Научились автоматизировать проверки в CI/CD . Научились искать утечки памяти и медленные методы .

4 620 слов
8 разделов