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