Параметризація в QTP/UFT з прикладом

⚡ Розумний підсумок

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

  • 🎯 Визначення: Параметризація замінює фіксоване значення на змінний вхідний сигнал, тому QTP/UFT можна повторно використовувати один скрипт для багатьох тестових умов.
  • 📊 Таблиця даних: Зберігайте ім'я агента, пароль або інші дані на глобальному аркуші для кожної дії або на аркуші дій лише для однієї дії.
  • 🌐 Змінні середовища: Спільне використання вбудованих, визначених користувачем внутрішніх або визначених користувачем зовнішніх значень XML для кожної дії в тесті.
  • 🔗 Параметри тесту/дії: Передати вхідне значення у викликану дію та повернути вихідне значення у викликаючу дію.
  • 🎲 Випадкове число: Згенерувати унікальне числове значення в межах визначеного діапазону для кожної ітерації, дії або всього прогону.
  • ▶ ゚ Виконання: Запустіть скрипт один раз і дозвольте QTP/UFT автоматично перебирати кожен рядок даних, повідомляючи про кожен пройдений або невдалий результат по рядках.
  • Оптимізація: Поєднуйте драйвери даних із параметризованими полями, щоб знаходити в одному вікні всі константи, які можна параметризувати.

Що таке QTP Параметризація?

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

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

Типи параметризації в QTP

UFT (раніше QTP) підтримує чотири типи параметрів, кожен з яких підходить для різного типу змінних даних:

  1. Параметри таблиці даних
  2. Параметри перевірки/дій
  3. Параметри змінної середовища
  4. Параметри випадкових чисел

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

Тип параметра Звідки походить цінність Типовий варіант використання
Таблиця даних Глобальна або дія (локальна) електронна таблиця, що постачається разом із тестом Виконання тих самих кроків з багатьма рядками тестових даних
Змінна середовища Вбудовані значення, значення, встановлені всередині тесту, або зовнішній XML-файл Спільне використання одного постійного значення, такого як URL, у кожній дії
Тест/Дія Вхідне або вихідне значення, що передається між діями Пересилання значення, отриманого в одній дії, до іншої дії
Випадкове число Число, згенероване автоматично в межах визначеного діапазону Створення унікального значення, такого як ідентифікатор замовлення, під час кожного запуску

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

Параметризація таблиці даних: покроковий приклад

Цей Мікрофокус UFT підручник демонструє, як параметризувати тест входу для програми бронювання авіаквитків за допомогою таблиці даних. Ви можете здивуватися, чому стільки зусиль витрачається на автоматизацію простого входу. Цінність стає зрозумілою, як тільки сценарій перевіряє, чи може користувач успішно увійти за допомогою комбінація дійсного буквено-цифрового імені агента та пароля значення. Кроки тестування залишаються незмінними, але обсяг даних для тестування зростає. У цьому прикладі покрокове керівництво обмежується 3 з 8 можливих комбінацій.

Сценарій тесту Етапи тестування Дані тесту
Переконайтеся, що користувач успішно ввійшов у програму після введення КОМБІНАЦІЇ дійсних БУКВЕННО-ЦИФРОВОГО імені агента та пароля Крок 1) Відкрийте програму бронювання авіаквитків
Крок 2) Введіть дійсне ім’я агента
Крок 3) Введіть дійсний пароль
Крок 4) Натисніть OK
Крок 5) Закрийте програму після успішного входу.
Ім'я агента = Guru
Пароль = Mercury
Ім'я агента = Guru99
Пароль = МЕРКУРІЙ
Ім'я агента = 9999
Пароль = ртуть

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

Параметризація в QTP

Найпростіший спосіб параметризації аргументу, у цьому прикладі Guru, є:

  1. Натисніть «Перегляд ключових слів».
  2. Натисніть значок Параметризація.

Параметризація в QTP

Відкриється діалогове вікно «Конфігурація значення» зі значенням, яке наразі встановлено на константу. Натисніть кнопку «Параметр». QTP призначає параметру назву за замовчуванням, яку можна перейменувати, перш ніж натиснути кнопку «OK». За замовчуванням новий стовпець додається до аркуша «Глобальна таблиця даних», тому значення стає доступним для кожної дії в тесті; вибір аркуша «Дія (локальна)» натомість охоплює лише одну дію.

