Get your 6-month No-Cost Opt-Out offer for Unlimited Software Automation?

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

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

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

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

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

 

Table of Contents

Що таке дослідницьке тестування?

 

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

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

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

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

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

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

Команда також може автоматизувати цю процедуру, щоб забезпечити вищий рівень ефективності.

 

1. Коли потрібно проводити ознайомче тестування?

 

Дослідницьке тестування, як правило, корисне практично в будь-якому процесі тестування програмного забезпечення, хоча воно особливо добре підходить для отримання швидкого зворотного зв’язку про програму.

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

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

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

 

2. Коли вам не потрібно проводити дослідницьке тестування

 

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

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

Також можна без проблем проводити ці тести паралельно зі скриптовими перевірками, за умови, що тестувальники зможуть забезпечити високий рівень документації, щоб уникнути плутанини.

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

 

3. Хто бере участь у дослідницькому тестуванні?

 

У дослідницькому тестуванні певною мірою беруть участь багато співробітників:

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

Досвід також може впливати на їхню здатність визначати найбільш корисні тести.

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

Їх реакція на тести – це те, що дозволяє додатку досягти стану, придатного для успішного релізу.

– Менеджери проектів, які контролюють весь цей процес і навіть можуть вирішувати, які типи тестування використовуватимуть команди.

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

 

Життєвий цикл дослідницького тестування

 

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

Основними трьома етапами цього підходу є

 

Етап 1: Навчання

 

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

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

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

 

Етап 2: Розробка тесту

 

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

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

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

 

Етап 3: Виконання

 

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

На цьому етапі тестувальники активно шукають проблеми і розуміють, як виявлені ними проблеми можуть вплинути на інші функції та можливості.

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

 

Дослідницьке та сценарне тестування

 

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

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

 

1. Активне розвідувальне тестування

 

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

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

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

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

 

2. Пасивне розвідувальне тестування

 

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

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

Запис процесу тестування також дає уявлення про продуктивність програми, зокрема про те, як швидко вона реагує на запити.

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

 

Методи розвідувального тестування

 

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

На вибір команди були запропоновані різноманітні тури:

 

– Екскурсії з гідом

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

 

– Історичні екскурсії

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

 

– Грошовий тур

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

 

– Екскурсія по кримінальним розвагам

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

 

– Екскурсія вуличками

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

 

– Інтелектуальний тур

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

 

Підходи до дослідницького тестування

 

Існує два основних підходи до дослідницького тестування:

 

1. Сесійне пробне тестування

 

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

Місія – це мета і тривалість конкретної сесії, що дає тестувальнику чіткий фокус.

Хартія визначає обсяг кожної сесії та деталізує будь-які конкретні цілі, які тестувальник має намір досягти. Це призводить до вищого рівня підзвітності (і документування) завдяки поділу цих перевірок на більш керовані компоненти.

Сесійні тести також підвищують продуктивність і надають тестувальнику чіткі показники та інформацію про усунення несправностей.

 

2. Парне пробне тестування

 

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

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

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

 

Які фактори впливають на дослідницьке тестування?

 

Фактори, які можуть вплинути на якість дослідницького тестування команди, включають в себе наступні:

 

– Головна мета та основна функціональність програмного забезпечення.

– Конкретні цілі тестування для поточного етапу розробки програми.

– Індивідуальні ролі та здібності кожного тестувальника в команді.

– Доступні інструменти, такі як безкоштовне програмне забезпечення для автоматизації тестів.

– Підтримка, яку тестувальники отримують від колег або керівництва.

– Запити клієнта та поточні загальні тенденції ринку.

– Простота використання програми, наприклад, плавність інтерфейсу.

– Час, який тестувальники мають на завершення етапу тестування.

– Вхідні дані та інші різноманітні дані, які планують використовувати тестувальники.

– Функції, які розробники додають до програмного забезпечення з часом.

 

Типи дослідницького тестування

 

Існує три основні типи дослідницького тестування, які може використовувати команда:

 

1. Розвідувальне тестування з фрістайлу

 

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

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

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

 

2. Розвідувальне тестування на основі сценаріїв

 

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

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

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

Тестувальники повинні використовувати широкий спектр тестів у різних категоріях.

 

3. Дослідницьке тестування на основі стратегії

 

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

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

 

Ручні чи автоматизовані дослідницькі тести?

 

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

 

Ручне розвідувальне тестування

 

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

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

 

1. Переваги проведення дослідницьких тестів вручну

 

Переваги ручного дослідницького тестування полягають у наступному:

 

Посилений фокус на юзабіліті

 

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

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

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

 

Можливість вносити зміни в режимі реального часу

 

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

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

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

 

Більша увага до деталей

 

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

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

 

Може знаходити помилки поза кодом

 

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

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

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

 

Забезпечує якість у всьому проєкті

 

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

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

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

 

2. Проблеми ручного розвідувального тестування

 

Проблеми ручного дослідницького тестування включають в себе наступні:

 

Можливість людських помилок

 

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

IS YOUR COMPANY IN NEED OF

ENTERPRISE LEVEL

TASK-AGNOSTIC SOFTWARE AUTOMATION?

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

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

 

