top 25 functional testing interview questions
Запитання та відповіді на інтерв’ю, які найчастіше задаються:
Як випливає з самої назви, функціональне тестування - це процес тестування програми з урахуванням специфікацій документа вимог.
Функціональне тестування може проводитися як вручну, так і за допомогою автоматизації, але кожен процес включає тестування програми шляхом надання набору входів та визначення або перевірки результату / результату шляхом порівняння фактичного результату з очікуваними результатами.
Функціональне тестування має різні етапи, які слід враховувати під час тестування. У цій статті ми побачимо кілька запитань на співбесіду та відповіді, які допоможуть вам добре підготуватися.
Найпопулярніші запитання щодо інтерв’ю з функціональним тестуванням
Q # 1) Що ви розумієте під терміном 'Функціональне тестування'?
Відповідь: Техніка тестування чорного ящика, коли функціональність програми перевіряється для отримання бажаного результату шляхом надання певного введення, називається „Функціональне тестування”.
Роль функціонального тестування полягає не тільки у підтвердженні поведінки програми відповідно до специфікації документа вимоги, але також у тому, щоб перевірити, чи готова програма для випуску в реальне середовище чи ні.
Нижче наведено кілька загальновживаних методів функціонального тестування:
- Блокове тестування
- Тестування диму
- Інтеграційне тестування
- Тестування системи
- Тестування юзабіліті
- Регресійне тестування
- Прийомне тестування користувача
Питання 2) Які важливі кроки висвітлюються у функціональному тестуванні?
Відповідь: Нижче наведені кроки, які слід охопити в рамках функціонального тестування:
- Розуміння специфікації документа вимоги та усунення сумнівів та запитань у формі оглядових коментарів.
- Написання тестових кейсів з урахуванням специфікації вимог, маючи на увазі всі сценарії, які слід враховувати для всіх випадків.
- Визначення вхідних даних тесту та запит даних тесту, необхідних для виконання тестових випадків, а також для перевірки функціональності програми.
- Визначте фактичні результати відповідно до вхідних значень, що перевіряються.
- Виконайте тестові випадки, які визначають, чи відповідає поведінка програми очікуваному чи стався якийсь дефект.
- Порівняйте фактичний результат та обчислений результат, щоб з’ясувати фактичний результат.
Q # 3) Поясніть різницю між функціональним тестуванням та нефункціональним тестуванням.
Відповідь: Різницю між функціональним та нефункціональним тестуванням можна пояснити, як показано нижче:
Функціональне тестування | Нефункціональне тестування |
---|---|
Функціональне тестування проводиться для визначення поведінки системи відповідно до функціональних вимог клієнта. | Нефункціональне тестування - це процес визначення продуктивності системи відповідно до очікувань клієнта |
Функціональне тестування виконується спочатку за допомогою засобів тестування вручну та автоматизації. | Нефункціональне тестування проводиться після функціонального тестування за допомогою ефективних необхідних інструментів. |
Виконати ручне тестування легко, оскільки вимоги клієнта є вхідними в функціональне тестування. | Важко проводити ручне тестування, оскільки масштабованість, надійність, швидкість та інші параметри продуктивності вводяться в нефункціональне тестування. |
Функціональне тестування буває таких типів: • одиничне тестування • Тестування диму • Перевірка розумності • Інтеграційне тестування • Прийомне тестування користувача • Регресійне тестування | Нефункціональне тестування буває таких типів: • Тестування продуктивності • Тестування навантаження, напруги, обсягу • Тестування безпеки • Тестування на сумісність |
Q # 4) Чим 'Build' відрізняється від 'Release'?
Відповідь: побудувати - це виконуваний файл, який посилається на ту частину програми, яка передається тестувальнику для перевірки реалізованої функціональності програми разом із деякими виправленнями помилок. Збірка може бути відхилена командою тестувальників, якщо вона не проходить критичний контрольний список, який містить основну функціональність програми.
У циклі тестування програми може бути кілька збірок.
Звільнення відноситься до програмної програми, яка вже не перебуває у фазі тестування, і після завершення тестування та розробки програма передається клієнту. Один випуск має кілька збірок, пов’язаних з ним.
Q # 5) Поясніть цикл помилок.
Відповідь: Кажуть, що помилка є небажаною помилкою, вадою, помилкою тощо, яка сталася в програмі та заважає їй доставити бажаний результат. Коли під час тестування у програмі зустрічається який-небудь дефект або помилка, то від реєстрації дефекту до його усунення помилка рухається через певний життєвий цикл, відомий як життєвий цикл помилок.
Нижче малюнок дасть вам уявлення про життєвий цикл помилок:
(зображення джерело )
Весь процес відбувається, коли і коли виникає проблема або помилка. Про це повідомляється / реєструється в інструменті відстеження помилок у значному форматі. Ці помилки присвоюються розробнику, а їх статус визначається як 'Відкритий'. Тепер розробник може переглянути помилку, відтворити її в кінці та почати працювати над нею.
Якщо помилка виправлена, розробник змінює її статус на «Виправлено», або статус може бути переміщений на «потрібна додаткова інформація», «не буде виправлено», «неможливо відтворити» тощо, в інших випадках. Потім QA виконує регресію, тобто повторно перевіряє помилки певною дією та реагує відповідно.
Якщо проблеми / помилка зараз поводиться належним чином, її статус змінюється на Перевірено / Закрито ще Відкрити знову.
Q # 6) Запишіть деякий статус помилки разом з його описом.
Запитання та відповіді для інтерв’ю щодо селену
Відповідь: Нижче наведено кілька статусів помилок разом з їх описом:
- Нове: Коли дефект або помилка реєструються вперше, це називається Новим.
- Призначено: Після того, як тестувальник зареєстрував помилку, його помилка перевіряється керівництвом тестера, а потім вона призначається відповідній команді розробників.
- Відчинено: Tester реєструє помилку у відкритому стані, і вона залишається у відкритому стані, доки розробник не виконає якесь завдання щодо цієї помилки.
- Вирішено / виправлено: Коли розробник усуває помилку, тобто зараз додаток видає бажаний результат для певної проблеми, розробник змінює свій статус на Вирішено / Виправлено.
- Перевірено / закрито: Коли розробник змінив статус на вирішений / виправлений, тестер тепер перевіряє проблему в кінці, а якщо це виправлено, він змінює статус помилки на «Перевірено / закрито».
- Повторно відкрити: Якщо тестер зможе відтворити помилку знову, тобто помилка все ще існує навіть після виправлення розробником, її статус позначається як Відкрити знову.
- Не помилка / недійсний: Помилка може бути позначена розробником як недійсна чи не, якщо повідомлення про проблему відповідає функціоналу, але реєструється через неправильне тлумачення.
- Відкладено: Зазвичай, коли помилка має мінімальний пріоритет для випуску і якщо бракує часу, у такому випадку ці помилки з мінімальним пріоритетом переносяться на наступний випуск.
- Не вдається відтворити: Якщо розробник не може відтворити помилку в кінці, виконавши кроки, зазначені у випуску.
Q # 7) Що називається тестуванням на основі даних?
Відповідь: Тестування на основі даних - це методологія, при якій серія тестових сценаріїв, що містять тестові кейси, виконуються неодноразово з використанням таких джерел даних, як електронна таблиця Excel, файл XML, файл CSV, база даних SQL для вхідних значень, а фактичний результат порівнюється з очікуваним при верифікації процес.
Наприклад, Тестова студія використовується для тестування на основі даних.
Деякі переваги тестування на основі даних:
- Багаторазове використання.
- Повторюваність.
- Відділення даних тесту від логіки тесту.
- Кількість тестових випадків зменшується.
Q # 8) Які важливі моменти слід враховувати під час написання тестових справ?
Відповідь: Написання тестового кейсу, як кажуть, є найважливішою діяльністю процесу виконання тесту, що вимагає навичок письма, а також глибоких знань програми, щоб зробити ефективні тести для багаторазового використання.
Кілька важливих моментів, які слід враховувати під час написання тестових кейсів, включає:
- Перш ніж починати писати тестові кейси, слід чітко розуміти вимоги клієнта. Нічого не слід припускати, і всі сумніви щодо вимог повинні бути усунені.
- Кожна вимога повинна міститися у формі тестових кейсів, і нічого не слід залишати поза увагою. Зазвичай матриця простежуваності підтримується для перевірки виконання всіх вимог та завершення тестування.
- Відповідно до специфікацій документа вимоги, повинні бути охоплені всі функціональні та нефункціональні вимоги, включаючи інтерфейс інтерфейсу користувача, сумісність.
- Тестові випадки слід перевіряти час від часу на відсутність повторення чи надмірності.
- Пріоритет є важливим фактором, який слід встановлювати для тестових кейсів під час письма. Цей пріоритет допомагає тестувальнику перевірити програму спочатку з тестами з високим пріоритетом, які включають базові функціональні можливості, потім із середнім, а пізніше з низьким пріоритетом.
- Для конкретного випуску тестові кейси також можна побудувати Sprint, щоб тестувальник, як і розробник, могли аналізувати якість продукту на основі виконання тестових кейсів.
- Структура тестових кейсів повинна бути зрозумілою і повинна бути простою мовою. Значення вхідних даних для тестових випадків повинні бути дійсними, а також у широкому діапазоні.
Q # 9) Що таке тестування автоматизації?
Відповідь: Тестування автоматизації - це методологія тестування, де інструмент автоматизації використовується для виконання набору тестів, щоб збільшити охоплення тестом, а також швидкість виконання тесту. Тестування автоматизації не вимагає будь-якого втручання людини, оскільки воно виконує заздалегідь встановлені сценарії і здатне повідомляти та порівнювати результати з попередніми тестовими пробками.
Повторюваність, простота використання, точність та більша послідовність є одними з переваг тестування автоматизації.
Деякі засоби автоматизації тестування перелічені нижче:
- Селен
- Теллур
- води
- МИЛО
Q # 10) Поясніть термін 'стрес-тестування' та 'навантажувальне тестування'.
Відповідь:
Стрес-тестування є формою тестування продуктивності, коли програма зобов’язана зазнати напруги або стресу, тобто виконання програми понад поріг перерви, щоб визначити точку, в якій додаток аварійно завершує роботу. Ця умова зазвичай виникає, коли користувачів забагато, а даних занадто багато.
Стрес-тестування також перевіряє відновлення програми, коли навантаження зменшується.
Тестування навантаження є формою тестування продуктивності, коли додаток виконується вище різних рівнів навантаження для моніторингу пікової продуктивності сервера, часу відгуку, пропускної здатності сервера і т. д. За допомогою процесу тестування навантаження стабільність, продуктивність та цілісність програми визначаються при одночасному завантаженні системи .
Q # 11) Що ви розумієте під обсягом тестування?
Відповідь: Об’ємне тестування - це форма перевірки продуктивності, яка визначає рівні продуктивності пропускної здатності сервера та часу відгуку, коли одночасні користувачі, а також велике навантаження даних з бази даних надходять на систему / додаток, що перевіряється.
Q # 12) Які різні методи тестування використовуються у функціональному тестуванні?
Відповідь: У функціональному тестуванні використовуються дві різні методики тестування.
Їх можна визначити, як показано нижче:
- Тестування на основі вимог: Ця форма функціонального тестування проводиться з пріоритетом вимог на основі критеріїв ризику. Це також гарантує, що всі критичні шляхи тестування були включені в процес тестування.
- Тестування на основі бізнес-процесів: Ця форма функціонального тестування проводиться з точки зору бізнес-процесу. Сценарії включають знання бізнес-процесів для проведення тестування.
Q # 13) Що ви розумієте під час пошукових випробувань? Коли воно виконується?
Відповідь: Дослідницьке тестування означає тестування або вивчення заявки без дотримання будь-яких графіків або процедур. Виконуючи дослідницьке тестування, тестувальники не дотримуються жодного зразка та використовують своє нестандартне мислення та різноманітні ідеї, щоб побачити, як працює програма.
Виконання цього процесу охоплює навіть найменшу частину програми та допомагає знайти більше проблем / помилок, ніж у звичайному процесі тестування тестового випадку.
Пошукові випробування зазвичай проводяться у випадках, коли:
- У команді тестувань є досвідчений тестер, який може використати свій досвід тестування, щоб застосувати найкращі можливі сценарії.
- Висвітлено всі критичні шляхи та підготовлено основні тестові кейси відповідно до специфікацій вимог, які були виконані.
- Існує важливе застосування, і жоден можливий випадок не можна пропустити в жодному випадку.
- До команди увійшов новий тестер, вивчення програми допоможе їм краще зрозуміти, а також дотримуватиметься власного розуму, виконуючи будь-який сценарій, а не йдучи шляхом, як зазначено в документі вимог.
Q # 14) Які можливі функції входу, які слід протестувати для будь-якої веб-програми?
Відповідь: Нижче наведено можливі сценарії, які можна виконати для повного тестування функції входу в систему будь-якої програми:
- Перевірте поля введення, тобто ім'я користувача та пароль, як з дійсними, так і з недійсними значеннями.
- Спробуйте ввести дійсний ідентифікатор електронної пошти з неправильним паролем, а також введіть недійсний електронний лист та дійсний пароль. Перевірте правильність відображеного повідомлення про помилку.
- Введіть дійсні облікові дані та увійдіть до програми. Закрийте та знову відкрийте веб-переглядач, щоб перевірити, чи все ще ви ввійшли в систему.
- Увійдіть у програму після входу в систему, а потім знову поверніться до сторінки входу, щоб перевірити, чи запитується користувач ще раз про вхід чи ні.
- Увійдіть в один браузер і відкрийте програму з іншого браузера, щоб перевірити, чи входили ви також в інший браузер.
- Змініть пароль після входу в програму, а потім спробуйте увійти за допомогою цього старого пароля.
Є також кілька інших можливих сценаріїв, які можна перевірити.
Q # 15) Поясніть тестування доступності та його значення в цьому сценарії.
Відповідь: Тестування доступності - це форма тестування юзабіліті, де тестування проводиться для того, щоб забезпечити легку обробку програми людьми з обмеженими можливостями, такими як слух, дальтонізм, погана видимість тощо. У сучасному сценарії Інтернет зайняв головне місце в нашому житті в форма веб-сайтів електронної комерції, електронного навчання, електронних платежів тощо.
Таким чином, щоб краще рости в житті, кожен повинен мати можливість бути частиною технологій, особливо люди з певними вадами розвитку.
Нижче наведено кілька типів програмного забезпечення, яке допомагає людям з обмеженими можливостями користуватися технологіями:
- Програмне забезпечення для розпізнавання мови
- Програмне забезпечення для зчитування з екрана
- Програмне забезпечення для збільшення екрана
- Спеціальна клавіатура
Q # 16) Що таке тестування Adhoc?
Відповідь: Adhoc тестування, яке зазвичай називають випадковим тестуванням, є формою тестування, яка не відповідає жодному тестовому випадку чи вимогам програми. Тестування Adhoc - це в основному незапланована діяльність, коли будь-яка частина програми випадково перевіряється на предмет виявлення дефектів.
У таких випадках виявлені дефекти дуже важко відтворити, оскільки не виконуються заплановані тести. Адхокове тестування зазвичай проводиться, коли для проведення детального тестування існує обмежений час.
Q # 17) Що таке розділення еквівалентності?
Відповідь: Розділення еквівалентності, також відоме як розділення класу еквівалентності, є формою тестування чорної скриньки, де вхідні дані поділяються на класи даних. Цей процес робиться для того, щоб зменшити кількість тестових випадків, але все ж покриваючи максимальну вимогу.
Техніка розподілу еквівалентності застосовується там, де значення вхідних даних можна розділити на діапазони. Діапазон вхідних значень визначений таким чином, що слід перевірити лише одну умову з кожного розділу діапазону, припускаючи, що всі інші умови того самого розділу будуть поводитися однаково для програмного забезпечення.
Основні питання та відповіді на співбесіду в
Наприклад: Щоб визначити процентну ставку відповідно до залишку на рахунку, ми можемо визначити діапазон суми залишку на рахунку, який приносить іншу процентну ставку.
Q # 18) Поясніть аналіз граничних значень.
Відповідь: Метод аналізу граничних значень перевіряє граничні значення розділів класу еквівалентності. Аналіз граничних значень - це в основному техніка тестування, яка визначає помилки на межах, а не в межах значень діапазону.
Наприклад , Поле введення може містити не менше 8 символів і максимум 12 символів, тоді 8-12 вважається дійсним діапазоном, а 13 вважається недійсним діапазоном. Відповідно, тестові випадки записуються для дійсного значення розділу, точного граничного значення та недійсного значення розділу.
Q # 19) Поясніть різницю між важкістю та пріоритетом.
Відповідь: Серйозність дефекту визначається рівнем або ступенем впливу дефекту на випробовувану заявку. Чим вище ступінь тяжкості дефекту, тим більший вплив має нанесення.
Нижче наведено 4 класи, за якими класифікується тяжкість дефекту:
- Критичний
- Майор
- Середній
- Низький
Пріоритет дефекту визначає порядок, в якому дефект слід вирішити першим, тобто, чим вище пріоритет дефекту, це означає, що додаток непридатний для використання або застряг у якийсь момент, і дефект повинен бути вирішений якомога швидше.
Нижче наведено 3 класи, в яких визначено пріоритет дефекту:
- Високий
- Середній
- Низький
Q # 20) Коли ми проводимо тестування на дим?
Відповідь: Тестування диму проводиться в додатку після отримання збірки. Зазвичай тестер перевіряє критичний шлях, а не функціональність у глибині, щоб переконатись, чи буде збірка прийнята для подальшого тестування або відхилена у випадку непрацездатності програми.
Контрольний список задимлення зазвичай містить критичний шлях програми, без якого програма блокується.
Q # 21) Що ви розумієте під тестуванням розумності?
Відповідь: Перевірка обґрунтованості проводиться після отримання збірки, щоб перевірити нову функціональність / дефекти, що підлягають усуненню. У цій формі тестування мета - перевірити функціональність приблизно, як очікувалося, та визначити, чи виправлена помилка, а також вплив виправленої помилки на тестоване додаток.
Немає сенсу приймати збірку тестером і витрачати час, якщо тестування на розум не вдається.
Q # 22) Що ви розумієте під матрицею відстеження вимог?
Відповідь: Матриця простежуваності вимог (RTM) - це інструмент для відстеження покриття вимог протягом процесу тестування.
У RTM всі вимоги класифікуються як їх розвиток під час спринту та їх відповідні ідентифікатори (впровадження / вдосконалення нових функцій / попередні випуски тощо) підтримуються для відстеження того, що все, що згадується в документі вимог, було впроваджено до випуску продукт.
RTM створюється відразу після отримання документа з вимогами і зберігається до випуску продукту.
Q # 23) Які фактори слід враховувати при тестуванні на основі ризику?
Відповідь: Шляхом тестування проекту на основі ризиків, це не просто забезпечити проект безризиковим, але основною метою тестування на основі ризиків є досягнення результатів проекту шляхом проведення найкращих практик управління ризиками.
Основними факторами, які слід враховувати при тестуванні на основі ризику, є наступні:
- Визначити, коли і як впровадити тестування на основі ризику у відповідному додатку.
- Визначити заходи, які добре допомагають знаходити, а також керувати ризиком у критичних областях програми.
- Для досягнення результату проекту, який балансує ризик з якістю та особливостями програми.
Q # 24) Розрізняти регресійне тестування та повторне тестування.
Відповідь: Різницю між регресійним тестуванням та повторним тестуванням можна пояснити наступним чином:
Регресійне тестування | Перевірка |
---|---|
Регресійне тестування - це форма тестування, яка проводиться для того, щоб переконатися, що впровадження будь-якої нової функції або виправлень не впливає на будь-яку іншу частину чи функціональність програми. | Повторне тестування - це форма тестування програми після виправлення дефектів для тих тестових випадків, які не вдалося виконати під час останнього виконання. |
В рамках регресійного тестування нові зміни в програмі не повинні впливати на існуючі функціональні можливості. | В рамках повторного тестування проводиться перевірка дефектів. |
Виходячи з вимог проекту, регресійне тестування може проводитися паралельно з повторним тестуванням. | Повторне тестування проводиться перед регресійним тестуванням через його високий пріоритет. |
Також відоме як загальне тестування і проводиться для пройдених тестів. | Також відоме як планове тестування і проводиться лише для невдалих тестів. |
Оскільки ручне тестування може зайняти багато часу і дорого, для регресійного тестування можна зробити автоматизацію. | Не можна зробити автоматизацію для повторного тестування. |
Q # 25) Поясніть тестування прийняття користувачами.
Відповідь: Тестування на прийнятність користувача зазвичай проводиться після ретельного тестування продукту. У цій формі тестування користувачі програмного забезпечення або, скажімо, клієнт, самі використовують додаток, щоб переконатися, чи все працює відповідно до вимог та ідеально в реальному сценарії.
UAT також відомий як тестування кінцевих користувачів.
Висновок
У цій статті я намагався пояснити кожну тему функціонального тестування, щоб будь-яка людина, яка готується до співбесіди, могла легко зрозуміти тему та запам’ятати їх.
Ці запитання та відповіді на інтерв’ю з функціональним тестуванням допоможуть вам успішно очистити будь-яке інтерв’ю з повною впевненістю.
Бажаємо всім успіху.
Сподіваюся, ці запитання та відповіді на інтерв’ю з функціональним тестуванням допоможуть вам у певний момент вашої кар’єри.
Рекомендована література
- Функціональне тестування проти нефункціонального тестування
- 16 нових можливостей інструменту Micro Focus UFT (уніфікованого функціонального тестування) - QTP проти UFT
- 5 найкращих альтернативних інструментів HP Unified Functional Testing (UFT)
- Повний посібник з функціонального тестування для початківців
- Покроковий посібник з Jubula - інструмент автоматизованого функціонального тестування з відкритим кодом
- Функціональне тестування проти тестування продуктивності: чи слід це робити одночасно?
- Повне керівництво з функціонального тестування з його типами та прикладами
- Підручник з контролю якості Parrot: Огляд функціональних інструментів тестування між браузерами
- Spock для інтеграції та функціональних випробувань із селеном
- Різниця між модульним тестуванням, інтеграційним тестуванням та функціональним тестуванням
- 25 найкращих функціональних випробувань Інтерв'ю Запитання та відповіді
- 30 найкращих інструментів функціонального тестування у 2021 році