Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Тема 5.3. Функціональне тестування




Одним із способів перевірки програм є тестування з управлінням за даними або по принципу «чорного ящика». В цьому випадку програма розглядається як «чорний ящик», і метою тестування є з'ясування обставин, в яких поведінка програми не відповідає специфікації.

Для виявлення всіх помилок в програмі, використовуючи управління за даними, необхідно виконати вичерпне тестування, тобто тестування на всіх можливих наборах даних. Для тих же програм, де виконання команди залежить від попередніх нею подій, необхідно перевірити і всі можливі послідовності. Очевидно, що проведення вичерпного тестування для переважної більшості випадків неможливо. Тому зазвичай виконують «розумне» або «прийнятне» тестування, яке обмежується прогонами програми на невеликій підмножині всіх можливих вхідних даних. Цей варіант не дає гарантії відсутність відхилень від специфікацій.

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

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

• еквівалентне розбиття;

• аналіз граничних значень;

• аналіз причинно-наслідкових зв'язків;

• припущення про помилку.

Еквівалентне розбиття. Метод еквівалентного розбиття полягає в наступному.

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

Розробку тестів методом еквівалентного розбиття здійснюють в два етапи: на першому виділяють класи еквівалентності, а на другому - формують тести.

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

• якщо деякий параметр х може набувати значень в інтервалі [1, 999], то виділяють один правильний клас 1 > х < 999 і два неправильних: х < I і х>999;

• якщо вхідну умову визначає діапазон значень порядкового типа, наприклад, «в автомобілі можуть їхати від одного до шести чоловік», то визначається один правильний клас еквівалентності і два неправильних: жодного і більше шести чоловік;

• якщо вхідну умову описує безліч вхідних значень і є підстави вважати, що кожне значення програміст трактує особливо, наприклад, «типи графічних файлів: bmp jpeg, vsd», то визначають правильний клас еквівалентності для кожного значення і один неправильний клас, наприклад, txt;

• якщо вхідна умова описує ситуацію «повинно бути», наприклад, «першим символом ідентифікатора має бути буква», то визначається один правильний клас еквівалентності (перший символ -буква) і один неправильний (перший символ - не буква);

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

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

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

Таблиця 1




Поделиться с друзьями:


Дата добавления: 2014-01-07; Просмотров: 544; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.008 сек.