Топ-100 запитань і відповідей на інтерв’ю QTP / UFT у 2025 році
Ця анкета розділена на запитання для початківців і для просунутих. Якщо ви маєте досвід QTP, перейдіть до запитання №50. Однак ми рекомендуємо прочитати ВСІ запитання, оскільки це підготує вас до співбесіди.
Запитання та відповіді на співбесіді QTP/UFT для першокурсників
1) Які є типи репозиторіїв об’єктів у Micro Focus UFT.
QTP підтримує 2 типи сховищ об'єктів
1) Спільне сховище об’єктів (також називається глобальним)
2) Репозиторій об’єктів для кожної дії (також називається локальним)
За умовчанням використовується репозиторій об’єктів для кожної дії. Розширення репозиторію Per-Action – «.mtr».
Спільне сховище об’єктів є кращим при роботі з динамічними об’єктами, які викликаються в кількох тестах. Розширення «.tsr»
👉 Безкоштовне завантаження PDF: QTP Interview Questions & Answers
2) Які середовища підтримує HP QTP?
QTP підтримує такі середовища
|
|
|
Щоб дізнатися більше про надбудови та як ними користуватися, перегляньте це відео підручник.
3) Чи можемо ми викликати тест QTP з іншого тесту за допомогою сценаріїв. Припустимо, є 4 тести, і я хочу викликати ці тести в основному сценарії. Чи можливо це в QTP?
Так. Ви можете викликати 4 або навіть більше сценаріїв у своїх тестах. Для цього спочатку вам потрібно зробити Дії у відповідних сценаріях придатними для повторного використання. Потім із цільового сценарію ви можете здійснювати виклики цих багаторазових дій.
4) Що таке розділення дій і мета його використання в QTP?
Поділ дії — це розділення існуючої дії на дві частини. Мета полягає в тому, щоб розділити дії на основі їх функціональності, щоб покращити повторне використання коду.
5) Як ви будете поводитися Java дерево в QTP?
Перш за все ви виберете Java Додати – увійти та запустити QTP. Наступний крок записи операцій на Java дерево. Якщо під час запису у вас виникла проблема, ви можете вибрати Інструменти > Ідентифікація об’єкта > Java, об’єкт дерева та внесіть зміни в обов’язкові та допоміжні властивості, щоб увімкнути ідентифікацію.
Порада: ви можете базувати свою відповідь на подібних рядках для будь-якого іншого об’єкта будь-якого середовища. Наприклад : якщо питання полягає в тому, як буде перевірятися SAP прапорець , Ви говорите , спочатку я виберу SAP Додайте … і так далі.
6) Поясніть, як QTP ідентифікує об'єкт?
QTP ідентифікує будь-який об’єкт GUI на основі його відповідних властивостей. Під час запису QTP визначатиме та зберігатиме особливі властивості (як визначено в налаштуваннях ідентифікації об’єкта) у сховищі об’єктів графічного інтерфейсу користувача. Під час виконання QTP порівнює збережені значення властивостей із властивостями на екрані, щоб унікально ідентифікувати об’єкт GUI.
Дізнатися більше про Ідентифікація об’єкта
7) Скільки типів режимів запису в QTP? Який буде використовуватися коли?
QTP підтримує 3 типи режимів запису
1. Звичайний режим, також званий контекстним
2. Режим низького рівня запису
3. Аналоговий режим
Звичайний режим: це режим запису за замовчуванням, який повністю використовує модель тестового об’єкта QTP. Він розпізнає об’єкти незалежно від їхнього положення на екрані. Це найкращий режим перекодування, який використовується для більшості дій автоматизації.
Режим запису низького рівня: у цьому режимі записуються точні координати x,y операцій вашої миші. Це корисно при тестуванні хеш-карт. Це корисно для запису об'єктів, які не ідентифікуються звичайним режимом QTP.
Аналоговий режим: цей режим записує точні «рухи» миші та клавіатури, які ви виконуєте відносно екрана/вікна програми. Цей режим корисний для таких операцій, як малювання зображення, запис підпису, операції перетягування.
Дізнатися більше про Режими запису в QTP
8) Як ви будете викликати з однієї дії на іншу?
Ми можемо викликати дію двома способами
1) Виклик копіювання дії. – У цьому випадку репозиторій Action Object, сценарій і Datable буде скопійовано в цільовий тестовий сценарій.
2) Заклик до наявної дії. – У цьому випадку Object Repository, Script і Datable НЕ будуть скопійовані, але буде зроблено виклик (посилання) на Action у вихідному сценарії.
9) Що таке віртуальні об’єкти?
Ваша програма може містити об’єкти, які поводяться як стандартні об’єкти, але не розпізнаються QTP. Ви можете визначити ці об’єкти як віртуальні об’єкти та зіставити їх із стандартними класами, такими як кнопка чи прапорець. QTP емулює дії користувача над віртуальним об’єктом під час сеансу запуску. У результатах тестування віртуальний об’єкт відображається так, ніби це стандартний об’єкт класу.
Наприклад, припустімо, що ви хочете записати тест на веб-сторінці, що містить растрове зображення, яке клацає користувач. Растрове зображення містить кілька різних областей гіперпосилань, і кожна область відкриває окрему цільову сторінку. Коли ви записуєте тест, веб-сайт збігається з координатами клацання на растровому зображенні та відкриває цільову сторінку.
Щоб дозволити QTP клацати по потрібних координатах під час сеансу запуску, ви можете визначити віртуальний об’єкт для області растрового зображення, яка включає ці координати, і зіставити його з класом кнопки. Коли ви запускаєте тест, QTP клацає растрове зображення в області, визначеній як віртуальний об’єкт, щоб веб-сайт відкрив правильну цільову сторінку.
10) Як виконати міжплатформне тестування та міжбраузерне тестування за допомогою QTP? Чи можете ви пояснити, навівши якийсь приклад?
Вам потрібно буде створити окремі дії, які піклуються про різні ОС і браузери
Кросплатформне тестування:
Використовуючи вбудовану змінну середовища, ви можете отримати інформацію про ОС.
напр. Платформа = Середовище («ОС»). Потім на основі платформи вам потрібно викликати дії, які ви записали на цій конкретній платформі.
Кросбраузерне тестування:
Використовуючи цей код, наприклад. Browser(“Core Values”).GetROProperty(“version”) ви можете витягти браузер та його відповідну версію. Наприклад: Internet Explorer 6 або Netscape 5. На основі цього значення ви викликаєте дії, які стосуються цього браузера.
11) Що таке логічне ім'я об'єкта?
Логічне ім’я – це ім’я, яке дає QTP під час створення об’єкта в репозиторії, щоб унікально ідентифікувати його серед інших об’єктів у програмі. Це ім’я використовуватиметься QTP для зіставлення імені об’єкта в сценарії з його відповідним описом у сховищі об’єктів. Наприклад: Browser(“Browser”).Page(“Guru99”) Тут Guru99 є логічною назвою об’єкта.
12) Що таке описове програмування?
Як правило, об’єкт і його властивості повинні бути записані в репозиторії об’єктів, щоб QTP міг виконувати з ним дії.
Використовуючи описове програмування, ви не зберігаєте об’єкт і значення його властивостей у сховищі об’єктів, а згадуєте пару значень властивості безпосередньо в сценарії.
Ідея описового програмування полягає не в тому, щоб обійти репозиторій об’єктів, а допомогти розпізнати динамічні об’єкти.
Дізнатися більше про DescriptПрограмування
13) Які властивості ви б використали для ідентифікації браузера та сторінки під час використання описового програмування?
Ви можете використовувати властивість name
Приклад: Browser("name:="xxx"").page("name:="xxxx"").....
OR
Ми також можемо використовувати властивість “micClass”.
Приклад: Browser("micClass:=browser").page("micClass:=page")....
14) Чи можемо ми записати програму, що працює на віддаленій машині за допомогою QTP?
Так, ви можете записати віддалену програму, якщо ви отримуєте доступ до програми через локальний браузер, а не через віддалений пристрій, як citrix.
Якщо ви все ще не можете записати, радимо встановити QTP і програму на одній машині
15) Поясніть на прикладі ключове слово CreateObject.
Створює та повертає посилання на об’єкт автоматизації
SYNTAX: CreateObject(servername.typename [, location])
Аргументи
ім'я сервера: Вимагається. Ім'я програми, що надає об'єкт.
typename: Вимагається. Тип або клас створюваного об’єкта.
Розташування: Додатково. Ім'я мережевого сервера, на якому буде створено об'єкт.
приклад: Установіть IE = CreateObject(“InternetExplorer.Application”)
16) Чи можете ви переключатися між Per-Action і Shared Object Repository? Якщо так, то як?
Так. Ми можемо помінятися. Перейдіть до Тест—>Налаштування—>Ресурси. Тут ви можете вибрати сховища.
17) Що таке Object Spy? Як ним користуватися?
Object Spy допомагає визначати властивості об’єкта та методи часу виконання та тестування програми, що тестується.
Ви можете отримати доступ до шпигуна об’єктів безпосередньо з панелі інструментів або з діалогового вікна сховища об’єктів Box.
Це дуже корисно під час DescriptПрограмування
Дізнатися більше про Об'єктний шпигун
18) Коли лише порядкові ідентифікатори можуть зробити об’єкт унікальним, тоді чому їм не надається найвищий пріоритет? Чому це спочатку є обов’язковим, а потім допоміжним. Чому ми не можемо використовувати порядкові ідентифікатори безпосередньо?
Враховуйте наступне –
a) Якщо два об’єкти накладаються один на одного, розпізнавання об’єктів на основі розташування не вдасться.
b) Якщо використовується лише розпізнавання на основі індексу, ваш сценарій працюватиме, але час виконання сценарію збільшиться.
Тому використовуються обов'язкові та допоміжні властивості.
19) Яке розширення файлу коду в QTP?
Розширення кодового файлу є script.mts
20) Коротко поясніть об’єктну модель автоматизації QTP.
Об’єктна модель автоматизації QTP стосується автоматизації самого QTP. Майже вся конфігурація та функціональність, надані QTP, представлені об’єктною моделлю автоматизації QTP. Майже всі діалогові вікна в QTP мають відповідний об’єкт автоматизації, який можна встановити або отримати за допомогою відповідних властивостей або методів у моделі об’єктів автоматизації. Об’єкти автоматизації QTP можна використовувати разом зі стандартними елементами програмування VB, такими як ітераційні цикли або умовні оператори, щоб допомогти вам проектувати сценарій на вибір.
21) Яке значення виведення тексту в QTP?
Значення виводу тексту дають змогу отримувати текст, який з’являється в тестовій програмі під час виконання.
У разі параметризації текстові вихідні значення фіксуватимуть значення, що з’являються в кожній ітерації, які зберігатимуться в таблиці даних під час виконання для подальшого аналізу.
22) Що таке крок Generator?
Крок Generator дає змогу використовувати для додавання тестових кроків у ваш сценарій. За допомогою генератора кроків ви можете додавати кроки до свого сценарію, фактично не записуючи його.
23) Як змусити QTP зрозуміти різницю між однотипними об’єктами. Припустімо, що на сторінці є 5 прапорців, і мені потрібно вибрати другий, як це зробити за допомогою сценарію?
Ви можете використовувати порядкові ідентифікатори, такі як index, разом із невеликим описовим програмуванням для розпізнавання об’єктів.
Дивись а відео цього прикладу.
24) Що таке Test Fusion Report?
Test Fusion Report відображає всі аспекти тестування та організовано у форматі дерева.
Він надає деталі кожного кроку, виконаного для всіх ітерацій.
Він також надає таблицю даних під час виконання, знімки екрана та відео тестового запуску, якщо вибрано.
25) Як ви можете обробляти винятки в QTP?
У QTP виняткова обробка здійснюється за допомогою
a. Сценарії відновлення.
b. Використання оператора «Про помилку».
У сценарії відновлення ви повинні визначити.
1. Ініційовані події.
2. Етапи відновлення.
3. Тестовий запуск після відновлення.
На рівні сценарію ви можете використовувати оператори «Продовжити далі» у разі помилки та «Перейти до 0» у разі помилки.
26) Які є типи змінних середовища в QTP?
Змінні середовища в QTP бувають трьох типів:
1) Вбудований (лише для читання)
2) Визначений користувачем внутрішній (лише для читання)
3) Визначений користувачем зовнішній (читання/запис)
Ви встановлюєте змінну середовища за допомогою наступного синтаксису
Environment.Value( "name") = "Guru99"
Ви можете отримати змінну середовища за допомогою наступного синтаксису
Environment.Value("name")
— Це призведе до повторного запуску імені як Guru99
Environment.Value("OS")
— Це поверне вашу системну ОС
27) Яка різниця між контрольною точкою растрового зображення та контрольною точкою зображення?
Контрольна точка Bitmap виконує попіксельне порівняння зображення або частини зображення.
Контрольна точка зображення виконує піксельне порівняння, але натомість порівнює властивості зображення, такі як альтернативний текст, URL-адреса призначення тощо.
28) Яка різниця між функціями та діями в QTP?
Дії мають власне сховище об’єктів і таблицю даних. Дії допомагають зробити ваш тест модульним і збільшити кількість повторного використання. Приклад: ви можете розділити свій сценарій на дії на основі таких функцій, як вхід, вихід тощо.
Функції — це концепція програмування VB Script і не мають власного репозиторію об’єктів або таблиці даних. Функції допомагають у повторному використанні вашого коду. Приклад: ви можете створити функцію у своєму сценарії для об’єднання двох рядків.
29) Що таке перегляд ключових слів і експертний режим у QTP?
Перегляд ключових слів — це перегляд на основі піктограм, який показує кроки тесту в табличному форматі. Він також автоматично створює документацію для етапів тестування.
Експертне подання надає відповідний оператор VB Script для кожного тестового кроку в поданні ключових слів.
30) Поясніть процес тестування QTP?
Процес тестування Quick Test складається з 6 основних етапів:
1) Створіть свій план тестування – це підготовчий етап, на якому ви визначаєте точні етапи тестування, тестові дані та очікувані результати для автоматизованого тестування. Ви також визначаєте середовище та конфігурації системи, необхідні для створення та запуску тестів QTP.
2) Запис сеансу у вашій програмі – під час цієї фази ви виконуватимете кроки тестування один за одним на своєму AUT, а QTP автоматично записуватиме відповідні оператори сценарію VB для кожного виконаного кроку.
3) Удосконалення тесту – на цьому етапі ви вставите контрольні точки, вихідні значення, параметризацію, логіку програмування, як-от цикли if…else, щоб покращити логіку вашого тестового сценарію.
4) Повторне відтворення та налагодження – після покращень ви повторно відтворите сценарій, щоб перевірити, чи він працює належним чином, і за потреби налагодите.
5) Запустіть свої тести – на цьому етапі ви виконайте фактичне виконання свого тестового сценарію.
6) Аналіз результатів тестування – після завершення тестування ви проаналізуєте результати у створеному звіті Test Fusion.
7) Звітування про дефекти – про будь-які виявлені інциденти потрібно повідомляти. Якщо ви використовуєте Quality Center, дефекти можуть бути автоматично викликані для невдалих тестів у QTP.
31) Які є різні типи тестових автоматизованих фреймворків?
Типи Automation Frameworks:
1) Лінійний сценарій – запис і відтворення
2) Бібліотека тестів Archiтектурний фреймворк.
3) Система тестування на основі даних.
4) Система тестування на основі ключових слів або таблиць.
Дізнатися більше про Платформи автоматизації тестування.
32) Як ви перевірятимете веб-програму на непрацюючі посилання за допомогою QTP?
Ви можете використовувати контрольну точку сторінки, яка надає кількість дійсних/недійсних посилань на сторінці.
33) Що таке таблиця даних під час виконання? Де я можу знайти та переглянути цю таблицю?
Такі дані, як параметризований вихід, значення контрольних точок, вихідні значення, зберігаються в таблиці часу виконання. Це файл xls, який зберігається в папці результатів тесту. Його також можна отримати у звіті Test Fusion.
34) Яка різниця між контрольною точкою та вихідним значенням.
Контрольна точка — це точка перевірки, яка порівнює поточне значення вказаної властивості з очікуваним значенням цієї властивості. На основі цього порівняння він генеруватиме статус PASS або FAIL.
Вихідне значення — це значення, отримане під час тестового прогону, яке можна зберегти у вказаному місці, наприклад у таблиці даних або навіть у змінній. На відміну від контрольних точок, статус PASS/FAIL не генерується.
35) Як би ви підключилися до бази даних за допомогою VBScript?
Для підключення до бази даних необхідно знати
a) рядок підключення вашого сервера
б) ім'я користувача
в) пароль
d) ім'я DNS
Ви можете закодувати команду підключення до бази даних безпосередньо або використовувати SQL Інструмент запитів, наданий QTP.
36) Що таке інструмент пакетного тестування QTP?
Ви можете використовувати інструмент пакетного тестування для запуску кількох сценаріїв. Щойно сценарії додано в інструмент, він автоматично відкриє сценарії та почне виконувати їх один за одним.
37) Які недоліки QTP?
Починаючи з версії 10 QTP
1) Величезні тести в QTP споживають багато пам’яті та збільшують використання ЦП.
2) Оскільки QTP зберігає результати у файлі HTML (а не в текстовому форматі), папка результатів іноді стає великою.
38) Що таке необов’язковий крок?
Крок, оголошений необов’язковим, не є обов’язковим для виконання. Якщо відповідний об’єкт GUI присутній, QTP виконує над ним операцію. Якщо об’єкт GUI відсутній, QTP пропускає необов’язковий крок і переходить до виконання наступного кроку.
39) Що таке Reporter.ReportEvent?
Reporter.Reportvent — це стандартний метод, наданий QTP для надсилання спеціальних повідомлень у вікно результатів тесту.
синтаксис
Reporter.ReportEvent EventStatus, ReportStepName, Details [, ImageFilePath] where EventStatus = 0 or micPass 1 or micFail 2 or micDone 3 or micWarning
Результати можуть мати будь-який статус, як-от «Пройшов», «Не пройшов», «Попередження» тощо. Ви також можете надіслати знімок екрана у вікно результатів тесту.
40) Як ви будете оголошувати змінну в QTP?
Ви оголошуєте за допомогою ключового слова DIM. Ви присвоюєте значення змінній за допомогою ключового слова SET.
Ex.
Dim temp 'Оголосить змінну temp
Set temp = 20 ' Призначить значення 20 для temp.
41) Що таке GetRoProperty?
GetRoProperty — це стандартний метод, наданий QTP для отримання значень властивостей об’єкта під час виконання.
42) Що таке розумна ідентифікація?
Як правило, якщо хоча б одна властивість об’єкта на екрані не відповідає властивостям записаного об’єкта. Тест провалився.
У інтелектуальній ідентифікації QTP не видає помилку, якщо значення властивості не збігаються, але використовує властивості базового фільтра та додаткового фільтра для унікальної ідентифікації об’єкта. У розумній ідентифікації, якщо значення властивості не збігається, сценарій не завершується помилкою, але продовжує порівнювати наступну властивість. Розумну ідентифікацію можна ввімкнути в діалоговому вікні ідентифікації об’єкта.
Дізнатися більше про Ідентифікація SMART
43) Як би ви експортували сценарій з одного ПК на інший у QTP?
Ми можемо скористатися функцією «Створити сценарій», доступною на вкладці «Ідентифікація об’єкта», «Налаштування тесту» та «Інструменти/параметри», щоб створити архівний файл сценарію на вихідному комп’ютері. Потім ці zip-файли можна імпортувати в QTP на комп’ютері призначення.
44) Чи можна запустити два екземпляри QTP на одній машині?
Ні. Ви можете працювати лише з одним екземпляром QTP на одній машині. Але сам QTP може працювати на кількох екземплярах програми, що тестується (AUT). Приклад: QTP може працювати з кількома вікнами браузера IE.
45) Укажіть синтаксис для імпорту/експорту xls у QTP.
DataTable.ImportSheet "..\..\TestData\Input.xls",1,dtGlobalSheet
DataTable.ExportSheet "..\..\Results\Output.xls","Global"
46) Що таке SetToProperty?
SetToProperty змінює властивість об’єкта, що зберігається в сховищі об’єктів. Однак ці зміни не є постійними.
47) Яка стандартна затримка часу для веб-додатків у QTP?
Стандартна затримка становить 60 секунд. Це можна змінити в налаштуваннях тесту.
48) Що таке інструмент перетворення дій?
Це вбудований інструмент, наданий QTP для перетворення дій у компоненти бізнес-процесу.
49) Що таке розширення для бібліотеки функцій?
Розширення є '.QFL'
50) Якщо глобальна таблиця даних не містить даних, а локальна таблиця даних містить два рядки даних, скільки разів повторюватиметься тест?
Тест повторюватиметься лише один раз – глобальна ітерація.
Запитання та відповіді на співбесіді UFT/QTP для досвідчених
51) Поясніть, як читати ключ реєстру в UFT?
Наведений тут приклад пояснює, як читати ключ реєстру в UFT
‘Create a shell object Set MyShell= CreateObject (“WScript.Shell”) Read the value of key from the registry RegValue =MyShell.RegRead (varpathofkey) ‘in above function we have to pass the path of key in registery’. e.g. HKCU\software\ie\settings msgbox RegValue
52) Які є способи в UFT отримати змінні системного середовища в UFT?
Є три способи отримати змінні системного середовища в UFT
Використовуйте об’єкт оболонки WSH
- Використовуйте клас Win32_Environment WMI
- Читання змінних з реєстру
Set myShell = CreateObject (“WScript.Shell”) WScript.Echo myShell.ExpandEnvironmentStrings( "%PATHEXT%" ) myShell=Nothing,
Результатом буде .BAT;.CMD;.VBS;. VBE;. JS;. JSE
Інші змінні користувача, такі як TEMP, перезаписують системний аналог
Set myShell = CreateObject( "WScript.Shell" ) WScript.Echo myShell.ExpandEnvironmentStrings( "TEMP=%TEMP%" ) myShell=Nothing
Вихід буде
TEMP:C:\DOCUME~1\You\LOCALS~1\Temp
53) Згадайте кроки, необхідні в UFT для надсилання пошти з Outlook?
Щоб надіслати пошту з Outlook в UFT,
Set Outlook = CreateObject ("Outlook.Application") Dim Message 'As Outlook.MailItem Set Message = Outlook.CreateItem(olMailItem) With Message .Subject = Subject .HTMLBody = TextBody .Recipients.Add (aTo) Const olOriginator = 0 .Send End With
54) Поясніть, як ви можете отримати дані з бази даних в UFT?
Щоб отримати дані з бази даних в UFT, ви повинні виконати наведений нижче код
Set db= createobject (“ADODB.Connection”) db.Open “Provider=Microsoft.Jet.OLEDB.4.0;Data Source=G:\guru99\vb6\admission_project.mdb; Persist Security Info= False” Set rst=createobject(“ADODB.Recordset”) rst.Open “select*from Course”, db, 3 id=rst. RecordCount For i=0 to id-1 Print rst.field (0) & rst.fields (1) & rst.fields (2) & rst.fields (3) rst.Movenext Next
55) Які коди ми можемо використовувати для отримання файлів із ftp-сервера в UFT?
Щоб отримати ftp-файли з ftp-сервера, потрібно використати наведений нижче код
a) put- для зберігання одного файлу на сервері
b) get- Щоб завантажити один файл із ftp-сервера
c) mget - для завантаження кількох файлів із сервера
d) mput - для зберігання кількох файлів на сервері
e) delete- Щоб видалити файли на ftp-сервері
MyShell.Run "%comspec% /c FTP -n -s:" & commandstoworkwithftp & " " & Site, 0,True
56) Як у UFT можна запобігти блокуванню системи?
Щоб запобігти блокуванню системи, можна використовувати будь-який із двох способів
- Створіть простий файл vbs із кодом для натискання клавіші numlock і запуску цього файлу vbs
- Відредагуйте один розділ реєстру «DisableLockWorkstation =1», щоб вимкнути блокування
57) Що означає описове програмування в UFT?
Descriptive програмування включає назву властивості та значення властивості. Кожного разу, коли UFT стикається з труднощами в ідентифікації об’єктів із сховища об’єктів, а замість цього об’єкт ідентифікується безпосередньо зі сценарію, це називається описовим програмуванням.
58) В UFT поясніть різницю між файлами qfl і vbs?
a) qfl — це файл бібліотеки функцій швидкого тестування, а vbs — це файл Microsoftvbscript
b) qfl є невиконуваним файлом, тоді як vbs є виконуваним файлом
c) Щоб використовувати файл в UFT, пов’яжіть файл qfl із параметрами тестування, а щоб включити файл vbs, використовуйте «виконати інструкцію файлу»
59) Який код для запису даних у текстовий файл в UFT?
Записати дані в текстовий файл у коді UFT
Content = “Guru99 Rocks” Set Fo = createobject ("Scripting.FilesystemObject") Set f = Fo.openTextFile ("c:\myFile.txt",8,true) ' open in write mode f.Write (contents) f.Close Set f = nothing
60) Як записати дані у файл Excel в UFT?
Код для запису даних перевершувати файл в UFT є
filepath = “C:\Bugs\Reports.xlsx” Set objExcel = CreateObject(“Excel.Application”) objExcel.Visible= True Set Wb= objExcel.Workbooks.Open (filepath) Wb.worksheets(1).Cells(1,1).Value = “guru99” read value from Excel file
61) Як створити файл TSR в UFT?
TSR означає Test Shared Repository, він створений для спільного використання репозиторію об’єктів.
Щоб створити файл TSR, виконайте наведені нижче дії
- Відкритий репозиторій об'єктів
- Перейдіть до меню файлів
- Перейдіть до параметра експорту локальних об’єктів і виберіть його
Після цього UFT попросить вас зберегти файл .tsr. Дайте шлях і збережіть. Це створить файл .tsr в UFT
62) Як підключитися до QC в UFT?
Щоб підключитися до QC, UFT надає можливість підключити QC безпосередньо з UFT GUI.
a) Перейдіть до меню файлів
b) Виберіть (QC) центр якості
c) Вам буде запропоновано – Введіть URL-адресу контролю якості
d) Введіть ідентифікатор користувача, пароль і проект
Виконання наведених вище кроків дозволить вам підключитися до КЯ, а пізніше ви зможете виконати тести з самого КЯ.
63) Які існують типи Automation Framework в UFT?
Щоб полегшити процес автоматизації тестування за допомогою UFT, розроблено автоматизацію тестування. В UFT існує в основному три типи інфраструктур автоматизації
- Основа, керована ключовими словами: Він використовується, коли потрібно перевірити кілька функцій.
- Структура, керована даними: Він використовується для тестування одного потоку з різними тестовими даними, тестовим даним надається більше значення, ніж множинним функціям програми
- Гібридна структура: Це поєднання структури, керованої даними, і ключового слова.
64) Коли ми повинні використовувати описове програмування в UFT?
Через репозиторій об’єктів або програмування опису UFT ідентифікує об’єкти. Descriptive програмування використовується в наступних сценаріях
a) Використовується для видалення дублікатів об’єктів. Однакові об’єкти існують на різних екранах або вікнах вашої програми. Якщо ви використовуєте OR у цьому випадку, ви повинні зберігати той самий об’єкт під іншою ієрархією об’єктів в OR. Для вирішення такої ситуації, описовий
використовується програмування
b) У певних сценаріях недоцільно зберігати об’єкти в OR (сховищі об’єктів). Припустімо, якщо ви хочете надрукувати 100 посилань на сторінці, вам не слід зберігати всі посилання в OR. Замість цього ви повинні використовувати Descriptпрограмування доступу до цих посилань.
65) Що таке «settoproperty» і коли його використовувати в UFT?
Settoproperty розшифровується як властивість набору тестових об’єктів. Цю властивість можна використовувати для зміни значень об’єктів під час виконання. Ви можете редагувати значення властивостей під час виконання, але внесені зміни є тимчасовими.
66) Як створити масив словника в UFT?
Ми можемо створити масив словника за допомогою синтаксису
Dim ArrayofDictionary(2) First element of array Set ArrayofDictionary(0)= createobject("scripting.dictionary") ArrayofDictionary(0).Add "key1", "temp1" ArrayofDictionary(0).Add "key2", "temp2" Added keys in first dictionary Second element of array as dictionary Set ArrayofDictionary(1)= createobject("scripting.dictionary") ArrayofDictionary(1).Add "key1", "temp1" ArrayofDictionary(1).Add "key2", "temp2" Added keys in second dictionary…..and so on
67) Яка різниця між «Масивом» і «Словником»?
масив | Словник |
---|---|
Можливий динамічний масив | Немає поняття динамічного словника |
Розмір масиву необхідно встановити перед використанням масиву | Розмір словника встановлювати не потрібно |
Ми повинні використати оператор redim перед додаванням додаткового елемента в динамічний масив | Щоб додати додатковий елемент, не потрібно писати будь-який оператор. Ми просто використовуємо метод add |
Не існує конкретного методу звільнення пам’яті, якщо певний елемент не потрібен | Елемент, який більше не потрібен, можна видалити зі словника |
68) Що таке кругла функція в UFT?
Функція округлення в UFT використовується для округлення десяткового числа
Наприклад
Mydecimal = 6.3433333 Roundedvalue= Round(Mydecimal , 3) Print roundedvalue, it will print 6.343
69) Як знайти загальну кількість рядків у веб-таблиці в UFT?
Є три способи, якими ми можемо знайти кількість рядків у таблиці в UFT
a) Використання властивості rowcount об’єкта веб-таблиці UFT
b) Використання GetROProperty UFT
c) Використання HTML DOM + UFT
70) Як створити файл Excel в UFT?
кроки створять файл Excel в UFT,
'Create a new Microsoft Excel object Set myExcel = createobject("excel.application") 'To make Excel visible myExcel.Application.Visible = true myExcel.Workbooks.Add MyExcel.worksheets(1).Cells(1,1). Value = “Scenario Id” MyExcel.worksheets(1).Cells(1,2).Value = “Scenario Name” MyExcel.worksheets(1).Columns(1).ColumnWidth = 10 MyExcel.worksheets(1).Columns(2).ColumnWidth = 40 MyExcel.worksheets(1).Columns(3).ColumnWidth = 20 MyExcel.worksheets(1).Columns(4).ColumnWidth = 20 MyExcel.SaveAs "c:\guru99.xlsx" MyExcel.close objExcel.Quit blnFlag = False
Запитання та відповіді на інтерв’ю UFT для 7–10 років досвіду
71) Поясніть, як ми можемо експортувати таблицю даних до Excel в UFT?
Щоб експортувати таблицю даних у Excel, існує два способи.
a) DataTable.Export («C:\export.xls»)
b) DataTable.ExportSheet “C:\mysheet.xls” (Якщо файл excel не існує, створюється новий файл)
72) Як прочитати значення з комірки в таблиці даних в UFT?
Щоб прочитати значення з комірки, ми виконуємо процес у 2 кроки
a) Ми встановили покажчик рядка на першому кроці
b) На другому кроці ми визначаємо назву параметра/стовпця з аркуша для читання
приклад:
Для цього прикладу ми встановили вказівник рядка на 2 на аркуші транзакцій
Datatable.GetSheet(“Transactions”).SetCurrentRow(2)
Тепер ми маємо вказати, що ми хочемо прочитати значення зі стовпця module_name з аркуша транзакцій
Print datatable.Value (“Module_Name, “Transactions”)
73) Які цикли доступні в UFT і що вони роблять?
У UFT є 3 петлі
a) Do…..Loop : Do Loop повторюватиме блок операторів
b) For…..Next : Цикл For Next виконає серію операторів до досягнення певного значення лічильника
c) For……Each: щоб виконати серію операторів для кожного оператора для кожного об’єкта в колекції «For Every Loop» використовується
While….Wend Loop: While Wend Loop використовується для виконання серії операторів, доки виконується задана умова
74) Які типи помилок потрібно обробляти в UFT?
Існує три типи помилок, з якими можна зіткнутися в UFT
а) Синтаксичні помилки
б) Логічні помилки
c) Помилки виконання
75) Якими способами можна обробляти помилки під час виконання?
Існують різні способи обробки помилок під час виконання
а) Використання параметрів тесту
b) Використання оператора on error
c) Використання об’єкта err
г) Використання оператора виходу
д) Сценарії відновлення
f) Об’єкт звіту
76) Яка різниця між exitation і exititeration?
Exitation використовується, коли ми хочемо вийти з певної дії, тоді як exititeration використовується для виходу з певної ітерації дії.
77) Як у QTP видалити пробіли з рядка?
Ви можете використовувати функція заміни щоб видалити пробіли з рядка в QTP
Print replace(“ sdsd sd sd s “, “ “,”””)
Вихід буде sdsdsdsds
Функція itrim можна використовувати, якщо потрібно видалити лише пробіли на початку рядка
Print Itrim(“ sdsd sd s “) à Вихід буде «sdsd sd s ”
Ви можете використовувати функцію rtrim, щоб видалити пробіли в кінці рядка
Print rtrim(“ sdsd sd s ”) à Вихід буде “ sdsd sd s ”
78) Як у QTP отримати останній символ із рядка?
Код для отримання останнього символу рядка в QTP
print right( “junior,1) ‘ à Output will be “r”
79) Як додати точки синхронізації в QTP?
Є 4 способи, за допомогою яких ми можемо додати точки синхронізації в QTP
a) Заява Wait : цей оператор призупинить виконання на x секунд, доки не з’явиться об’єкт
b) Очікуйте власність : Цей метод чекатиме, поки властивість об’єкта не набуде певного значення
c) Заява про існування : цей оператор чекатиме, поки об’єкт стане доступним
d) Sync метод: код чекатиме, поки сторінка браузера повністю завантажиться. Цей метод використовується для тестування веб-додатків.
80) У QTP поясніть, що таке об’єкт крипти
Об’єкт Crypt у QTP використовується для шифрування рядків.
синтаксис
Crypt.Encrypt(“Guru99”)
Приклад:
У цьому прикладі значення в змінній pwd зашифровано за допомогою Crypt. Метод шифрування.
Потім це зашифроване значення вводиться в поле редагування.
pwd= “myvalue” pwd = Crypt.Encrypt (pwd) Browser(“myb”).WinEdit (“pwd”). SetSecure pwd
81) Згадайте, яка різниця між файлом виконання та бібліотекою функцій завантаження?
У файлі виконання ми не можемо налагодити оператори. За допомогою бібліотеки loadfunction оператори можна налагоджувати, а також можна завантажувати декілька файлів бібліотеки.
82) Поясніть, як можна знайти довжину масиву в QTP?
Код для визначення довжини масиву в QTP:
print (ubound(arr)+1)
Ubound повертає останній індекс у масиві, тому довжина масиву буде +1. Це буде загальна кількість елементів у масиві
83) Згадайте, які існують різні типи режимів запису в QTP? Який буде використовуватися коли?
QTP підтримує 3 типи режимів запису
a) Нормальний режим: це режим запису за замовчуванням, який використовується для більшості дій автоматизації. Незалежно від їхнього положення на екрані, він розпізнає об’єкти.
b) Режим запису низького рівня: він корисний для запису об’єктів, які не ідентифікуються в звичайному режимі QTP. Він записує точні координати x, y операцій вашої миші.
c) Аналоговий режим: цей режим корисний для таких операцій, як запис підпису, малювання зображення, операція перетягування.
84) Якими способами можна викликати дію з однієї дії на іншу?
Існує два способи виклику однієї дії до іншої
a) Заклик до копіювання дії: у цьому випадку сценарій і таблиця даних, репозиторій об’єктів дії буде скопійовано до тестового сценарію призначення
b) Виклик існуючої дії: у цьому випадку таблиця даних сценарію та репозиторій об’єктів не копіюються, замість цього буде створено посилання виклику на дію у вихідному сценарії
85) Що таке необов’язковий крок у QTP? Як можна додати необов’язковий крок у QTP?
Під час виконання тесту не вдається відкрити діалогове вікно, QTP не обов’язково перериває виконання тесту. Він проходить будь-який крок, позначений як «необов’язковий», і продовжує виконувати тест. За замовчуванням QTP автоматично позначає як додаткові кроки, які відкривають певні діалогові вікна. Щоб установити додатковий крок у ключовому слові, клацніть правою кнопкою миші та виберіть «Додатковий крок». Піктограму необов’язкового кроку буде додано на наступному кроці. У експертному поданні, щоб додати необов’язковий крок, додайте необов’язковий крок на початку оператора VBScript.
86) Як визначити масив у QTP?
У QTP масив можна визначити трьома способами
a) Масив фіксованого розміру в QTP
Dim A (10) – один вимір
Dim MyTable (5,10) – багатовимірність
b) Розмір динамічного масиву не фіксований
Dim MyArray()ReDim MyArray(25)
c) Використання функції масиву в QTP
A= Масив (10, 20,30)
B= A(2) ' B тепер дорівнює 30
87) Як можна записати контексти в текстовий файл у QTP?
Content = “Guru99” Set Fo = createobject(“Scripting.FilesystemObject”) Set f =Fo.openTextFile(“c:\abc.txt”, 8,true) f.Write (contents) f.Close Set f= nothing
88) Коли ключове слово 'option explicit' використовується в QTP?
Щоб вказати, що всі змінні мають бути оголошені перед використанням у QTP, використовується ключове слово "Option Explicit".
89) Як у QTP вийти з циклу for?
Щоб вийти з циклу for у QTP, потрібно використати оператор «Exit For». Оператор «Exit For» виведе керування з «циклу for»
For count= 1 to 3 TempNum= mid(Tempstr,count,1) If isnumeric(TempNum) Then LenghtNum = LengthNum & TempNum Else Exit For End If Next GetStrLenNumber = LengthNum
90) Як знайти розмір масиву в QTP?
Розмір масиву в QTP можна знайти за допомогою наступного коду
Друк (ubound(arr)+1)
Ubound повертає останній індекс у масиві, тому розмір масиву буде +1
91) У QTP поясніть, що таке файл qrs?
qrs означає «Сценарій найшвидшого відновлення». За допомогою менеджера сценаріїв відновлення ми можемо обробляти винятки під час виконання тесту. У QTP за допомогою диспетчера сценаріїв відновлення ми можемо обробляти винятки під час виконання тесту. У QTP, коли ви створюєте сценарій відновлення, ви повинні зберегти його у файлі .qrs. У файлі qrs може бути визначена будь-яка кількість сценаріїв.
92) Яке значення «дії 0» у QTP?
«Дія 0» створюється за замовчуванням, коли ви створюєте новий тест у QTP разом із дією 1. Щоб визначити послідовність, у якій ми викликаємо інші дії 1,2,3, 0, XNUMX тощо, використовується дія XNUMX.
93) Поясніть, як можна замінити рядок у QTP?
Щоб замінити частину рядка в QTP, ми використаємо код, як показано нижче
Наприклад,
Str = (Guru99) Suppose if you want to replace “99” with “88” then the code will print replace(str,“99”, “88”) output will be “Guru88”
94) Які різні інфраструктури автоматизації доступні в QTP?
У QTP доступні різні типи інфраструктур автоматизації
a) Лінійний сценарій
б) Бібліотека тестів Archiтектурний фреймворк
c) Система тестування на основі даних
г) Тестування на основі ключових слів або таблиць
e) Система автоматизації гібридного тестування
95) Що таке «Object Spy» і яка функція об’єктного шпигуна в QTP?
«Шпигун за об’єктами» — це функція в QTP, за допомогою якої можна переглядати властивості та методи об’єкта тестування та виконання.
96) Що таке «GetROProperty» і які етапи використання GetROProperty?
«GetROProperty» — це вбудований метод, який використовується для отримання значення часу виконання властивості об’єкта.
Щоб використовувати GetRoProperty, потрібно виконати чотири кроки
a) Запишіть об’єкт, для якого ви хочете використовувати GetROProperty, у репозиторії об’єктів
b) Визначте властивість часу виконання для записаного об’єкта, який можна використовувати
c) Щоб отримати визначену властивість часу виконання та зберегти значення у змінній
d) Використовуйте це значення для подальших відрахувань
97) Поясніть, як можна знайти абсолютне значення числа в QTP?
Щоб дізнатися абсолютне значення числа, у QTP доступна вбудована функція
Example- a= -1 Print abs(a) ‘output will be 1
Цей код знайде абсолютне значення числа
98) Як можна перевірити, чи існує параметр у Datatable?
Щоб перевірити, чи існує параметр if у таблиці даних, ми використаємо код
on error resume next val=DataTable(“ParamName”, dtGlobalSheet) if err.number<>0 then ‘Parameter does not exist’ else ‘Parameter exists end if
99) У QTP поясніть, що таке структура автоматизації, керована ключовими словами?
У системі автоматизації на основі ключових слів увага зосереджена переважно на ключових словах/функціях, а не на тестових даних. Це означає, що повна увага зосереджена на створенні функцій, які відображають функціональні можливості програми.
100) Як у QTP можна використовувати Xpath для ідентифікації об’єктів?
Xpath можна використовувати для ідентифікації лише веб-об’єктів. Ми можемо використовувати наступний код для ідентифікації об’єктів.
Set oPage=Browser(“myGoogle”).Page(“myGoogle”) oPage.WebEdit(“xpath:=//INPUT[@name=‘nameofeditbox’]”).Set “search term” ‘Enter value in google edit box
Тут ви можете отримати бонус за 3 запитання:
101) Поясніть, як можна видалити файл Excel у QTP?
Щоб видалити файл Excel у QTP,
Set fo = createobject(“Scripting.filesystemobject”) fo.deletefile(“C:\xyz.xlsx”) Set fo=nothing
102) Які фактори впливають на контрольні точки растрового зображення?
На контрольні точки растрового зображення впливає роздільна здатність екрана та розмір зображення.
103) Що таке Accessibility Checkpoint?
Консорціум Всесвітньої павутини (W3C) підготував деякі інструкції та рекомендації щодо веб-технологій та інформаційних систем, щоб полегшити доступ до Інтернету для людей з обмеженими можливостями. Наприклад, стандарти передбачають обов’язковість наявності «альтернативного тексту» для зображення. Таким чином, незряча людина, яка заходить на веб-сайт, використовуватиме конвертери тексту в мову і принаймні зрозуміє, про що йдеться, якщо не побачить його. Усі ці стандарти перевіряються Accessibility Checkpoints.
Сертифікаційний тест QTP/UFT 1
Сертифікаційний тест QTP/UFT 2
Сертифікаційний тест QTP/UFT 3
Ці запитання для співбесіди також допоможуть вам у життєдіяльності (усному)