Тестування програмного забезпечення
Тестування програмного забезпечення - це спосіб перевірити, чи відповідає фактичний програмний продукт очікуваним вимогам, і забезпечити відсутність дефектів програмного продукту. Він передбачає виконання програмних / системних компонентів за допомогою ручних або автоматизованих інструментів для оцінки одного або декількох цікавих властивостей. Метою тестування програмного забезпечення є виявлення помилок, прогалин або відсутніх вимог на відміну від фактичних вимог.
Деякі воліють говорити про тестування програмного забезпечення як про тестування білої та чорної скриньок. Простіше кажучи, тестування програмного забезпечення означає перевірку тестованої заявки (AUT). Цей підручник знайомить аудиторію з програмним забезпеченням для тестування та обґрунтовує його важливість.
У цьому підручнику ви дізнаєтесь:
- Що таке тестування програмного забезпечення?
- Чому тестування програмного забезпечення є важливим?
- Які переваги тестування програмного забезпечення?
- Тестування з програмної інженерії
- Види тестування програмного забезпечення
- Стратегії тестування в програмній інженерії
- Тестування програми
Чому тестування програмного забезпечення є важливим?
Тестування програмного забезпечення має важливе значення, оскільки, якщо в програмному забезпеченні є помилки або помилки, його можна виявити завчасно і вирішити перед доставкою програмного продукту. Правильно перевірений програмний продукт забезпечує надійність, безпеку та високу продуктивність, що в подальшому призводить до економії часу, економічності та задоволеності споживачів.
Тестування важливо, оскільки помилки програмного забезпечення можуть бути дорогими або навіть небезпечними. Помилки програмного забезпечення потенційно можуть спричинити грошові та людські втрати, і історія наповнена такими прикладами.
- У квітні 2015 року термінал Bloomberg у Лондоні зазнав аварії через збій програмного забезпечення, який торкнувся понад 300 000 трейдерів на фінансових ринках. Це змусило уряд відкласти продаж боргу вартістю 3 млрд фунтів.
- Автомобілі Nissan відкликали з ринку понад 1 мільйон автомобілів через збій програмного забезпечення в сенсорних детекторах подушок безпеки. Повідомлялося про дві аварії через несправність цього програмного забезпечення.
- Starbucks був змушений закрити близько 60 відсотків магазинів у США та Канаді через збій програмного забезпечення в його POS-системі. Одного разу в магазині подавали каву безкоштовно, оскільки вони не змогли обробити операцію.
- Деякі сторонні роздрібні продавці Amazon побачили, що ціна їх продукції знижується до 1 п. Через збій програмного забезпечення. Їм залишились великі втрати.
- Уразливість у Windows 10. Ця помилка дозволяє користувачам вирватися із пісочниць безпеки через недолік системи win32k.
- У 2015 році винищувач F-35 став жертвою програмної помилки, через що він не зміг правильно виявити цілі.
- China Airlines Airbus A300 зазнав аварії через помилку програмного забезпечення 26 квітня 1994 року, внаслідок чого загинули 264 невинних людей
- У 1985 р. Канадська машина радіаційної терапії Therac-25 вийшла з ладу через помилку програмного забезпечення та доставила смертельні дози опромінення пацієнтам, внаслідок чого 3 людини загинули, ще 3 отримали важкі поранення.
- У квітні 1999 року помилка програмного забезпечення спричинила невдачу запуску військового супутника на 1,2 мільярда доларів - найдорожчої аварії в історії
- У травні 1996 року помилка програмного забезпечення призвела до зарахування на банківські рахунки 823 клієнтів великого американського банку 920 мільйонів доларів США.
Клацніть тут, якщо відео недоступне
Які переваги тестування програмного забезпечення?
Ось переваги використання тестування програмного забезпечення:
- Економічна: це одна з важливих переваг тестування програмного забезпечення. Своєчасне тестування будь-якого ІТ-проекту допоможе заощадити ваші гроші на тривалий термін. У разі виявлення помилок на попередньому етапі тестування програмного забезпечення, виправлення коштує менше.
- Безпека: це найбільш вразлива і чутлива перевага тестування програмного забезпечення. Люди шукають надійні товари. Це допомагає усунути ризики та проблеми раніше.
- Якість продукту: це основна вимога будь-якого програмного продукту. Тестування гарантує, що якісний продукт доставляється споживачам.
- Задоволеність клієнтів: Основна мета будь-якого товару - задоволення своїх клієнтів. Тестування UI / UX забезпечує найкращу взаємодію з користувачем.
Тестування з програмної інженерії
Відповідно до ANSI / IEEE 1059, тестування в програмній інженерії - це процес оцінки програмного продукту, щоб визначити, чи відповідає поточний програмний продукт необхідним умовам чи ні. Процес тестування включає оцінку особливостей програмного продукту щодо вимог з точки зору відсутніх вимог, помилок або помилок, безпеки, надійності та продуктивності.
Види тестування програмного забезпечення
Зазвичай тестування класифікується на три категорії.
- Функціональне тестування
- Нефункціональне тестування або тестування продуктивності
- Технічне обслуговування (регресія та обслуговування)
Категорія тестування | Види тестування |
---|---|
Функціональне тестування |
|
Нефункціональне тестування |
|
Технічне обслуговування |
|
Це далеко не повний список, оскільки існує понад 150 типів тестування, які все ще додаються. Також зауважте, що не всі типи тестування застосовні до всіх проектів, але залежать від характеру та обсягу проекту.
Стратегії тестування в програмній інженерії
Ось важливі стратегії в розробці програмного забезпечення:
Unit Testing: цього підходу до тестування програмного забезпечення дотримується програміст для тестування модуля програми. Це допомагає розробникам зрозуміти, чи працює окрема одиниця коду належним чином чи ні.
Тестування інтеграції: воно зосереджується на побудові та дизайні програмного забезпечення. Ви повинні бачити, що інтегровані блоки працюють без помилок чи ні.
Тестування системи: за цим методом ваше програмне забезпечення компілюється як одне ціле, а потім перевіряється в цілому. Ця стратегія тестування перевіряє функціональність, безпеку, портативність, серед іншого.
Тестування програми
Тестування програм при тестуванні програмного забезпечення - це метод виконання фактичної програмної програми з метою перевірки поведінки програми та пошуку помилок. Програма виконується з даними тестового випадку для аналізу поведінки програми або відповіді на тестові дані. Хорошим тестуванням програми є те, яке має високі шанси знайти помилки.
Короткий опис основ тестування програмного забезпечення:
- Тестування програмного забезпечення визначається як діяльність, щоб перевірити, чи відповідають фактичні результати очікуваним результатам, і переконатися, що система програмного забезпечення не містить дефектів.
- Тестування важливо, оскільки помилки програмного забезпечення можуть бути дорогими або навіть небезпечними.
- Основними причинами використання тестування програмного забезпечення є: економічна ефективність, безпека, якість продукції та задоволеність споживачів.
- Зазвичай тестування класифікується на три категорії: функціональне тестування, нефункціональне тестування або тестування продуктивності та технічне обслуговування.
- Важливими стратегіями в програмній інженерії є: модульне тестування, інтеграційне тестування, тестування валідації та тестування системи.