Що таке тестові дані в тестуванні програмного забезпечення?
⚡ Розумний підсумок
Тестові дані в тестуванні програмного забезпечення – це вхідні дані, що подаються до програми під час виконання тесту. Добре розроблені дані призводять до позитивних, негативних перевірок, перевірок продуктивності та безпеки, тому їх необхідно генерувати, анонімізувати та оновлювати протягом усього життєвого циклу продукту.

Як тестувальник, ви можете подумати, що розробка тестових випадків є досить складною, тож навіщо морочитися з чимось таким рутинним, як тестові дані? Цей посібник знайомить вас із тестовими даними, пояснює їх важливість та надає практичні поради щодо їх швидкої генерації.
Що таке тестові дані в тестуванні програмного забезпечення?
Тестові дані в тестуванні програмного забезпечення — це вхідні дані, що надаються програмі під час виконання тесту. Вони являють собою дані, які або впливають на програмне забезпечення, або на які воно впливає під час тестування. Тестові дані використовуються в позитивному тестуванні — для перевірки того, чи функції дають очікувані результати для заданих вхідних даних — та в негативному тестуванні, щоб перевірити, як програмне забезпечення обробляє незвичайні, виняткові або недійсні вхідні дані.
Погано розроблені тестові дані не охоплюють усі можливі сценарії, що безпосередньо знижує якість програмного забезпечення.
Що таке генерація тестових даних і чому тестові дані слід створювати перед виконанням тесту?
Тестування – це процес, який створює та споживає великі обсяги даних. Дані, що використовуються в тестуванні, описують початкові умови для тесту та є середовищем, через яке тестер взаємодіє з програмним забезпеченням. Тому це вирішальна частина більшості... функціональні проби.
Залежно від вашого тестового середовища, вам може знадобитися створювати протестувати дані з нуля або принаймні визначити відповідний існуючий набір даних для вашого тестові справиТестові дані зазвичай створюються синхронно з тестовим випадком, який вони підтримують.
Тестові дані можна генерувати чотирма поширеними способами:
- Вручну, тестувальником або бізнес-аналітиком.
- Масове копіювання даних з робочого середовища до тестового.
- Масове копіювання тестових даних зі застарілих клієнтських систем.
- Інструменти автоматизованої генерації тестових даних.
Слід створити зразки даних перед тим починається виконання тесту, оскільки його подальше створення складно керувати. Багато середовищ тестування вимагають кількох попередніх кроків або трудомісткого налаштування перед завантаженням даних. Якщо генерація даних відбувається під час фази виконання, ви ризикуєте пропустити термін тестування.
У розділах нижче описано кілька типів тестування разом із пропозиціями щодо їхніх потреб у тестових даних.
Тестові дані для білого Box Тестування
In білий Box Тестування, управління тестовими даними здійснюється шляхом безпосереднього вивчення тестованого коду. Критерії вибору зазвичай включають:
- Покриття відділень: генерувати дані таким чином, щоб кожна гілка у вихідному коді була перевірена принаймні один раз.
- Тестування шляху: ремісничі дані, щоб кожен шлях виконувався принаймні один раз.
- Негативний Тестування API: використовувати недійсні типи параметрів або недійсні комбінації аргументів для виклику внутрішніх методів.
Тестові дані для тестування продуктивності
Тестування продуктивності вимірює, наскільки швидко система реагує під певним робочим навантаженням. Мета полягає не у пошуку функціональних помилок, а у виявленні вузьких місць. Вибірковий набір даних має бути дуже близьким до справжній або живий виробничі дані для того, щоб результати були змістовними.
Як отримати такі дані? Найнадійнішим джерелом є клієнтів самі. Вони можуть або надати існуючий набір даних, або описати, як виглядають реальні дані, щоб ви могли їх змоделювати. У технічне тестування проекту, ви можете копіювати дані з робочої середовища в тестову. Це гарна практика анонімізувати (перекодувати) конфіденційні поля — номери соціального страхування, номери кредитних карток, банківські реквізити — перед створенням будь-якої копії.
Тестові дані для перевірки безпеки
Тестування безпеки перевіряє, чи інформаційна система захищає дані від зловмисних намірів. Набори даних повинні охоплювати чотири основні принципи:
- Конфіденційність: Інформація від клієнтів зберігається в суворій конфіденційності та не передається стороннім особам. Якщо застосунок використовує SSL, розробіть дані, які підтверджують правильність шифрування.
- Integrity: Інформація, що повертається системою, є правильною. Створіть дані, переглянувши дизайн, код, схеми бази даних та структури файлів.
- Аутентифікація: процес встановлення особи користувача. Використовуйте різні комбінації імен користувачів та паролів, щоб переконатися, що доступ отримують лише уповноважені особи.
- Авторизація: права, надані певному користувачеві. Поєднайте користувачів, ролі та операції, щоб підтвердити, що лише користувачі з достатніми правами можуть виконувати певну операцію.
Тестові дані для чорного Box Тестування
Чорним Box Тестування коду не видно тестувальнику. Функціональні тестові випадки повинні містити дані, що відповідають таким критеріям:
- Немає даних: перевірити відповідь, коли нічого не надіслано.
- Дійсні дані: перевірте відповідь з правильними тестовими даними.
- Недійсні дані: перевірте відповідь з неправильними тестовими даними.
- Недопустимий формат даних: перевірити відповідь, коли дані мають непідтримуваний формат.
- Набір даних граничних умов: дані, що знаходяться на мінімальних, максимальних та безпосередньо за межами граничних значень.
- Набір даних розділу еквівалентності: дані, що представляють кожен клас еквівалентності.
- Набір даних таблиці рішень: дані, які застосовують кожне правило в таблиці рішень.
- Набір даних про перехід станів: дані, які керують системою через кожен визначений перехід станів.
- Дані тестування варіантів використання: дані, узгоджені з варіантами використання від початку до кінця.
Примітка: Залежно від тестованої програми, ви можете використовувати деякі або всі вищезазначені категорії.
Інструменти автоматизованої генерації тестових даних
Автоматизовані інструменти генерують великі, різноманітні набори даних швидше, ніж будь-який ручний процес. Два давніх приклади:
- Дані тестування DTM Generator — настроювана утиліта, яка створює дані, таблиці, представлення та процедури для сценаріїв тестування баз даних, включаючи продуктивність, контроль якості, навантаження та зручність використання.
- Datatect - ан SQL генератор даних від Banner Software, який створює реалістичні тестові дані у плоских ASCII-файлах або безпосередньо в системах RDBMS, таких як Oracle, Sybase, SQL Server і Informix.
Щоб переглянути оцінений, актуальний короткий список, див. 10 найкращих тестових даних Generator Інструменти.
Найкращі практики керування тестовими даними
Надійність даних тестів залежить від дисциплінованої прибиральниціpingДотримуйтесь цих правил, щоб підтримувати справність наборів даних у різних випусках:
- Версія ваших даних: зберігати набори даних у репозиторії разом із тестовими випадками, які їх використовують, щоб зміни можна було перевіряти.
- Поля, чутливі до маски: анонімізувати особисті, фінансові та медичні дані перед копіюванням з робочого середовища.
- Регулярно оновлюйте: перебудовувати набори даних у кожному випуску, щоб йти в ногу зі змінами схеми та бізнес-правил.
- Очікувані результати документування: поєднайте кожен набір даних з очікуваним результатом, щоб легко було сортувати помилки.
- Автоматизувати посів: використовуйте скрипти або фікстури для завантаження даних на початку кожного тестового запуску, забезпечуючи повторюваність.

