#testing
Кожного дня ми тестуємо. Деякі з нас також пишуть автотести.
Але як зрозуміти, що той результат, який ми отримали - саме очікуваний? Для цього ми всі користуємося оракулами. Навіть, якщо не знаємо, що таке ті оракули.
Що таке оракул?
Оракул в тестуванні - це будь-яке джерело, яке ми можемо використати, щоб зрозуміти що поточний результат є очікуваним.
Які бувають оракули?
- Вимоги. Перше та найважливіше джерело інформації для тестувальника. Вимоги можуть мати багато форм: від офіційної документації до негласного спільного розуміння системи між інженерами.
- Стандарти (міжнародні чи соціальні). Стандарти залежать від індустрії. Соціальні норми чи базові фізичні виміри - це те, що ми або знаємо або можемо відносно легко поміряти. Наприклад знання, що в одному метрі - саме сто сантиметрів.
- Інші схожі продукти. Це може бути загально прийняті норми для користувацького досвіду - де та в якому порядку розмістити базові елементи навігації.
- Логи та системи моніторингу з продакшену. Можна порівняти логи від реальних користувачів з логами, зібраними під час тестування.
- Історія та власний досвід. Чим більше ви працюєте в домені чи над конкретним продуктом - тим більше досвіду ви накопичуєте та можете помітити помилки, які звичайний користувач легко не віднайде.
- Дослідницькі роботи. Якщо ваш софт створюється на основі однієї чи декількох робіт - то вимогами стають саме ці документи.
Для тих, хто пише автотести, оракулами можуть слугувати офіційні туторіали, скрипти чи мануальні тести (якщо у вас є розділення праці між інженерами).
Головний принцип роботи з оракулами - це узгодити їх з усією командою. То ж у випадку різних спорів - “чи бага це чи ні” - ви мали б можливість посилатися на документ.
Але здоровий глузд авжеж ніхто не відміняв.
А якими оракулами користуєтеся ви?