Функціональне тестування

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

Функціональне тестування: куди направити основні зусилля?

- на модульне і системне тестірованіе-

- на перевірку «білого» або «чорного» ящіка-

- на ручне тестування і автоматізацію-

- на перевірку нового функціоналу або регресійне тестірованіе-

- на «негативні» або «позитивні» тести.



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

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

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



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

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

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

- еквівалентне разбіеніе-

- припущення про ошібках-

- аналіз зв`язків між причинами і наслідком.

Можна розглянути кожен з них окремо.

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

Еквівалентне розбиття. Всі можливі набори вхідних параметрів розбиваються на кілька класів еквівалентності. Дані об`єднуються за принципом виявлення подібних помилок. Прийнято вважати, що якщо набір одного класу виявляє помилку, то еквівалентні теж будуть на неї вказувати. Функціональне тестування за цим методом здійснюється в два етапи: на першому проводиться виділення класів еквівалентності, а на другому вже формуються спеціальні тести.

Аналіз зв`язків причини і наслідки. Система може вибирати тести з високою результативністю завдяки проведенню таких перевірок. В даному випадку в якості причини приймається окреме вхідна умова, а в якості слідства бачиться вихідна умова. Метод базується на ідеї віднесення всіх видів причин до певних наслідків, тобто на уточненні тих самих причинно-наслідкових зв`язків. Тестування програмного продукту здійснюється в кілька етапів, в результаті чого виходить список з причин і випливають наслідків.




» » Функціональне тестування