Що таке динамічне тестування? Типи, методи & Приклад

Зміст:

Anonim

Динамічне тестування

Динамічне тестування - це метод тестування програмного забезпечення, що використовується для перевірки динамічної поведінки програмного коду. Основною метою динамічного тестування є перевірка поведінки програмного забезпечення за допомогою динамічних змінних або змінних, які не є постійними, та виявлення слабких областей в середовищі виконання програмного забезпечення. Код повинен бути виконаний, щоб перевірити динамічну поведінку.

Ми всі знаємо, що тестування - це перевірка та перевірка, і для того, щоб тестування було завершене, потрібно 2 В. З 2 Vs перевірка називається статичним тестуванням, а інша "V" - перевірка відома як динамічне тестування.

Приклад динамічного тестування

Давайте розберемося, як зробити динамічне тестування, на прикладі:

Припустимо, ми тестуємо сторінку входу, де у нас є два поля: "Ім'я користувача" та "Пароль", а ім'я користувача обмежено буквено-цифровим.

Коли користувач вводить Ім'я користувача як "Guru99", система приймає те саме. Де як коли користувач входить як Guru99 @ 123, тоді програма видає повідомлення про помилку. Цей результат показує, що код діє динамічно на основі вводу користувача.

Динамічне тестування - це коли ви працюєте з фактичною системою, надаючи вхідні дані та порівнюючи фактичну поведінку програми з очікуваною поведінкою. Іншими словами, робота з системою з метою пошуку помилок.

Отже, виходячи з вищезазначених тверджень, ми можемо сказати або зробити висновок, що динамічне тестування - це процес перевірки програмних додатків як кінцевого користувача в різних середовищах для створення правильного програмного забезпечення.

Що робить динамічне тестування?

Основна мета динамічних тестів - забезпечити належну роботу програмного забезпечення під час та після встановлення програмного забезпечення, забезпечуючи стабільну роботу програми без будь-яких серйозних недоліків (це твердження зроблено, оскільки жодне програмне забезпечення не містить помилок, тестування може лише показати наявність не відсутність)

Основна мета динамічного тесту - забезпечити узгодженість програмного забезпечення; давайте обговоримо це на прикладі.

У банківській програмі ми знаходимо різні екрани, такі як Розділ моїх рахунків, Переказ коштів, Оплата рахунків тощо ... Усі ці екрани містять поле суми, яке приймає деякі символи.

Скажімо, у полі «Мої рахунки» відображається сума 25 000, а переказ коштів - 25 000 доларів США, а на екрані оплати рахунків - 25 000 доларів, хоча сума однакова, спосіб відображення суми не однаковий, отже, програмне забезпечення несумісне.

Послідовність не обмежується лише функціональністю, вона також стосується різних стандартів, таких як продуктивність, зручність використання, сумісність тощо, отже, стає дуже важливим проводити динамічне тестування.

Види динамічного тестування

Динамічне тестування класифікується на дві категорії

  • Тестування White Box
  • Тестування чорної скриньки

Наведене нижче зображення дає нам уявлення про типи динамічного тестування, рівні тестування тощо.

Давайте коротко обговоримо кожен тип тестування та його цільову мету

Тестування White Box - Тестування White Box - це метод тестування програмного забезпечення, при якому внутрішня структура / конструкція відома тестувальнику. Основною метою тестування White Box є перевірка ефективності роботи системи на основі коду. В основному це виконують розробники або тестувальники White Box, які мають знання з програмування.

Тестування Black Box - Тестування Black Box - це метод тестування, при якому внутрішня структура / код / ​​дизайн НЕ відомий тестувальнику. Основна мета цього тестування для перевірки функціональності системи, що тестується, і цей тип тестування вимагає виконання повного набору тестів, і в основному це виконують Тестери, і немає необхідності в знаннях програмування.

Box Black Тестування знову розділити на два типи.

Вони є

  • Функціональне тестування
  • Нефункціональне тестування

Функціональне тестування:

Функціональне тестування проводиться для того, щоб перевірити, чи всі розроблені функції відповідають функціональним специфікаціям, і воно виконується шляхом виконання випадків функціональних тестів, написаних командою контролю якості, на етапі функціонального тестування система тестується шляхом надання вхідних даних, перевірки вихідних даних та порівняння фактичних результатів із очікуваними.

