Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Підручник КНУ-4кк11.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
16.18 Mб
Скачать

4.7.2 Становлення інженерії тестування

Впродовж розвитку та становлення програмної інженерії як науково-практичної дисципліни розуміння цілей і задач тестування змінювалося. В роботі [22] сформульовані такі "історичні" періоди, що відбивають ретроспективу розуміння цілей тестування та його значення в забезпеченні якості ПС:

1) період до 1956 року – орієнтування на відлагодження;

2) період з 1957 до 1978 рр. – орієнтування на встановлення відповідності ПС початковим вимогам;

3) період з 1979 до 1982 рр. – орієнтування на виявлення дефектів, які залишилися після реалізації;

4) період з 1983 до 1987 рр. – орієнтування на аналіз, перевірку і тестування з метою оцінювання якості ПС на всіх стадіях розроблення;

5) період з 1988 до 1995 рр. – інтегрування дій з перевірки та тестування в ЖЦ розроблення ПЗ з метою попередження внесення дефектів на всіх стадіях розроблення (охоплюючи всі дії з верифікації, валідації та тестування).

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

В ISO/IEC 12207–96 динамічне тестування віднесено до основних процесів, але представлене не одним, а двома процесами: “Тестування ПЗ” та “Системне тестування”. Ряд дій з тестування розподілені по процесах розроблення, зокрема, планування тестування розподілене по процесах: «Проектування архітектури системи», «Аналіз вимог до ПЗ», «Проектування ПЗ». Автономне і інтеграційне тестування ПЗ виконуються в рамках процесів «Побудова ПЗ» і «Інтеграція ПЗ», оскільки нерозривно з ними зв'язані. “Приймальне тестування” (“Приймальні випробування”) віднесено до процесів “Постачання–замовляння”.

Тобто, відбулася інтеграція тестування з процесами розроблення, і сьогодні тестування повинне розглядатися як діяльність, виконувана протягом всього процесу розроблення. Планування тестування повинне починатися на стадії аналізу вимог, а плани і процедури тестування повинні систематично і постійно уточнюватися разом з розвитком проекту розроблення системи. Розподіл дій з тестування по окремих процесах прийнято зображати у вигляді V–подібної моделі, яка відображає процеси декомпозиції та інтеграції ПС та відповідні рівні і дії з динамічного тестування (рис. 4.1).

Рис. 4.1. V–подібна модель ЖЦ з “вбудованими” задачами тестування

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

З 1999 року в Україні діє ДСТУ 3918–99 (гармонізований з ISO/IEC 12207–95). Але він практично не використовується розробниками, і стан вітчизняної інженерії тестування фактично відповідає історичним періодам 2–3, визначеним вище.

Виділення дій з тестування, розподілених по різних процесах ЖЦ, в єдиний базовий процес дозволить завчасно створити середовище і визначити ресурси тестування, встановити об'єми і терміни тестування в рамках плану проекту ПС.

Напрями інженерія тестування :

  • дослідження та розроблення методів тестування та критеріїв адекватності тестування (відповідно до методів);

  • визначення метрик тестування та критеріїв його завершення;

  • створення програмних інструментів тестування;

  • формування моделей оцінювання процесу тестування.

Стислий огляд та аналіз методів тестування дано нижче.