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

Содержание

Слайд 2

ПРОЦЕСИ ТА СИСТЕМИ ПІДТРИМКИ ЯКОСТІ ПРОГРАМНИХ СИСТЕМ

Історичний прогрес розуміння цілей тестування:
До 1956 –

орієнтація на відлагодження.
1957 – 1978 – орієнтація на встановлення відповідності ПС вихідним вимогам.
1979 – 1982 – орієнтація на виявлення дефектів, які залишились після реалізації.
1983 – 1987 – орієнтація на аналіз, перевірку та тестування з метою оцінки якості ПС на усіх стадіях розробки.
1988 – 1995 – інтеграція дій по перевірці і тестуванню в життєвий цикл ПС з метою попередження появи дефектів на усіх стадіях розробки.
Після появи в 1995 році міжнародних стандартів якості ПС усі дії пов’язані із створенням ПС представлені у вигляді окремих процесів ЖЦ.

Слайд 3

ПРОЦЕСИ ТА СИСТЕМИ ПІДТРИМКИ ЯКОСТІ ПРОГРАМНИХ СИСТЕМ

Тестування полягає в динамічній перевірці поведінки програми

на скінченій множині тестових даних, спеціальним чином вибраних із нескінченного вхідного простору, на відповідність встановленій очікуваній поведінці (проблема оракула).
Два основних підходи до виконання тестування: деструктивний і конструктивний
Ключові питання тестування:
Критерії вибору тестів / правила зупинки.
Ефективність тестування / цілі тестування.
Тестування для виявлення дефектів.
Проблема оракула.
Теоретичні і практичні обмеження тестування.
Проблема шляхів, що ніколи не виконуватимуться.

Слайд 4

ПРОЦЕСИ ТА СИСТЕМИ ПІДТРИМКИ ЯКОСТІ ПРОГРАМНИХ СИСТЕМ

4 основних рівня тестування:
Модульне тестування – перевірка

функціональності об’єктів в ізоляції один від одного.
Інтеграційне тестування – перевірка правильності взаємодії між програмними об’єктами, протестованими автономно.
Тестування ПЗ – перевірка функціонування інтегрованої версії ПЗ в модельованому середовищі.
Системне тестування – оцінка якості взаємодії ПЗ з іншими програмними системами (у тому числі не програмними, компонентами системи).

Слайд 5

ПРОЦЕСИ ТА СИСТЕМИ ПІДТРИМКИ ЯКОСТІ ПРОГРАМНИХ СИСТЕМ

Види випробовувань ПС.
Попередні випробовування – вищий рівень

формального тестування ПС, який виконується в середовищі розробки.
Приймальні випробовування проводяться виключно в контексті вимог замовника з його безпосередньою участю і в середовищі експлуатації.
Тестування інсталяції.
Альфа і бета тестування (внутрішні і зовнішні користувачі).
Регресійне тестування.

Слайд 6

ПРОЦЕСИ ТА СИСТЕМИ ПІДТРИМКИ ЯКОСТІ ПРОГРАМНИХ СИСТЕМ

Види тестування характеристик ПС:
Функціональне тестування.
Тестування безпеки.
Тестування зручності

застосування (ергономічності).
Тестування технічних характеристик.
Тестування на надійність.
Тестування продуктивності:
Тестування навантаження (load testing).
Тестування на стійкість (stress testing).
Тестування об’єму (volume testing).
Тестування конфігурації.
Порівнювальне тестування (в ітераційних моделях розробки).
Тестування відновлення.
Розробка керована тестами (екстремальне програмування).

Слайд 7

ПРОЦЕСИ ТА СИСТЕМИ ПІДТРИМКИ ЯКОСТІ ПРОГРАМНИХ СИСТЕМ

Класифікація методів тестування
Методи, засновані на досвіді та