Існують різні рівні функціонального тестування, серед яких найбільш важливими є

  • Unit Testing - Як правило, Unit - це невеликий фрагмент коду, який можна перевірити, Unit Testing виконується на окремій одиниці програмного забезпечення та виконується розробниками
  • Інтеграційне тестування - Інтеграційне тестування - це тестування, яке проводиться після модульного тестування та проводиться шляхом об'єднання всіх окремих модулів, які перевіряються, і виконується розробниками або тестувальниками.
  • Тестування системи - Тестування системи проводиться для того, щоб переконатися, чи працює система відповідно до вимог, і як правило, виконується, коли вся система готова, вона виконується тестувальниками, коли збірка або код передається команді з контролю якості
  • Прийомне тестування - Прийомне тестування проводиться, щоб перевірити, чи відповідає система бізнес-вимогам, готова до використання чи готова до розгортання, і, як правило, виконується кінцевими користувачами.

Нефункціональне тестування . Нефункціональне тестування - це техніка тестування, яка не фокусується на функціональних аспектах і в основному концентрується на нефункціональних атрибутах системи, таких як витоки пам'яті, продуктивність або надійність системи. Нефункціональне тестування проводиться на всіх рівнях тестування.

Існує багато методів нефункціонального тестування, серед яких найважливішими є

  • Тестування продуктивності - Тестування продуктивності проводиться, щоб перевірити, чи нормальний час відгуку системи відповідно до вимог при бажаному навантаженні мережі.
  • Тестування відновлення - Тестування відновлення - це спосіб перевірити, наскільки добре система здатна відновлюватись після збоїв та збоїв обладнання.
  • Тестування сумісності - Тестування сумісності проводиться для перевірки поведінки системи в різних середовищах.
  • Тестування безпеки - Тестування безпеки проводиться для перевірки надійності програми, тобто для забезпечення доступу до системи лише авторизованих користувачів / ролей
  • Тестування юзабіліті - Тестування юзабіліті - це метод перевірки зручності використання системи кінцевими користувачами, щоб перевірити, наскільки комфортно користувачі користуються системою.

Методи динамічного тестування

Методи динамічного тестування в STLC складаються з різних завдань, таких як Аналіз вимог до тестів, Планування тесту, проектування та реалізація тестових кейсів, налаштування тестового середовища, виконання тестових кейсів, звітування про помилки та врешті закриття тесту. Усі завдання в техніці динамічного тестування залежать від завершення попереднього завдання в процесі тестування.

У STLC ми можемо сказати, що фактичний процес динамічного тестування починається з проектування кейсів, давайте детально обговоримо кожну діяльність.

Перш ніж вступати в процес, давайте обговоримо стратегію, якої потрібно дотримуватися при динамічному тестуванні.

Тестова стратегія повинна зосереджуватися в основному на наявних ресурсах та часових рамках. Виходячи з цих факторів, має бути задокументована мета тестування, обсяг тестування, фази або цикли тестування, тип середовища, припущення чи проблеми, з якими можна зіткнутися, ризики тощо.

Після того, як стратегія визначена і прийнята керівництвом, починається фактичне проектування тестового випадку

Що таке розробка та впровадження тестів

На цьому етапі ми визначаємо,

  • Особливості, що перевіряються
  • Виведіть умови тестування
  • Вивести елементи покриття
  • Виведіть тестові кейси

Тестова установка середовища

Ми повинні забезпечити, щоб середовище тестування завжди було подібним до виробничого середовища, на цьому етапі ми повинні встановити збірку та керувати тестовими машинами.

Виконання тесту

На цьому етапі фактично виконуються тестові кейси.

Звіт про помилку захоплено

На основі виконання, якщо очікувані та фактичні результати не збігаються, тестовий випадок повинен бути позначений як Помилка, а помилка повинна реєструватися.

Переваги динамічного тестування

  • Динамічне тестування може виявити виявлені дефекти, які вважаються занадто складними або складними і які неможливо покрити за допомогою статичного аналізу
  • Під час динамічного тестування ми виконуємо програмне забезпечення наскрізь, забезпечуючи безпомилкове програмне забезпечення, що в свою чергу підвищує якість продукту та проекту.
  • Динамічне тестування стає важливим інструментом для виявлення будь-яких загроз безпеці

Недоліки динамічного тестування

  • Динамічне тестування вимагає багато часу, оскільки воно виконує програму / програмне забезпечення або код, що вимагає величезної кількості ресурсів
  • Динамічне тестування збільшує вартість проекту / продукту, оскільки він не починається на початку життєвого циклу програмного забезпечення, а отже, будь-які проблеми, виправлені на пізніх стадіях, можуть призвести до збільшення вартості.

Висновок:

При розробці програмного забезпечення перевірка та перевірка - це два заходи, що використовуються для перевірки відповідності програмного продукту вимогам до технічних вимог. Статичне тестування передбачає перевірку, тоді як динамічне тестування передбачає перевірку. Разом вони допомагають забезпечити економічно ефективне якісне програмне забезпечення.

Ця стаття представлена ​​Радхікою Ренамалою