Що таке регресійне тестування? Визначення, тестові випадки (приклад)

Зміст:

Anonim

Що таке регресійне тестування?

ТЕСТУВАННЯ РЕГРЕСІЇ визначається як тип тестування програмного забезпечення для підтвердження того, що нещодавня зміна програми або коду не вплинула негативно на існуючі функції.

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

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

У цьому підручнику ми дізнаємось

  • Необхідність регресійного тестування
  • Як зробити регресійне тестування
  • Вибір тестових випадків для регресійного тестування
  • Засоби тестування регресії
  • Тестування регресії та управління конфігурацією
  • Різниця між повторним тестуванням та регресійним тестуванням
  • Виклики регресійного тестування
  • Практичне застосування прикладу регресійного тестування з відео

Необхідність регресійного тестування

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

Як зробити регресійне тестування

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

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

Перевірити все

  • Це один із методів регресійного тестування, при якому всі тести в існуючому тестовому сегменті або наборі повинні бути повторно виконані. Це дуже дорого, оскільки вимагає величезного часу та ресурсів.

Вибір регресійного тесту

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

Пріоритетність тестових справ

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

Вибір тестових випадків для регресійного тестування

З галузевих даних було встановлено, що велика кількість дефектів, про які повідомляють клієнти, були пов’язані з виправленням помилок, які створили побічні ефекти в останню хвилину. Ефективні регресійні тести можна зробити, вибравши такі тестові кейси -

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

Засоби тестування регресії

Якщо ваше програмне забезпечення зазнає частих змін, витрати на регресійне тестування будуть зростати. У таких випадках ручне виконання тестових справ збільшує час виконання тесту, а також витрати. Автоматизація регресійних тестів - розумний вибір у таких випадках. Ступінь автоматизації залежить від кількості тестових випадків, які залишаються повторно використаними для послідовних циклів регресії.

Нижче наведено найважливіші інструменти, що використовуються як для функціонального, так і для регресійного тестування в програмній інженерії:

Селен : це інструмент з відкритим кодом, що використовується для автоматизації веб-додатків. Селен можна використовувати для тестування регресії на основі браузера.

Quick Test Professional (QTP) : HP Quick Test Professional - це автоматизоване програмне забезпечення, призначене для автоматизації функціональних та регресійних тестів. Він використовує мову VBScript для автоматизації. Це інструмент на основі даних, заснований на ключових словах.

Раціональний функціональний тестер (RFT) : Раціональний функціональний тестер IBM - це інструмент Java, який використовується для автоматизації тестових випадків програмних додатків. Це в основному використовується для автоматизації тестів регресійних випадків, а також інтегрується з Rational Test Manager.

Тестування регресії та управління конфігурацією

Управління конфігурацією під час регресійного тестування стає обов’язковим в середовищі Agile, де код постійно модифікується. Для забезпечення ефективних регресійних тестів дотримуйтесь наступного:

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

Різниця між повторним тестуванням та регресійним тестуванням:

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

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

Крім того, ознайомтесь із повним списком відмінностей тут.

Виклики регресійного тестування:

Нижче наведено основні проблеми тестування для проведення регресійного тестування:

  • З послідовними прогонами регресії тестові набори стають досить великими. Через обмеження часу та бюджету неможливо виконати весь набір тестів регресії
  • Мінімізація набору тестів при максимальному покритті тесту залишається проблемою
  • Визначення частоти регресійних тестів, тобто після кожної модифікації або кожного оновлення збірки або після купи виправлень, є проблемою.

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

Клацніть тут, якщо відео недоступне

Висновок:

Ефективна стратегія регресу, що заощаджує організації як часу, так і грошей. Відповідно до одного з тематичних досліджень у банківській сфері, регресія економить до 60% часу на виправлення помилок (що було б виявлено за допомогою регресійних тестів) та 40% грошей