Методології тестування програмного забезпечення: вивчіть моделі контролю якості

Зміст:

Anonim

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

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

Примітка : Оскільки тестування програмного забезпечення є невід’ємною частиною будь-якої методології розробки, багато компаній використовують розмовний термін „Методології розробки та методології тестування”. Отже, методології тестування можуть також посилатися на моделі водоспадів, Agile та інших моделей контролю якості на противагу наведеному вище визначенням методологій тестування. Обговорення різних видів тестування не додає цінності читачам. Отже, ми обговоримо різні моделі розвитку.

У цьому підручнику ви дізнаєтесь-

  • Модель водоспаду
  • Ітеративний розвиток
  • Спритна методологія
  • Екстремальне програмування
  • Яку методологію програмного забезпечення вибрати?
  • Як налаштувати методології тестування програмного забезпечення?

Модель водоспаду

Що це?

У моделі водоспаду розвиток програмного забезпечення проходить різні етапи, такі як Аналіз вимог, Дизайн тощо - послідовно .

У цій моделі наступна фаза починається лише після завершення попередньої фази.

Що таке підхід до тестування?

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

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

За цією методологією група тестування переходить до наступного етапу лише після завершення попереднього етапу.

Переваги

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

Недоліки

У моделі водоспаду можна починати з наступної фази лише після завершення попередньої фази. Отже, ця модель не може врахувати незаплановані події та невизначеність.

Ця методологія не підходить для проектів, де вимоги часто змінюються.

Ітеративний розвиток

Що це?

У цій моделі великий проект розділений на невеликі частини, і кожна частина піддається декільком ітераціям моделі водоспаду. В кінці ітерації розробляється новий модуль або вдосконалюється існуючий модуль. Цей модуль інтегрований в архітектуру програмного забезпечення, і вся система тестується разом

Що таке підхід до тестування?

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

Переваги

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

Недоліки

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

Спритна методологія

Що це?

Традиційні методології розробки програмного забезпечення працюють на передумові, що вимоги до програмного забезпечення залишаються незмінними протягом усього проекту. Але зі збільшенням складності вимоги зазнають численних змін і постійно змінюються. Часом сам клієнт не впевнений, чого хоче. Хоча ітераційна модель вирішує цю проблему, вона все ще базується на моделі водоспаду.

В методології Agile програмне забезпечення розробляється з поступовим, швидким циклом. Наголошується на взаємодії між замовниками, розробниками та клієнтами, а не процесами та інструментами. Спритна методологія фокусується на реагуванні на зміни, а не на широкому плануванні.

Що таке підхід до тестування?

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

Переваги

Можна внести зміни до проекту в будь-який час, щоб відповідати вимогам.

Це додаткове тестування мінімізує ризики.

Недоліки

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

Екстремальне програмування

Що це?

Екстремальне програмування - це тип гнучкої методології, яка вірить у короткі цикли розвитку. Проект поділяється на прості інженерні завдання. Програмісти кодують просту частину програмного забезпечення і повертаються до клієнта для отримання зворотного зв'язку. Враховуються огляди замовника, і розробники приступають до наступного завдання.

Зазвичай розробники екстремальних програм працюють удвох.

Екстремальне програмування використовується там, де вимоги замовника постійно змінюються.

Що таке підхід до тестування?

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

  1. Додайте тест-кейс до набору тестів, щоб перевірити нову функціональність, яка ще не розроблена
  2. Запустіть усі тести, і очевидно, що доданий новий тест повинен провалитись, оскільки функціональність ще не кодована
  3. Напишіть код для реалізації функції / функціональності
  4. Знову запустіть набір тестів. Цього разу новий тест повинен пройти з моменту кодування функціональних можливостей

Переваги

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

Постійне тестування та безперервна інтеграція невеликих версій забезпечують високу якість доставки програмного коду

Недоліки

Зустрічі між командою розробників програмного забезпечення та клієнтами збільшують час.

Яку методологію програмного забезпечення вибрати?

Існує маса методологій для розробки програмного забезпечення та відповідного тестування. Кожна техніка та методологія тестування розроблена для певної мети та має свої відносні переваги та недоліки.

Вибір конкретної методології залежить від багатьох факторів, таких як характер проекту, вимоги клієнта, графік проекту тощо.

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

Як налаштувати методології тестування програмного забезпечення?

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

Планування

Реалістичне планування є ключем до впровадження успішної методології тестування, і графік повинен відповідати потребам кожного члена команди.

Визначені результати

Для того, щоб усі члени команди залишались на одній сторінці, слід забезпечити чітко визначені результати. Результати повинні містити прямий зміст без будь-яких двозначностей.

Тестовий підхід

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

Звітність

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