Як правило, більш трудомісткий

 

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

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

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

 

Тривалий процес документування

 

Аналогічно, ручне документування під час і після ручного тестування може бути непотрібним навантаженням на процес дослідницького тестування.

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

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

 

Повинен досконало знати програмне забезпечення

 

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

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

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

 

Дорогий в обслуговуванні

 

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

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

 

3. Коли використовувати ручне розвідувальне тестування

 

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

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

 

Автоматизоване розвідувальне тестування

 

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

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

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

 

1. Переваги автоматизації дослідницького тестування

 

Основні переваги автоматизації дослідницького тестування включають в себе наступні:

 

Послідовне виконання тесту

 

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

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

 

Заощаджує час для всіх

 

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

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

 

Економічно ефективний підхід

 

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

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

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

 

Адаптовано для різних пристроїв

 

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

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

 

Багаторазові скрипти

 

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

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

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

 

2. Проблеми автоматизації розвідувальних тестів

 

Цей процес також пов’язаний з різними проблемами, такими як:

 

Представляє лише один бік тестування

 

Автоматизувати кожну перевірку під час тестування додатку непрактично або нерозумно, тому що є деякі аспекти, про які тільки тестувальник вручну може достовірно надати зворотній зв’язок.

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

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

 

Нереалістичні очікування щодо можливостей

 

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

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

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

 

Вищі вимоги до кваліфікації

 

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

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

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

 

Неправильні стратегії та комунікація

 

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

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

 

Вибір правильного програмного забезпечення для автоматизації

 

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

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

 

Висновок: Автоматизація дослідницького тестування проти ручного дослідницького тестування

 

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

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

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

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

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

 

Що потрібно для початку дослідницького тестування

 

Передумовами дослідницького тестування є

 

1. Чіткі цілі тестування

 

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

 

2. Креативні, інтуїтивні тестувальники

 

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

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

 

3. Узгоджена документація

 

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

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

 

4. Погляд з точки зору клієнта

 

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

Це дозволяє тестувальнику підходити до тестування з різних точок зору, покращуючи якість перевірки.

 

5. Програмне забезпечення для автоматизованого тестування

 

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

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

 

Процес дослідницького тестування

 

Конкретні кроки для дослідницького тестування є наступними:

 

1. Класифікувати процедуру тестування

 

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

Саме тут тестувальники розробляють свої ідеї для тестів; залежно від конкретної методології, вони також можуть розробити статут тесту.

Тут визначено обсяг і тести для цього сеансу або робочого дня.

 

2. Почніть тести

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

Після класифікації відповідних перевірок співробітники відділу забезпечення якості починають проводити тести і фіксувати будь-які результати.

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

 

3. Перегляньте результати

 

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

 

4. Підбиття підсумків тесту

 

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

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

 

Найкращі практики для розвідувального тестування

 

Найефективнішими практиками для дослідницького тестування є такі:

 

1. Об’єднання тестерів у пари

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

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

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

 

2. Поєднання ручних та автоматизованих тестів

 

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

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

 

3. Розуміти ринок

 

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

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

 

4. Використовуйте реальні пристрої для тестування

 

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

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

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

 

Типи результатів дослідницького тестування

 

Існують різні результати, які тестувальники можуть отримати після проведення перевірки:

 

1. Результати тестування

 

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

Отримавши ці результати, тестувальники могли повторно перевірити систему і підтвердити інформацію, щоб визначити свої подальші дії.

 

2. Журнали випробувань

 

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

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

 

3. Звіти про випробування

 

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

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

 

Приклади дослідницького тестування

 

Ось три приклади того, як компанія може використовувати дослідницьке тестування:

 

1. Мобільний ігровий додаток

 

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

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

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

 

2. Веб-сайт постачальника послуг

 

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

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

 

3. Система управління лікарнею

 

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

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

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

 

Типи помилок і багів, виявлених під час дослідницького тестування

 

Помилки, які тестувальники можуть виявити під час дослідницького тестування, включають в себе наступні:

 

1. Несумісні функції

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

 

2. Неправильний дизайн інтерфейсу

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

Ручне тестування користувацького інтерфейсу виявляє та виправляє недружній до користувача дизайн.

 

3. Помилки автентифікації

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

 

4. Мертвий код

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

 

Загальні показники дослідницького тестування

 

Звичайні метрики, з якими тестувальники можуть зіткнутися під час ознайомчих тестів, включають в себе наступні:

 

1. Метрики тестування продуктивності

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

 

2. Метрики тестового покриття

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

 

3. Загальна ефективність тесту

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

 

4. Розподіл дефектів

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

 

5. Метрики регресії

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

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

 

Прояснюємо плутанину: Дослідницьке тестування проти спеціальних тестів

 

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

 

1. Що таке спеціальне тестування?

 

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

IS YOUR COMPANY IN NEED OF

ENTERPRISE LEVEL

TASK-AGNOSTIC SOFTWARE AUTOMATION?

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

Одним із прикладів цього є “мавпяче тестування” – перевірка, яка передбачає випадкові вхідні дані і в кінцевому підсумку має на меті зламати систему.

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

 

