Що таке тестування на основі даних? Навчіться створювати фреймворк

Зміст:

Anonim

Перевірка даних

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

Управління даними

Data Driven Framework - це система тестування автоматизації, в якій вхідні значення зчитуються з файлів даних і зберігаються у змінних у тестових скриптах. Це дозволяє тестувальникам складати як позитивні, так і негативні тести в один тест. Вхідні дані в структурі, керованій даними, можуть зберігатися в одному або декількох джерелах даних, таких як .xls, .xml, .csv та базах даних.

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

  • Що таке тестування на основі даних?
  • Чому тестування на основі даних?
  • Як створити структуру автоматизації, керовану даними
  • Кращі практики тестування на основі даних:
  • Переваги тестування на основі даних
  • Недоліки тестування на основі даних:

Чому тестування на основі даних?

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

Приклад:

Наприклад, ми хочемо протестувати систему входу з кількома полями введення з 1000 різними наборами даних.

Щоб перевірити це, ви можете застосувати наступні різні підходи:

Підхід 1) Створіть 1000 сценаріїв по одному для кожного набору даних та виконуйте кожен тест окремо по одному.

Підхід 2) Вручну змініть значення в тестовому сценарії та запустіть його кілька разів.

Підхід 3) Імпортуйте дані з листа Excel. Отримайте дані тесту з рядків Excel один за одним і виконайте сценарій.

У наведених трьох сценаріях перші два є трудомісткими та трудомісткими. Тому ідеально дотримуватися третього підходу.

Таким чином, третій підхід - це не що інше, як керований даними фреймворк.

Як створити структуру автоматизації, керовану даними

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

Крок 1) Визначте тестові випадки

  • Введіть правильне ім’я користувача та пароль - Успіх входу
  • Введіть неправильне ім’я користувача та правильний пароль - Помилка входу
  • Введіть правильне ім’я користувача та неправильний пароль - Помилка входу

Крок 2) Створіть докладні попередні кроки для вищезазначених 3 тестових випадків

Тестовий кейс # Опис Тестові кроки Дані тесту очікувані результати
1 Перевірте Увійти на наявність дійсних даних
  1. Запустіть програму
  2. Введіть пароль користувача
  3. Клацніть Добре
  4. Перевірте результати
Ім'я користувача: дійсний пароль: дійсний Успіх входу
2 Перевірте Увійти на наявність недійсних облікових даних
  1. Запустіть програму
  2. Введіть пароль користувача
  3. Клацніть Добре
  4. Перевірте результати
Ім'я користувача: недійсний пароль: дійсний Помилка входу
3 Перевірте Увійти на наявність недійсних облікових даних
  1. Запустіть програму
  2. Введіть пароль користувача
  3. Клацніть Добре
  4. Перевірте результати
Ім'я користувача: дійсний пароль: недійсний Помилка входу

Крок 3) Створіть тестовий сценарій

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

// Це псевдокодекс// Крок тесту 1: Запуск програмиdriver.get ("URL-адреса додатка");// Крок 2 тесту: Введіть ім’я користувачаtxtbox_username.sendKeys ("дійсний");// Крок 3 тесту: Введіть парольtxtbox_password.sendKeys ("недійсний");// Крок тесту 4: Перевірка результатівЯкщо (Наступний екран) друк успіху ще Fail

Крок 4) Створіть excel / csv із вхідними тестовими даними

Крок 5) Крок Змініть сценарій, щоб повторити вхідні тестові дані. Команди введення також повинні бути параметризовані

// Це псевдокодекс// Цикл 3 разидля (i = 0; i & lt; = 3; i ++) {// Зчитування даних з Excel і зберігання у зміннихint input_1 = ReadExcel (i, 0);int input_2 = ReadExcel (i, 1);// Крок тесту 1: Запуск програмиdriver.get ("URL-адреса додатка");// Крок 2 тесту: Введіть ім’я користувачаtxtbox_username.sendKeys (input_1);// Крок 3 тесту: Введіть парольtxtbox_password.sendKeys (введення_2);// Крок тесту 4: Перевірка результатівЯкщо (Наступний екран) друк успішноще Помилка}

Вище є лише 3 тестові кейси. Тестовий скрипт можна використовувати для перебору наступних тестових випадків, просто додаючи значення даних тесту до Excel

  • Введіть неправильне ім’я користувача та неправильний пароль - Помилка входу
  • Введіть правильне ім’я користувача та пароль пусті - Помилка входу
  • Введіть пусте ім’я користувача та пустий пароль - Помилка входу

І так далі

Кращі практики тестування на основі даних:

Нижче наведено найкращі практики тестування на основі даних:

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

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

Керування даними пропонує багато переваг, деякі з них:

  1. Дозволяє тестувати додаток із кількома наборами значень даних під час тестування на регресію
  2. Тестові дані та дані перевірки можуть бути організовані лише в одному файлі, і це окремо від логіки тестового випадку.
  3. На основі інструменту можна мати тестові сценарії в одному сховищі. Це робить тексти легкими для розуміння, обслуговування та управління.
  4. Дії та функції можна використовувати повторно в різних тестах.
  5. Деякі інструменти автоматично генерують дані тесту. Це корисно, коли необхідні великі обсяги випадкових тестових даних, що допомагає економити час.
  6. Тестування на основі даних може виконувати будь-яку фазу розробки. Тестові турботи, керовані даними, як правило, об’єднуються в одному процесі. Однак його можна використовувати в декількох тестових випадках.
  7. Дозволяє розробникам та тестувальникам чітко відокремлювати логіку своїх тестових випадків / сценаріїв від даних тесту.
  8. Ті самі тестові кейси можна виконувати кілька разів, що допомагає зменшити тестові кейси та сценарії.
  9. Будь-які зміни в сценарії тесту не впливають на дані тесту

Недоліки тестування на основі даних:

Деякі недоліки методу автоматизованого тестування на основі даних:

  1. Якість тесту залежить від навичок автоматизації виконавчої команди
  2. Перевірка даних - це трудомістке завдання при тестуванні великої кількості даних.
  3. Технічне обслуговування - це велика проблема, оскільки для тестування на основі даних необхідна велика кількість кодування.
  4. Потрібні технічні навички високого рівня. Можливо, тестувальнику доведеться вивчити абсолютно нову мову сценаріїв.
  5. Буде більше документації. В основному це пов’язано з інфраструктурою тестів управління сценаріями та результатами тестування.
  6. Для створення та обслуговування файлів даних потрібен текстовий редактор, наприклад Блокнот.

Висновок:

  • Керування даними - це тестова система автоматизації, яка зберігає тестові дані у таблиці або у форматі електронної таблиці.
  • У структурі автоматизації тестів, керованої даними, вхідні дані можуть зберігатися в одному або декількох джерелах даних, таких як xls, XML, csv та бази даних.
  • Створення індивідуального тесту для кожного набору даних - це тривалий і трудомісткий процес. Структура тестування на основі даних вирішує цю проблему, зберігаючи дані окремо від функціональних тестів.
  • У тестуванні на основі даних це ідеальний варіант використання реалістичної інформації
  • Це дозволяє тестувати додатки з декількома наборами значень даних під час тестування на регресію
  • Недоліком цього методу є те, що він залежить від навичок автоматизації виконавчої команди