Warning: Parameter 1 to wp_default_scripts() expected to be a reference, value given in /home/qalight/qalight.com.ua/lviv/wp-includes/plugin.php on line 601

Warning: Parameter 1 to wp_default_styles() expected to be a reference, value given in /home/qalight/qalight.com.ua/lviv/wp-includes/plugin.php on line 601
Функціональне тестування (Functional Testing) - QALight

База знань

Функціональне тестування (Functional Testing)

Функціональне тестування – один з основних видів незалежного тестування програмного забезпечення, спрямований на перевірку реалізованості функціональних вимог.  Інакше кажучи, фахівці з функціонального тестування визначають, чи вирішує розроблене ПЗ завдання, заради якого воно було створено, чи задовольняє воно потреби замовника / користувача.

Основні критерії функціонального тестування:

  • Функціональна придатність продукту.
  • Точність виконання поставлених завдань.
  • Відповідність стандартам розробки.
  • Відповідність кінцевої реалізації продукту пред’явленим функціональним вимогам.
  • Захищеність від несанкціонованого використання і некоректних дій користувачів.

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

Функціональні тести грунтуються на функціях, виконуваних системою, і можуть проводитися на всіх рівнях тестування (компонентному, інтеграційному, системному, приймальному). Як правило, ці функції описуються в вимогах, функціональних специфікаціях або у вигляді випадків використання системи (Use cases).

Залежно від мети, функціональне тестування може проводитися:

  • На основі функціональних вимог, зазначених в специфікації вимог. При цьому для тестування створюються тестові випадки (test cases), складання яких враховує пріоритетність функцій ПЗ, які необхідно покрити тестами. Таким чином ми можемо переконатися в тому, що всі функції, що розробляються, працюють коректно при різних типах вхідних даних, їх комбінацій, кількості і т.д.
  • На основі бізнес-процесів, які має забезпечити додаток. В цьому випадку, нас цікавить не так працездатність окремих функцій ПЗ, як коректність виконуваних операцій, з точки зору сценаріїв використання системи. Таким чином, тестування в даному випадку ґрунтуватиметься на варіантах використання системи (use cases).

Описані вище аспекти реалізуються за допомогою таких напрямків і рівнів тестування:

  • Модульне (компонентне) (Unit testing)
  • Інтеграційне (Integration Testing)
  • Системне (System testing) 
  • Регресійне (Regression testing)
  • Приймальне (Acceptance testing)

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

Переваги функціонального тестування:

  • імітує фактичне використання системи.

Недоліки функціонального тестування:

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

 

Набагато більше інформації на курсі базовий модуль тестування