Блог

Завдання 2. Що таке тестування програмного забезпечення?

Yoda Magister · 1 березня 2019 р.

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

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

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

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

Що таке тестування (наступне ✅):

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

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

То, що тестування не є (див. нижче ❌). Ніяк, навіть якщо б хотілося дуже 😅.

Простий, швидкий і передбачуваний процес.

Проверка того, що продукт відповідає його опису.

Вибуття та згідження несподіванок. Спроба знайти проблеми перед тим, як ПЗ буде випущено користувачам.

Підвищення якості — це параметр всієї команди розробки, а не тільки QA.

Доказання того, що ПЗ працювало правильно один раз.

Вивчення продукту.

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

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

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

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

Етап, який проект має обов’язково пройти, щоб стати успішним. (Деякі продукти можуть тестуватися самими користувачами)

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

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

Що робити далі (Практична частина):

Прочитайте цей список того, що роблять і не роблять тестувальники ПЗ. Спробуйте запитати людей навколо себе, як вони розуміють, що таке тестування. Запитайте людей, з якими ви працюєте та обмінюєтеся (тестувальників і ніт), запитайте людей через месенджер, і, можливо, навіть запитайте свою родину. Напишіть, чи значно змінилося ваше розуміння процесу тестування після прочитання порівняно з тим, що ви з самого початку думали. На скільки різні відповіді ви отримали? Дослідіть інші галузі, такі як фармацевтика, побутова техніка тощо. Який у них підхід до тестування? На скільки він відрізняється від IT-галузі? Змінилося лише ваше уявлення про те, як тепер ви підходите до тестування?

#Тестуванняйрозробка