База знань

Чому тестування необхідне?

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

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

Коли ми щось тестуємо, то ставимо собі просте запитання: «Чи працює це так, як ми очікуємо?» або, іншими словами: чи відповідає реальна поведінка об’єкту тестування нашим очікуванням? Якщо відповідь позитивна – чудово, якщо ні, – ми обмануті в своїх очікуваннях, а значить потрібно щось виправляти.

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

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

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

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

Ризик (risk):

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

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

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

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

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

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

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