
Види тестування
Для кожного рівня тестування можуть використовуватися різні види тестування, для кожного з яких, в свою чергу, можуть використовуватися різні типи тестових випробувань. Інсталяційне тестування (Installation testing) Визначення: В процесі инсталляционного тестування перевіряється коректність установки і деінсталяції програмного продукту в середовищі максимально наближеною до експлуатаційної. Перевірка правильності установки програмного продукту повинна бути обов'язковим елементом проекту з тестування будь-якого продукту. Мета: Основна мета полягає в тому, щоб переконатися, що продукт може бути встановлений / деінсталювати при різних умовах - таких як: нова інсталяція, удосконалення системи (upgrade), установка за замовчуванням, повна установка, установка за вибором. Димне тестування (перевірка на дим, Smoke testing) Визначення: Перший прогін програми (після написання або після внесення суттєвих змін). Як правило, використовується для визначення, чи готова програма для проведення більш обширного тестування. Мета: Виявлення проблем «лежачих на поверхні» - тестується найчастіше основна бізнес логіка програми Функціональне тестування (Functional testing) Визначення: Перевірка відповідності продукту функціональним вимогам і специфікаціям Мета: Перевірка відповідності продукту функціональним вимогам і специфікаціям Регресійне тестування (Regression testing) Визначення: Повторне тестування після внесення змін до програмного забезпечення або в його оточення (у новій версії додатка), щоб переконатися в тому, що функції, які працювали в попередній версії системи, як і раніше працюють так, як очікувалося, а знайдені дефекти успішно виправлені (все протестоване раніше тестується повторно) Мета: Виявлення потенційних проблем, які могли виникнути в результаті змін. Перевірка виправлення знайдених раніше дефектів. Тестування графічного інтерфейсу користувача (User Interface testing) Визначення: Тестування інтерфейсу - екранів, кнопок і т.д. Велика частина функціональності ПО реалізується, як правило, через користувальницький інтерфейс. Мета: Виявлення помилок в інтерфейсі і пошук помилок у функціональності за допомогою інтерфейсу Тестування продуктивності (Performance testing) Визначення: Перевірка швидкості роботи системи (час відгуку, частота транзакцій і інші залежні від часу) в імітаційної і реальною середовищах Мета: Встановити реальну продуктивність програмного продукту Тестування навантаження (Load testing) Визначення: Це ті ж тести продуктивності, при яких система піддається різним навантаженням; при цьому мета цього тестування - оцінити здатність системи правильно функціонувати при деякому перевищенні планованих навантажень при реальній експлуатації (система має деякий «запас міцності») Мета: Переконатися в тому, що система працює відповідно очікуваним робочим навантажувальним параметрам (яку межу працездатності) Стрес тестування (Stress testing) Визначення: Є одним з різновидів тестування на продуктивність. Перевіряється поведінку системи при нестачі ресурсів (дискового простору, обривів мережі і т.д.). Мета: Перевірка того, що система адекватно реагує на ті чи інші стресові ситуації Конфігураційне тестування (Configuration testing) Визначення: Конфігураційне тестування - тестування роботи на різних платформах. Різні варіанти апаратної конфігурації, версії операційної системи та оточення. Мета: Перевірити працездатність системи при різних конфігураціях Тестування інтернаціоналізації (Internationalization testing) Визначення: Цей вид тестує наскільки продукт готовий до того, щоб бути адаптованому для роботи в інших локалях з іншою мовою користувальницького інтерфейсу, відмінному від мови за замовчуванням (як правило, це англійська) Мета: Перевірити здатність продукту бути швидко локалізованим під необхідну локаль потенційних користувачів системи Локалізаційне тестування (Localization testing) Визначення: Локалізаційне тестування, в свою чергу, перевіряє, чи правильно локалізовано продукт. Тобто, переведений на іншу мову і коректно працює з урахуванням національних особливостей країни або регіону, в якому буде продаватися і використовуватися продукт. Мета: Перевірити, чи правильно локалізовано продукт Тестування надійності (reliability) ПЗ виробляється з метою перевірки не функціональних вимог, що додаток працює, як і очікувалося, стійке до падінь і т.п. Тут застосовуються інтеграційні тести, тести структури, стресові тести та інші. Тестування зручності використання (usability) ПЗ (нефункціональні вимоги) проводиться з метою упевнитися в тому, що додаток зручно для використання його кінцевим користувачам. Включає в себе тести на людський фактор, естетику інтерфейсу і його несуперечливість, наявність і якість оперативної і контекстної допомоги, посібників і навчальних матеріалів.