Ниже — полное руководство по написанию ВКР на тему «Создание системы автоматического тестирования программного обеспечения» для студентов Синергия, специальность 09.03.02. Всё, что нужно: актуальность, структура, примеры, чек-листы и ответы на частые вопросы. Начнём с сути — всё остальное построим вокруг.
Диплом (ВКР) по теме Создание системы автоматического тестирования программного обеспечения
Нужен разбор вашей темы Создание системы автоматического тестирования программного обеспечения? Получите бесплатную консультацию: @Diplomit | +7 (987) 915-99-32 (WhatsApp)
Актуальность темы
По данным отчёта Synopsys 2024, 83% найденных уязвимостей в ПО возникают на этапе разработки. При этом ручное тестирование покрывает в среднем лишь 40% кода. В Синергии студенты часто работают с реальными кейсами — например, автоматизация тестирования веб-приложений для IT-стартапов, где каждый баг после релиза стоит дорого.
Заметьте: если вы разрабатываете систему тестирования, но не привязываете её к реальному процессу (например, CI/CD в команде из 5+ разработчиков), научрук может снизить оценку. По практике — в 7 из 10 работ студентов Синергия не хватает анализа метрик: количество тестов, время выполнения, уровень покрытия.
Кейс: в одной из работ 2025 года система тестирования была внедрена в учебный проект по разработке CRM. Результат — сокращение времени на regression-тесты с 8 часов до 45 минут. Данные взяты из логов Jenkins и Jira — это и стало сильной стороной практической части.
Цель и задачи
Цель: разработка системы автоматического тестирования программного обеспечения для повышения качества и скорости выпуска обновлений веб-приложения.
Задачи (соответствуют структуре методички Синергия):
- Проанализировать текущий процесс тестирования в выбранной организации (или учебном проекте).
- Смоделировать процессы «КАК ЕСТЬ» и «КАК ДОЛЖНО БЫТЬ» с использованием BPMN и DFD.
- Обосновать выбор инструментов (Selenium, PyTest, JUnit и др.) на основе сравнительного анализа.
- Разработать архитектуру системы автоматического тестирования.
- Реализовать ключевые модули: запуск тестов, генерация отчётов, интеграция с CI/CD.
- Рассчитать экономическую эффективность внедрения (TCO, ROI).
Каждая задача — это заголовок в главе. Не начинайте с «разработка ТЗ» — это нарушает логику. Сначала анализ, потом проектирование, потом экономика.
Объект и предмет
Объект: процесс разработки и тестирования веб-приложения в IT-компании (например, ООО «ТехноЛаб» — можно взять реальную или условную, но с описанием структуры).
Предмет: автоматизация регрессионного и модульного тестирования с использованием Python и Selenium.
Ошибка студентов: подмена предмета объектом. Не пишите: «Предмет — веб-приложение». Это объект. Предмет — область, которую вы автоматизируете. Здесь — тестирование.
Ожидаемые результаты и практическая значимость
После внедрения системы:
- Снижение времени на регрессионное тестирование на 60–75%.
- Рост покрытия кода тестами с 40% до 85%.
- Снижение количества багов в продакшене на 40% (по данным Jira за 3 месяца).
- Автоматическая генерация отчётов в формате HTML и отправка в Telegram-бот.
Практическая значимость: система может быть использована в учебных проектах, стартапах и малых IT-компаниях. Особенно полезна при частых релизах — например, 2–3 раза в неделю.
Пример введения для Синергия
С ростом сложности программного обеспечения ручное тестирование становится неэффективным. В среднем, разработчик тратит до 30% рабочего времени на проверку уже написанного кода. В ООО «ТехноЛаб», где разрабатывается веб-платформа для управления проектами, тестирование выполняется вручную, что приводит к задержкам релизов и ошибкам в продакшене. За последний квартал зафиксировано 27 критических багов, из них 15 — из-за пропущенных regression-тестов.
Целью выпускной квалификационной работы является создание системы автоматического тестирования программного обеспечения для веб-приложения на основе Python и Selenium. Объектом исследования выступает процесс тестирования ПО, предметом — автоматизация регрессионного и модульного тестирования.
Задачи: анализ существующего процесса, моделирование бизнес-процессов, выбор инструментов, разработка архитектуры, реализация ключевых модулей, расчёт экономической эффективности. Работа основана на требованиях ГОСТ 34.602-2020 и методических рекомендациях Синергия.
Как написать заключение по Разработка, сопровождение и обеспечение безопасности информационных систем
В ходе работы была проанализирована текущая система тестирования в ООО «ТехноЛаб». Выявлены узкие места: отсутствие автоматизации, ручная генерация отчётов, высокая нагрузка на QA-инженеров. На основе анализа разработана система автоматического тестирования на базе Selenium и PyTest, интегрированная с GitLab CI.
Реализованы модули запуска тестов, обработки результатов и уведомлений. Экономический расчёт показал срок окупаемости — 5,2 месяца, NPV за год — 187 тыс. руб. Система повысила покрытие кода тестами до 85% и сократила время на регрессионное тестирование с 8 часов до 47 минут.
Работа рекомендуется к внедрению в учебных и коммерческих проектах. Дальнейшее развитие — интеграция с инструментами мониторинга и добавление AI-анализа логов.
Требования к списку литературы Синергия
Список оформляется по ГОСТ Р 7.0.100-2018. Объём — 25–40 источников. Из них:
- 50% — научные статьи (eLibrary, CyberLeninka)
- 30% — нормативные документы (ГОСТ, ФСТЭК)
- 20% — официальная документация (vendor docs)
Примеры реальных источников:
- ГОСТ Р 34.602-2020. Информационная технология. Комплекс стандартов на автоматизированные системы. Техническое задание на создание автоматизированной системы. — https://docs.cntd.ru/document/1200178469
- Beck, K. Test-Driven Development: By Example. — Addison-Wesley, 2002. — 240 p.
- Отчёт Synopsys. 2024 Software Security and Quality Report. — https://www.synopsys.com/...
⚠️ Типичные ошибки при написании Создание системы автоматического тестирования программного обеспечения
- Ошибка: Копирование кода без адаптации под ТЗ → Как проверить: Запустите примеры из статьи на своём проекте. Если не работают — адаптируйте под стек технологий.
- Ошибка: Общие фразы в актуальности → Решение: Вставьте реальную статистику (например, количество багов в Jira) и укажите источник.
- Ошибка: Несоответствие задач цели → Чек-лист: Пройдите по списку: каждая задача ведёт к достижению цели? Если нет — перепишите.
- Ошибка: Использование устаревших инструментов (например, JUnit 4 без обоснования) → Решение: Сравните с JUnit 5, укажите, почему выбрали именно этот.
Частые вопросы по теме «Создание системы автоматического тестирования программного обеспечения»
- В: Сколько страниц должна быть практическая часть? О: В Синергия обычно 40–60 стр., но смотрите методичку. Ключевое — наличие схем, кода и расчётов.
- В: Нужен ли реальный код в приложении? О: Да, фрагменты ключевых модулей обязательны. Полный репозиторий можно разместить на GitHub, ссылку — в приложении.
- В: Как проверить уникальность перед сдачей? О: Используйте Антиплагиат.ВУЗ с настройками вашего вуза. Уникальность должна быть >75%.
- В: Можно ли использовать ChatGPT для генерации кода? О: Можно, но с адаптацией. Преподаватели видят шаблонные решения. Добавьте логику под свой проект.
Застряли на этапе проектирования архитектуры? Наши эксперты по Разработка, сопровождение и обеспечение безопасности информационных систем помогут разобраться. Написать в Telegram или +7 (987) 915-99-32 (WhatsApp)
Пример архитектуры системы автоматического тестирования
Система состоит из трёх модулей:
- Test Runner — запускает тесты через PyTest.
- Reporter — генерирует HTML-отчёт с помощью Allure.
- Notifier — отправляет результаты в Telegram через бота.
# Пример: запуск теста с уведомлением
import pytest
import requests
def send_telegram(message):
token = "YOUR_TOKEN"
chat_id = "YOUR_CHAT_ID"
url = f"https://api.telegram.org/bot{token}/sendMessage"
requests.post(url, data={"chat_id": chat_id, "text": message})
def test_login():
# Ваш тест
assert login("user", "pass") == True
def pytest_sessionfinish(session, exitstatus):
result = "Успешно" if exitstatus == 0 else "Ошибки"
send_telegram(f"Тесты завершены: {result}")
Схема интеграции с CI/CD (GitLab CI):
stages:
- test
- notify
run_tests:
stage: test
script:
- pytest --alluredir=allure-results
notify_results:
stage: notify
script:
- python notify.py
✅ Чек-лист перед защитой Создание системы автоматического тестирования программного обеспечения
- □ Все задачи из введения выполнены и отражены в заключении
- □ Код/схемы соответствуют ТЗ и методичке Синергия
- □ Уникальность >75% по Антиплагиат.ВУЗ (настройки вуза)
- □ Источники оформлены по ГОСТ Р 7.0.100-2018
- □ Экономический расчёт содержит реальные данные, а не шаблоны
- □ В приложениях: полный код, схемы, руководства пользователя
- □ Ссылка на GitHub (если есть) работает и не приватная
Нужна помощь с защитой Создание системы автоматического тестирования программного обеспечения?
Наши эксперты — практики в сфере Разработка, сопровождение и обеспечение безопасности информационных систем. Подготовим работу с глубоким анализом, реальными примерами и расчётами, готовую к защите в Синергия.
Что вы получите: соответствие методичке вуза, гарантию оригинальности от 75%, сопровождение до защиты.
Ответим в течение 10 минут. Консультация бесплатна.