інтуїції (Ad hoc).
Методи, засновані на специфікації – таблиці рішень для проектування тестів, функціональні діаграми, метод еквівалентного розбиття, аналіз граничних значень, тестування переходів між станами програми. Генерація тестів по формальним специфікаціям, випадкове тестування.
Методи, засновані на аналізі коду (структурні) – тестування потоку керування, тестування потоку даних.
Методи направленого пошуку помилок – припущення про помилки, відсів помилок, мутаційне тестування.

Слайд 8

ПРОЦЕСИ ТА СИСТЕМИ ПІДТРИМКИ ЯКОСТІ ПРОГРАМНИХ СИСТЕМ

Методи основані на аналізі очікуваного використання (сценарії

можливого використання).
Методи, які враховують специфіку програмної системи:
Тестування ООП (розробка тест-кейсів, тестування внутрішньої структури класу, взаємодії класів).
Веб-застосувань.
Графічного інтерфейсу користувача.
Протоколів.
Систем реального часу.
Критичних систем (аналіз критичності, аналіз дерев подій, дерев відмов).

Слайд 9

ПРОЦЕСИ ТА СИСТЕМИ ПІДТРИМКИ ЯКОСТІ ПРОГРАМНИХ СИСТЕМ

Тестування веб-програм проводиться на 3-х рівнях:
Інтерфейс користувача.
Сервер.
Протоколи

взаємодії.
Складаються контрольні питання для перевірки зручності застосування веб-програм по наступним розділам:
Архітектура і навігація сайту.
Планування та дизайн сайту.
Зміст сайту.
Форми і взаємодія.
Графіка.
Кольори.
Оформлення тексту.
Стійкість до помилок.
Платформа і особливості реалізації.

Слайд 10

ПРОЦЕСИ ТА СИСТЕМИ ПІДТРИМКИ ЯКОСТІ ПРОГРАМНИХ СИСТЕМ

Класифікація дефектів по серйозності:
Критичний рівень – дефект

призводить до відмови усієї системи.
Серйозний – дефект призводить до відмови компонент ПЗ, втрати даних.
Значний – дефект призводить до отримання некоректних, неповних результатів або торкається незручності використання системи.
Незначний – дефект не призводить до відмов, не погіршує зручність використання і його можна легко обійти.
Не дефект – помилки в тестах, відмова апаратного або програмного середовища.

Слайд 11

ПРОЦЕСИ ТА СИСТЕМИ ПІДТРИМКИ ЯКОСТІ ПРОГРАМНИХ СИСТЕМ

Типи дефектів:
Логічні.
Обчислювальні.
Інтерфейсу.
Обробки даних.
Вводу даних.
Обробки помилок.

Слайд 12

ПРОЦЕСИ ТА СИСТЕМИ ПІДТРИМКИ ЯКОСТІ ПРОГРАМНИХ СИСТЕМ

Основні метрики підрахунку дефектів:
Кількість дефектів.
Щільність дефектів.
Інтенсивність відмов.
Середній

час між відмовами.
Динаміка виконання тестів (відношення кількості виконаних до запланованих).
Динаміка виявлення дефектів (відношення кількості тестів, що виявили дефекти до загальної).
Загальний стан виконання тестування (відношення кількості успішно пройдених тестів до загальної кількості).

Слайд 13

ПРОЦЕСИ ТА СИСТЕМИ ПІДТРИМКИ ЯКОСТІ ПРОГРАМНИХ СИСТЕМ

Критерії завершення тестування
Найбільш розповсюджений – вичерпано час

відведений на тестування.
Згідно стандартів можна сформулювати комплексний критерій завершення тестування:
Усі заплановані функціональні тести пройшли.
Структурне тестування було виконано набором тестів, який забезпечив 100% покриття рядків, 80% покриття логічних умов і 100% покриття викликів процедур.
Нема відкритих дефектів серйозності 1, 2, 3 і щільність дефектів нижче ніж 0.5 дефектів на KSLOC.
Інтенсивність виявлення відмов не вище 40 нових відмов на 1000 годин тестування.
Тривалість неперервного функціонування ПС без відмови досягає 100 годин.
Имя файла: Тестування-програмних-систем.pptx
Количество просмотров: 49
Количество скачиваний: 0