2. Відмінності між дослідницьким тестуванням та спеціальним тестуванням

 

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

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

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

 

Дослідницьке тестування в Agile

 

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

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

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

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

 

7 помилок та підводних каменів, яких слід уникати при проведенні дослідницьких тестів

 

Ось сім поширених помилок, яких часто припускаються компанії під час проведення дослідницьких тестів, а також способи їх уникнення:

 

1. Незбалансоване ручне/автоматизоване тестування

 

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

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

 

2. Обмеження в часі

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

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

 

3. Негнучкі тестери

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

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

 

4. Складність тиражування збоїв

Не завжди очевидно, які саме дії призводять до невдачі тесту; також може бути незрозуміло, які саме аспекти програми винні в цьому.

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

 

5. Нечітка документація

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

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

 

6. Високі очікування

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

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

 

7. Неправильна автоматизація

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

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

 

5 найкращих безкоштовних інструментів для ознайомчого тестування

 

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

 

1. ZAPTEST FREE Edition

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

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

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

 

2. Додаток XRAY Exploratory

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

Цей варіант повністю орієнтований на користувача і пропонує централізований центр результатів для оновлення інших тестувальників.

Однак наразі XRAY не має інтегрованої автоматизації, що може обмежити його довгострокову ефективність.

 

3. Магніт для жуків

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

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

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

 

4. Плани тестування Azure

Azure Test Plans – це ключова частина платформи Microsoft Azure, яка дозволяє тестувальникам збирати великі обсяги даних у багатьох сценаріях.

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

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

 

5. Яєчко

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

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

Однак це безкоштовно лише для невеликих команд і проектів з відкритим вихідним кодом.

 

Коли варто використовувати інструменти Enterprise vs. Free Exploratory Test?

 

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

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

Платне рішення може бути єдиним способом задовольнити потреби проекту; команда повинна вивчити різні варіанти, перш ніж прийняти рішення про застосування.

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

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

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

 

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

 

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

 

1. Розподіліть функції та модулі належним чином

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

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

 

2. Робота над розумінням програмного забезпечення

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

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

 

3. З’ясувати проблемні зони

Кожна програма має функції або компоненти, які перетинаються з іншими. Оскільки програмне забезпечення стає складнішим, у ньому частіше виникають помилки; це може вимагати більшої кількості тестувань. Команда повинна активно працювати над тим, щоб з’ясувати, які компоненти потребують додаткової допомоги.

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

 

4. Почніть з основних сценаріїв користувачів

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

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

 

5. Об’єднайте тестувальників у пари

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

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

 

6. Запустіть кілька тестів

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

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

 

Висновок

 

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

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

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

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

 

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

 

1. Найкращі курси з автоматизації дослідницького тестування

 

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

Корисні курси, які можуть допомогти в цьому:

– Udemy’s Complete 2023 Software Testing Bootcamp; це навчальний курс з тестування програмного забезпечення протягом 28 годин.

– Coveros’s Exploratory Testing; він зосереджується на тому, як розробляти хартії та застосовувати дослідницькі тести до API.

– Дводенний тренінг з дослідницького тестування від Polteq; на ньому розглядається, як працюють дослідницькі тести в контексті Agile.

– LinkedIn’s Exploratory Testing; це показує, як сучасне тестування програмного забезпечення охопило дослідницькі перевірки.

– Курс Coursera “Вступ до тестування програмного забезпечення”; він допомагає тестувальникам-початківцям зрозуміти типові процедури.

 

2. Які 5 найкращих запитань для співбесіди на ознайомчому тестуванні?

 

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

П’ять основних запитань, які варто поставити

– Які основні відмінності між скриптовим та дослідницьким тестуванням, окрім їхньої придатності, існують між ними?

– З якими проблемами ви зіткнулися як дослідницький тестувальник і як ви їх подолали?

– Наведіть приклади дослідницьких тестів, які найбільше виграють від роботизованої автоматизації процесів.

– На вашу думку, які навички (технічні чи інші) є найбільш важливими для дослідницького тестувальника?

– Що б ви порадили тестувальнику, який намагається зрозуміти програмне забезпечення і як його перевіряти?

 

3. Найкращі навчальні посібники YouTube з розвідувального тестування

 

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

Канали, які пропонують ці підручники, включають

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

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

– QAFox, який також надає реальні приклади та живі проекти, що доповнюють усі їхні відео.

– SDET-QA Automation Techie, де є кілька вичерпних відео про різні підходи до тестування.

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

 

4. Як підтримувати дослідницькі тести?

 

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

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

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

Співробітники QA повинні адекватно планувати ці тести і визначати, коли потрібно повторно перевірити додаток; інструменти автоматизованого тестування можуть допомогти команді в цьому.

 

5. Чи є дослідницьке тестування тестуванням “чорної скриньки”?

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

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

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

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

Download post as PDF

Alex Zap Chernyak

Alex Zap Chernyak

Founder and CEO of ZAPTEST, with 20 years of experience in Software Automation for Testing + RPA processes, and application development. Read Alex Zap Chernyak's full executive profile on Forbes.

Get PDF-file of this post