- •Щотакетестування?
- •Техніки, що базуються на специфікаціях.
- •Альфа та бета тестуваня.
- •5. Тесты на основе конечного автомата (Finite-state machine-based)
- •7. Дефект - неправильний крок, процес чи визначення даних в комп'ютерній програмі
- •8. Тестування на основі формальних специфікацій.
- •9. Случайное тестирование (Random testing)
- •Тестування, орієнтоване на дефекти.
- •11.Тестування мутацій.
- •Збої та відмови.
- •14.Тестування продуктивності.
- •15.Стрес тестування.
- •16.Системне тестування.
- •17.Методологія покращення якості.
- •Вимірювання, пов’язані з тестуванням.
- •19.Випадкове тестування.
- •20.Техніки орієнтовані на код.
- •3.3 Техники, ориентированные на код (Code-based techniques)
- •21. Система відслідковування проблем
- •22. Класифікація дефектів за серйозністю:
- •24. Тестуванняконфігурації.
- •25. Модульнетестування.
- •26. Тестуваннязручностівикористання (usability).
- •27. Звіти по помилках.
- •28. Метрики дефектів.
- •29. Тестуванняграфічногоінтерфейсукористувача.
- •30. Метрики динамікизнаходження дефектів.
- •Виконання тестів.
- •Модель процесу тестування.
- •Управління тестуванням.
- •Інструменти тестування.
- •Метрики покриття.
- •Статистичне тестування.
- •Класифікація інструментів тестування.
- •Спеціалізоване тестування.
- •41. Планування тестування.
- •42. Створення тестів (test-cаse).
- •43. Засоби (середовища) тестування.
- •44. Критерії вибору тестів.
- •45. Проведення тестування.
- •Порівняльне тестування.
- •47. Ефективність проведення тестування.
- •48. Функціональне тестування.
- •49.Тестування Web-застосувань.
- •50.Тестування та визначення дефектів.
- •Метрики підрахунку дефектів.
- •Проблеми оракула.
- •Обмеження при проведенні тестування.
- •Тести, що базуються на блок-схемі.
- •Тестування інсталяцій.
- •Зв’язок тестування з іншими видами діяльності по розробці.
- •Метод білої скриньки.
- •Рівні тестування (послідовність).
- •2. Уровни тестирования (Test Levels)
- •2.1.1 Модульное тестирование (Unit testing)
- •2.1.2 Интеграционное тестирование (Integration testing)
- •2.1.3 Системное тестирование (System testing)
- •Вимірювання, що базуються на концепції функціонального розміру.
- •Метод чорної скриньки.
- •Цілі тестування.
- •Метод сірої скриньки.
- •Регресійне тестування.
- •Інтеграційне тестування.
- •Тестування, що базується на досвіді та інтуїції.?
- •66.Порівняння методів чорної та білої скриньки.
- •67.Аналіз граничних значень.
- •68.Основи тестування.
- •69.Техніки, що базуються на аналізі коду.
- •70.Порівняння збоїв та відмов.
67.Аналіз граничних значень.
Під граничними умовами розуміють ситуації, що виникають безпосередньо на границі певної вхідної або вихідної умови, вище або нижче її. Метод аналізу граничних умов відрізняється від методу класів еквівалентності наступним:
- вибір будь-якого представника класу еквівалентності здійснюється таким чином, щоб перевірити тестом кожну границю цього класу;
- при побудові тестів розглядаються не тільки вхідні умови, але й вихідні (тобто певні специфіковані обмеження на значення вхідних даних).
Загальні правила методу аналізу граничних умов:
побудувати тести для границь множини допустимих значень вхідних даних і тести з недопустимими значеннями, що відповідають незначному виходу за межі цієї множини.
Якщо множина допустимих значень вхідних даних дискретна, то будуються тести для мінімального й максимального значення вхідних умов і тести для значень, більших або менших цих величин.
1) використовувати перше правило для кожної вихідної умови;
2) якщо вхідні й вихідні дані програми являють собою впорядковану множину (послідовний файл, лінійний список та ін.), то при тестуванні зосередити увагу на першому й останньому елементі множини;
3) повторити процедуру для всіх знайдених граничних умов.
Аналіз граничних умов - один з найбільш корисних методів проектування тестів. Але він часто виявляється неефективним через те, що граничні умови іноді ледь вловимі, а їхнє виявлення досить важко.
68.Основи тестування.
-
Тестування - діяльність, що здійснюється для оцінки якості продукції, так і для його покращення, шляхом виявлення дефектів і проблем.
-
Тестування складається з динамічної верифікації поведінки програм за обмеженим набором тест-кейсів, відповідним чином вибраних із нескінченної предметної області (галузі) для очікуваної поведінки.
-
Динамічний: Цей термін означає, що тестування завжди передбачає виконання програми на вході. Щоб бути точним, самого вхідного значення не завжди достатньо, щоб визначити тестування, в той час як комплекс не детермінованих систем може відреагувати на ті ж вхідні дані з різною поведінкою, залежно від стану системи. Термін "вхідні дані" буде підтримуватися за звичаями, мається на увазі що його значення також включає в себе певний стан входу, в тих випадках, коли це необхідно.
-
Кінцевий: Навіть в простих програм, так багато тест-кейсів теоретично можливих, що виснажливе тестування може займати декілька місяців або років для виконання. Ось чому на практиці цілий набір тестів в цілому можна вважати нескінченним. Тестування завжди передбачає компроміс між обмеженими ресурсами та розкладом, і по суті необмеженими вимогами до тестування.
-
Вибір: багато запропоновані методи тестування істотно відрізняються в тому, як вони обирають набір тестів, а також програмні інженери повинні знати, що різні критерії відбору можуть дати зовсім різні ступені ефективності. Як визначити найбільш відповідний критерій відбору. За даних умов це дуже складна проблема; але на практиці застосовуються методи аналізу ризиків і досвід інженерного тестування.
-
Очікування: Це повинно бути можливим, хоча і не завжди легко, щоб вирішити, чи є спостережені результати виконання програми бажаними чи ні, в іншому випадку зусилля витрачені на тестування будуть марними. Спостережена поведінка може бути перевірена на очікування користувачів (часто називають тестування для перевірки (валідації)), на специфікацію (тестування для перевірки), або, нарешті, на очікувану поведінки при внесенні неявних вимог або розумних очікувань.
-
Ключові моменти:
-
Вид тестування програмного забезпечення розвивається в більш конструктивному напрямку.
-
Тестування більше не розглядається як діяльність, яка починається тільки після завершення фази кодування для виявлення збоїв.
-
Тестування програмного забезпечення в даний час розглядається як діяльність, яка повинна охоплювати весь розвиток і підтримку процесу, і сама по собі є важливою частиною фактичного конструювання продукту.