Параметризація в QTP

У глобальному аркуші стовпець із заголовком «Ім’я агента» та значенням Guru створюється. Ви можете додати більше рядків значень для цього параметра.

Параметризація в QTP

Перехід на експертний погляд показує, що «Ім’я агента» було замінено посиланням на параметр «Guru”, а також тип використаного аркуша.

Параметризація в QTP

Ви можете параметризувати аргумент Пароль таким самим чином і ввести інший набір тестових даних.

Параметризація в QTP

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

Параметризація в QTP

Параметри змінних середовища в UFT

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

  • Вбудований: Попередньо визначені значення, такі як назва тесту, назва дії або версія операційної системи, які UFT заповнюється автоматично.
  • Внутрішній, визначений користувачем: Значення, які ви встановлюєте всередині тесту за допомогою скрипта; вони існують лише для поточного запуску та не зберігаються разом із тестом.
  • Зовнішній, визначений користувачем: Пари ім'я-значення, що зберігаються у зовнішньому XML-файлі, який завантажується перед початком виконання.

Щоб використовувати змінну середовища всередині кроку, відкрийте діалогове вікно «Конфігурація значення» для комірки, виберіть «Середовище» як тип параметра та виберіть назву змінної. Наведений нижче код VBScript показує всі три типи змінних всередині однієї дії:

' Read a Built-in environment variable
MsgBox Environment.Value("OS")

' Set and read a User-Defined Internal environment variable
Environment.Value("AppURL") = "https://demo.guru99.com/V4/"
MsgBox Environment.Value("AppURL")

' Load a User-Defined External XML file, then read a value from it
Environment.LoadFromFile "C:\Guru99\EnvConfig.xml"
MsgBox Environment.Value("Address")

Щоб створити зовнішній файл, про який йдеться вище, створіть XML-документ з кореневим каталогом <Environment> елемент і один <Variable> елемент для кожної пари ім'я-значення, а потім завантажте його з Файл > Налаштування > Середовище в UFT перед запуском тесту. Зовнішні змінні доступні лише для читання після завантаження, тому оновлюйте вихідний XML-файл щоразу, коли значення потрібно змінити.

Змінні середовища відрізняються від параметрів Test/Action областю видимості: змінна середовища доступна для кожної дії в тесті, тоді як параметр Test/Action передається явно між двома конкретними діями, що є типом, який розглядається далі.

Параметри тесту та дії в UFT

Параметри Test/Action дозволяють одній дії передавати значення іншій дії як вхідний параметр, а викликаній дії повертати значення як вихідний параметр. На відміну від змінних середовища, які видимі для всього тесту, параметр Test/Action існує лише для конкретного виклику, який його визначає, що дозволяє повторно використовувати дії в різних тестах.

Щоб створити його, клацніть правою кнопкою миші на дії в тестовому потоці, виберіть «Властивості дії» та додайте параметр на вкладці «Вхідні параметри» або «Вихідні параметри» з назвою та типом даних. Дія потім може безпосередньо посилатися на параметр у своїх кроках. Коли інша дія викликає цю дію, наприклад, за допомогою RunAction "VerifyLogin", oneIteration, "Guru99", "Mercury", значення, надані у виклику, заповнюють вхідні параметри для цього запуску.

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

Параметри випадкових чисел у UFT

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

Щоб налаштувати його, відкрийте діалогове вікно «Конфігурація значення» для комірки та виберіть «Випадкове число» як тип параметра. UFT запитує числовий діапазон, необов'язкову назву параметра та частоту генерування нового значення:

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

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

Переваги параметризації

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

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

Натисніть тут якщо відео недоступне

Поширені запитання

Глобальний аркуш містить один набір значень, спільний для кожної дії в тесті, тоді як аркуш Дія (локальна) містить значення, приватні для окремої дії, які використовуються лише тоді, коли ця дія повторюється.

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

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

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

Modern UFT Один з релізів включає ідентифікацію об'єктів на базі штучного інтелекту та тести самовідновлення, але вибір полів для параметризації все ще є ручним кроком, який виконується через діалогове вікно «Конфігурація значень».

Підсумуйте цей пост за допомогою: