Тестування програмних систем

Відповідальний лектор

Сидоренко Ганна Юріївна

1. Вступ.

1.1. Предмет навчальної дисципліни, її наукові та методологічні основи, мета викладання і задачі дисципліни.

Предметом дисципліни являється технологія та реалізація типових та сучасних проблем контролю якості розробки програмного забезпечення з точки зору тестування.

Науковою основою вивчення дисципліни є зміст багатьох літературних джерел, що видані видатними видавництвами на різних мовах, а також комп’ютерні засоби.

Методологічною основою викладання дисципліни є загальні методи тестування програмних проектів та систем, які поєднують теоретичні та лабораторні заняття разом з самостійною роботою студента.

Дисципліна має метою: дати студентам знання методики, яка реалізується через лекційний матеріал та лабораторні роботи, тестування програмних продуктів; підготувати тестувальників програмного проекту; підготувати студентів к самостійному вивченню довідкової та науково-технічної літератури за фахом.

1.2. Що студент повинен знати, вміти та з чим повинен бути ознайомлений в результаті вивчення дисципліни.

В результаті вивчення дисципліни студент повинен знати:

  • принципи будування тестових наборів;
  • основні методи тестування програмних продуктів (ПП);
  • критерії оцінювання тестування ПП.
  • основні критерії якості ПП.

В результаті вивчення дисципліни студент повинен вміти:

  • скласти тест-план та тестові набори для перевірки правильності роботи ПП;
  • збудувати програму для тестування ПП;
  • оцінювати та аналізувати тестування ПП.

1.3. Організаційно-методичні вказівки щодо організації і методики проведення усіх видів навчальних занять, організації і виконання індивідуальних завдань.

Організаційно-методичними вказівками для організації і проведення занять є методичні вказівки для проведення лабораторних занять. Ці методичні вказівки доступні студентам в електронному вигляді.

1.4. Система контролю якості навчання студентів.

Контроль якості навчання студентів здійснюється проведенням модульного контролю згідно з переліком контрольних робіт, виконанням студентами лабораторних занять, складанням студентами вихідного заліку.

1.5. Организация самостоятельной работы.

Для організації самостійної роботи студентів виділяється час для використання обчислювальної техніки. Під час самостійної роботи студенти вивчають передбачений для самостійної роботи матеріал, досліджують засоби, які передбачені лабораторними роботами, готують звіти з виконаних лабораторних робіт.

2. Зміст дисципліни.

Вступ.

Введення до вивчення дисципліни. Предмет дисципліни. Мета викладання дисципліни. Завдання дисципліни.

Розділ 1. Тестування – засіб забезпечення якості.

Тема 1. Основні поняття тестування: термінологія тестування, розбіжності тестування та налагодження.

Тема 2. Основні моделі та методології розробки програм. Де і коли починається (і закінчується) тестування.

Тема 3. Сучасні методології розробки програмного забезпечення Agile (Scrum / XP / FDD / TDD / Kanban), RUP.

Тема 4. Основні фази тестування та технологія тестування. Проблеми тестування систем.

Розділ 2. Види і типи тестування.

Тема 1. Модульне тестування ПП.

Тема 2. Інтеграційне тестування.

Тема 3. Системне тестування.

Тема 4. Регресійне тестування.

Розділ 3. Проектна документація. Особливості процесу та технології індустріального тестування.

Тема 1. Особливості процесу та технології індустріального тестування: планування тестування, підходи до розробки тестів.

Тема 2. Особливості ручної розробки та генерації тестів.

Тема 3. Автоматизація тестового циклу.

Розділ 4. Тестова документація і багтрекінг.

Тема 1. Проектна документація.

Тема 2. Типи багів.

Тема 3. Основні багтрекінгові системи і обов’язкові поля.

Тема 4. Документування тестування, огляд та метрики.

Розділ 5. Критерії вибору тестів.

Тема 1. Класифікація критеріїв вибору тестів. Структурні критерії тестування ПП. Принади та недоліки структурного критерію.

Тема 2. Тести. Хороші і погані.

Тема 3. Розробка тестового покриття. Розробка тест плана.

Тема 4. Класи еквівалентності та граничні значення. Застосування в реальному житті.

Тема 5. Тестування вимог. Робота з замовником.

Розділ 6. Автоматизоване тестування.

Тема 1. Навантажувальне тестування.

Тема 2. Автоматизація тестування.

Тема 3. Тестування вразливості.

Тема 4. Витрати тестування.

Тема 5. Основи тестування mobile.