На відміну від функціонального тестування, метою якого є перевірка відповідності реальних функцій продукту з функціональними вимогами, як Ви вже напевно здогадалися, метою нефункціонального тестування є перевірка відповідності властивостей додатки з його нефункціональними вимогами.
Відповідно: нефункціональне тестування - тестування властивостей, які не належать до функціональності системи. Дані властивості визначаються нефункціональними вимогами, які характеризують продукт з таких сторін, як:
Надійність (реакція системи на непередбачені ситуації).
Продуктивність (Працездатність системи під різними навантаженнями).
Зручність (Дослідження зручності роботи з додатком з точки зору користувача).
Масштабованість (Вимоги до горизонтального або вертикального масштабування додатки).
Безпека (Захищеність призначених для користувача даних).
Портіруемость (Переносимость додатки на різні платформи).
І багато інших якостей.
Дані властивості системи можна досліджувати, використовуючи такі види тестування:
Тестування установки (Installation testing) - перевірка успішності установки додатка, його налаштування і видалення. Знижує ризики втрати призначених для користувача даних, втрати працездатності програми та ін.
Тестування зручності використання (Usability testing) - характеризує систему з точки зору зручності використання кінцевого користувача.
Конфігураційне тестування (або тестування портіруемость) - дослідження працездатності програмної системи в умовах різних програмних конфігурацій.
Тестування на відмову і відновлення (Failover and Recovery Testing) - дослідження програмної системи на предмет відновлення після помилок, збоїв. Оцінювання реакції захисних властивостей програми.
Як бачите, хоча нефункціональне тестування і не перевіряє систему на виконання тих функцій, які хоче від нього замовник, воно дозволяє контролювати більш глобальні властивості: безпека, продуктивність, надійність і інші. Дані вимоги характеризують якість програмної системи в цілому, що дозволяє тим чи іншим чином залишати у користувача враження, які вплинуть на популярність і рейтинг компанії-розробника.