- •Розділ 1 структурне тестування програмного забезпечення
- •Тема 1.1 Класифікація принципів тестування програмного забезпечення
- •1. Структурні критерії (клас і)
- •2. Функціональні критерії (клас II)
- •3. Стохастичні критерії (клас III)
- •4. Мутаційний критерій (клас IV)
- •Тема 1.2 Переваги та недоліки принципів тестування
- •Тема 1.3 Кроки способу тестування базового шляху
- •Тема 1.4 Спосіб тестування потоків даних
- •Тема 1.5 Тестування вкладених циклів
- •Розділ 2 функціональне тестування програмного забезпечення
- •Тема 2.1 Спосіб тестування діаграм причин-наслідків
- •Тема 2.2 Тестування елементів
- •Тема 2.3 Переваги та недоліки низхідного та висхідного тестування
- •Тема 2.4 Стресове тестування та тестування виробності
- •Тема 2.5 Переваги та недоліки різних методів відлагодження
Тема 2.3 Переваги та недоліки низхідного та висхідного тестування
Завдання: законспектувати тему до зошита у вигляді відповідей на контрольні запитання, що містяться в кінці теми.
Порівняння монолітного й инкрементального підходу дає наступне:
Монолітне тестування вимагає більших трудозатрат, пов'язаних з додатковою розробкою драйверів і заглушок і зі складністю ідентифікації помилок, що проявляються в просторі зібраного коду.
Покрокове тестування пов'язане з меншою трудомісткістю ідентифікації помилок за рахунок поступового нарощування обсягу коду, що тестується, й відповідно локалізації доданої області коду, що тестується.
Монолітне тестування надає більші можливості виконання робіт паралельно особливо на початковій фазі тестування.
Особливості спадного тестування полягають у наступному: організація середовища для виконання черговості викликів відтестованими модулями модулів, що тестуються, постійна розробка й використання заглушок, організація пріоритетного тестування модулів, що містять операції обміну з оточенням, або модулів, критичних для алгоритму, що тестується.
Наприклад, порядок тестування комплексу K при спадному тестуванні може бути таким, як показано в прикладі, де тестовий набір, розроблений для модуля Mi, позначений як XYi = (X, Y)i. Можливий порядок тестів при спадному тестуванні
1) K->XYK
2) M1->XY1
3) M11->XY11
4) M2->XY2
5) M22->XY22
6) M21->XY21
7) M12->XY12
Недоліки спадного тестування:
1)Проблема розробки досить "інтелектуальних" заглушок, тобто заглушок, придатних до використання при моделюванні різних режимів роботи комплексу, необхідних для тестування
2) Складність організації й розробки середовища для реалізації виконання модулів у потрібній послідовності
3) Паралельна розробка модулів верхніх і нижніх рівнів приводить до не завжди ефективної реалізації модулів через підстроювання (спеціалізації) ще не тестованих модулів нижніх рівнів до вже відтестованих модулів верхніх рівнів
Особливості висхідного тестування в організації порядку зборки й переходу до тестування модулів, що відповідає порядку їхньої реалізації.
Наприклад, порядок тестування комплексу K при висхідному тестуванні може бути наступним. Можливий порядок тестів при висхідному тестуванні
1) M11->XY11
2) M12->XY12
3) M1->XY1
4) M21->XY21
5) M2(M21, Stub(M22))->XY2
6) K(M1, M2(M21, Stub(M22)) ->XYK
7) M22->XY22
8) M2->XY2
9) K->XYK
Недоліки висхідного тестування:
1)Запізнювання перевірки концептуальних особливостей комплексу, що тестується.
2) Необхідність у розробці й використанні драйверів
Порівняння спадного й висхідного тестування інтеграції
Спадне тестування:
1) основний недолік— необхідність заглушок і пов'язані з ними труднощі тестування;
2) основне достоїнство — можливість раннього тестування головних керуючих функцій.
Висхідне тестування:
1) основний недолік — система не існує як об'єкт доти, поки не буде доданий останній модуль;
2) основне достоїнство — спрощується розробка тестових варіантів, відсутні заглушки.
Можливий комбінований підхід. У ньому для верхніх рівнів ієрархії застосовують спадну стратегію, а для нижніх рівнів - висхідну стратегію тестування.
Контрольні запитання:
Поняття монолітного та інкрементного тестування.
Порівняльна характеристика низхідного та висхідного тестування.