Інтуїтивне тестування (ad-hoc testing)
ad-hoc testing - в ід тестування, який виконується без підготовки до тестів, без визначення очікуваних результатів, проектування тестових сценаріїв. Це неформальне, імпровізаційне тестування. Він не вимагає ніякої документації, планування, процесів яких слід дотримуватися у виконанні. Також на даний вид тестування не пишуться тест-кейси, що в свою чергу може викликати певні труднощі в спробах відтворити дефект в системі. Такий вид найчастіше може дати відразу більше результату ніж тестування за заздалегідь визначеними сценаріями. Це обумовлено тим, що тестувальник на перших кроках приступає до тестування основного функціоналу і виконує нестандартні перевірки, точніше деякі з його перевірок будуть нестандартними.
Часто інтуїтивне тестування плутають з дослідним. Якщо говорити про ad-hoc testing і дослідному тестуванні. Ad-hoc testing - це більш інтуїтивне і безладне тестування, коли тестувальник просто йде і перевіряє, що йому хочеться. У нього немає певної мети, структури тестів в голові, якийсь системи. У свою чергу дослідне тестування більш структуроване. Зазвичай тестувальник знає, що йому потрібно перевірити, у нього в голові є мета і якась система проведення тестів. Хоч тести в цьому випадку не обов'язково повинні бути оформлені у вигляді тест кейсів.
Коли виконується інтуїтивне тестування (ad-hoc testing)?
Найчастіше таке тестування виконується коли мало часу на точне і послідовне тестування. При цьому тестувальник покладається на своє загальне уявлення про програму і здоровий глузд
Тестування ad-hoc має сенс тільки в разі якщо тестувальник володіє загальною інформацією про продукт. Якщо людина зовсім не знатиме продукт, то витратить час на його вивчення, особливо якщо проект дуже складний і великий. Тому потрібно гарне уявлення про цілі проекту, його призначенням і основним функціям і можливостям. А далі вже можна приступати до ad-hoc testing.
Види інтуїтивного тестування:
- buddy testing (спільне тестування) - коли 2 людини, як правило розробник + тестувальник, працюють паралельно і знаходять дефекти в одному і тому ж модулі. Такий вид тестування допомагає тестувальника виконувати необхідні перевірки, а програмісту фіксують баги на ранніх етапах.
- pair testing (парне тестування) - коли 2 тестувальника перевіряють один модуль і допомагають один одному. Наприклад один може шукати дефекти, а другий їх документувати. Таким чином у одного тестера буде функція, скажімо так обнаружителя, в іншого - описателя 🙂
Відмінності між buddy testing і pair testing:
- Спільне тестування - це поєднання юніт тестування і системного тестування між розробником і тестувальником
- Парне тестування виконується тільки тестувальниками з різним рівнем знань і досвіду (таке поєднання допоможе поділитися поглядами та ідеями)
- monkey testing - довільне тестування програми з метою її зламати
Основні переваги ad-hoc testing:
- немає необхідності витрачати час для підготовки документації
- найважливіші дефекти виявляються на ранніх етапах
- часто застосовується коли беруть нового співробітника. методом адхока людина схоплює за 3 дні то, що по тесткейсам розбирав б тиждень - це називається форсоване навчання нових співробітників
- можливість знайти хитрі дефекти, які не можна було б знайти використовуються стандартні сценарії перевірок.
Що можна використовувати при такому вигляді тестування, які навички будуть корисними?
Оскільки немає ніякої застосовної документації, все що залишається використовувати тестувальника - здоровий глузд, логіку і накопичений досвід. Варто зазначити що будь-який, навіть не дуже знайоме вам додаток повинен бути інтуїтивно зрозумілим. Дійте більше з точки зору користувача, ніж тестувальника.
Ще про тестування:
- Smoke testing
- Види тестування ПО
- тестування ПЗ
- функціональне тестування
- тест дизайн