Функціональне тестування
Мета функціонального тестування (Functional Testing) — виявлення невідповідностей між реальною поведінкою реалізованих функцій і очікуваною поведінкою відповідно до специфікації і вимог. Функціональні тести повинні охоплювати всі реалізовані функції з урахуванням найбільш ймовірних типів помилок. Тестові сценарії, що поєднують окремі тести, орієнтовані на перевірку якості розв'язку функціональних задач.
Функціональні тести створюються за зовнішніми специфікаціями функцій, проєктної інформації і за текстом на МПщо таке МП?, що стосуються його функціональних характеристик і застосовуються на процесі комплексного тестування й іспитів для визначення повноти реалізації функціональних задач і їхньої відповідності вхідним вимогам.
Типи функціонального тестування:
- Функціональне тестування (Functional testing);
- Тестування безпеки (Security and Access Control Testing);
- Тестування взаємодії (Interoperability Testing);
- Тестування інтерфейсу користувача (GUI Testing).
До задач функціонального тестування належать:
- ідентифікація множини функціональних вимог
- ідентифікація зовнішніх функцій і побудова послідовностей функцій відповідно до їхнього використання в ПСщо таке ПС?
- ідентифікація множини вхідних даних кожної функції і визначення областей їхньої зміни
- побудова тестових наборів і сценаріїв тестування функцій
- виявлення і подання усіх функціональних вимог за допомогою тестових наборів і проведення тестування помилок у програмі і при взаємодії із середовищем.
Тести, створювані за проєктною інформацією, пов'язані зі структурами даних, алгоритмами, інтерфейсами між окремими компонентами і застосовуються для тестування компонентів і їхніх інтерфейсів. Основна мета — забезпечення повноти і погодженості реалізованих функцій і інтерфейсів між ними.
В основу комбінованого методу «чорної скриньки» і «білої скриньки» покладено розбивку вхідної області функції на підобласті виявлення помилок. Підобласть містить у собі однорідні елементи, які обробляються коректно або некоректно. Для тестування підобласті застосовується виконання програми на одному з елементів цієї області.
Передумови функціонального тестування:
- коректне оформлення вимог і обмежень до якості ПС
- коректний опис моделі функціонування ПС у середовищі експлуатації замовника
- адекватність моделі ПС заданому класу.
- Якість програмного забезпечення
- Технологія розробки програмного забезпечення
- Зворотне семантичне трасування
- JUnit
- Багтрекер
- IEEE Guide to Software Engineering Body of Knowledge, SWEBOK, 2004 (англ.)
- The Test Management Guide — A to Z and FAQ Knowledgebase (англ.)
- Текст лекцій до курсу «Технології розробки і тестування програм» Дідковська М. В.
- Про Тестинг — Тестирование Программного Обеспечения (рос.)
- Портал специалистов по тестированию и обеспечению качества ПО(рос.)
- Портал об автоматизированном тестировании ПО(рос.)
- Качество программного обеспечения(рос.)
- Портал об автоматизированном тестировании ПО(рос.)
- Я — QA | Скажи багам нет!(рос.)
- Лайза Криспин, Джанет Грегори. Гибкое тестирование: практическое руководство для тестировщиков ПО и гибких команд = Agile Testing: A Practical Guide for Testers and Agile Teams. — М. : «Вильямс», 2010. — 464 с. — (Addison-Wesley Signature Series) — 1000 прим. — ISBN 978-5-8459-1625-9.
- Канер Кем, Фолк Джек, Нгуен Енг Кек. Тестирование программного обеспечения. Фундаментальные концепции менеджмента бизнес-приложений. — Киев : ДиаСофт, 2001. — 544 с. — ISBN 9667393879.
- Калбертсон Роберт, Браун Крис, Кобб Гэри. Быстрое тестирование. — М. : «Вильямс», 2002. — 374 с. — ISBN 5-8459-0336-X.
- Синицын С. В., Налютин Н. Ю. Верификация программного обеспечения. — М. : БИНОМ, 2008. — 368 с. — ISBN 978-5-94774-825-3.
- Бейзер Б. Тестирование чёрного ящика. Технологии функционального тестирования программного обеспечения и систем. — СПб. : Питер, 2004. — 320 с. — ISBN 5-94723-698-2.