Альфа- та бета-тестування (Alpha Testing and Beta Testing)
Last updated
Last updated
Альфа-тестування (alpha testing): Моделюване або дійсне експлуатаційне тестування потенційними користувачами/замовниками або незалежною командою тестування на стороні розробників, але поза розробницею. Альфа-тестування часто застосовується до коробкового програмного забезпечення як внутрішнього приймального тестування. (ISTQB)
Бета-тестування (beta testing): Експлуатаційне тестування потенційними та/або існуючими клієнтами/замовниками на зовнішній стороні ніяк не пов'язаними з розробниками, з метою визначення чи дійсно компонент чи система задовольняє вимогам клієнта/замовника та вписується в бізнес-процеси. Бета-тестування часто проводиться як форма зовнішнього приймального тестування готового програмного забезпечення для отримання відгуків ринку. (ISTQB)
Альфа- та бета-тестування - це Customer Validation methodologies (Acceptance Testing types), які допомагають зміцнити віру в запуску продукту і, таким чином, призвести до успіху продукту на ринку. Незважаючи на те, що вони покладаються на реальних користувачів і зворотний зв'язок різних команд, ними рухають різні процеси, стратегії та цілі. Ці два типи тестування разом збільшують успіх та тривалість життя продукту на ринку. Ці етапи можна адаптувати до продуктів Consumer, Business чи Enterprise. Етапи альфа- та бета-тестування в основному зосереджені на виявленні помилок у вже протестованому продукті та дають чітке уявлення про те, як продукт насправді використовується користувачами в реальному часі. Вони також допомагають отримати досвід роботи з продуктом перед його запуском, а цінні відгуки ефективно використовуються підвищення зручності використання продукту. Цілі та методи альфа- та бета-тестування перемикаються між собою залежно від процесу, якому випливають у проекті, і можуть бути змінені відповідно до процесів.
- це форма внутрішнього приймального тестування (internal aceptance testing), яке виконується, в основному, власними командами із забезпечення якості та тестування ПЗ. Альфа-тестування - це останнє тестування, яке проводить групи тестування на місці розробки після приймального тестування та перед випуском програмного забезпечення для бета-тестування. Альфа-тестування також може бути виконане потенційними користувачами або клієнтами програми. Але все ж таки це форма внутрішнього приймального тестування.
- Це наступний етап після альфа-тестування. Це заключний етап тестування, на якому компанії випускають програмне забезпечення для декількох зовнішніх груп користувачів, які не входять до групи тестування компанії або співробітників. Ця початкова версія програмного забезпечення відома як бета-версія. Більшість компаній збирають відгуки користувачів у цьому випуску. Коротше кажучи, бета-тестування можна визначити як тестування, яке проводить реальні користувачі в бойовому середовищі. Незважаючи на те, що компанії проводять строгу внутрішню перевірку якості за допомогою спеціальних груп тестування, практично неможливо протестувати програму для кожної комбінації тестового середовища. Бета-версії спрощують тестування програми на тисячах тестових машин та виправлення проблем перед випуском програми для широкої публіки. Вибір груп для бета-тестування може проводитись залежно від потреб компанії. Компанія може запросити кількох користувачів для тестування попередньої версії програми, або випустити її відкрито, щоб це міг зробити будь-хто. Усунення проблем у бета-версії може значно знизити витрати на розробку, оскільки більшість незначних збоїв буде виправлено до остаточної версії. Досі багато великих компаній успішно використовували бета-версії своїх найочікуваніших додатків. оскільки більшість незначних збоїв буде виправлено до остаточної версії. Досі багато великих компаній успішно використовували бета-версії своїх найочікуваніших додатків. оскільки більшість незначних збоїв буде виправлено до остаточної версії. Досі багато великих компаній успішно використовували бета-версії своїх найочікуваніших додатків.
Alpha Testing
Beta Testing
Testing environment
Real environment
Functional, usability
Functional, Usability, Reliability, Security
White box and / or Black box testing
Black box testing
На знайдені дефекти створюються баг-репорти із high priority, після чого вони негайно виправляються
Дефекти збираються із зворотного зв'язку від користувачів та записуються як покращення для майбутньої версії
Цілі:
Оцінити якість продукту;
Переконатися у готовності до бета-тестування;
Фокус пошуку помилок;
Чи працює програмне забезпечення?
Цілі:
Оцінити задоволеність клієнтів;
Переконатися у готовності до релізу (прод);
Фокус на зборі відгуків та пропозицій;
Чи подобається замовникам (customers) продукт?
Коли?
Зазвичай після System testing phase або коли готовий продукт на 70-90%;
Фічі майже заморожені і немає можливості для серйозних поліпшень;
Складання має бути стабільним для технічного користувача;
Коли?
Зазвичай після альфа-тестування продукт готовий на 90-95%;
Фічі заблоковані та покращення вже не приймаються;
Складання має бути стабільним для реальних користувачів;
Тривалість тесту:
Проведення множини циклів випробувань;
Кожен цикл тестування триває 1-2 тижні;
Тривалість також залежить від кількості виявлених проблем та кількості доданих нових функцій;
Тривалість тесту:
Проведення всього 1 або 2 цикли випробувань;
Кожен цикл тестування триває 4-6 тижнів;
Цикли тестування можуть збільшуватися залежно від відгуків/пропозицій реальних користувачів;
Stakeholders:
Engineers (in-house developers), Quality Assurance Team, і Product Management Team
Stakeholders:
Product Management, Quality Management, та User Experience teams
Учасники:
Технічні експерти, спеціалізовані тестувальники з хорошими знаннями предметної галузі (нові або вже брали участь у фазі тестування системи), предметна експертиза (Subject Matter Expertise);
У деяких випадках клієнти та/або кінцеві користувачі можуть брати участь в альфа-тестуванні;
Учасники:
Кінцеві користувачі, котрим призначений продукт;
Customers також зазвичай беруть участь у бета-тестуванні;
Очікування:
Прийнятна кількість помилок, які були пропущені під час попередніх тестових заходів;
Неповні функції та документація;
Очікування:
Майже готовий продукт із значно меншою кількістю помилок та збоїв;
Майже готові функції та документація;
Критерії початку (Entry Criteria):
Альфа-тести, розроблені та перевірені з урахуванням вимог бізнесу (Business requirements);
Вимоги покриті тестами Traceability matrix;
Команда тестування зі знанням предметної галузі (domain) та продукту;
Налаштування середовища та складання для виконання (Environment setup and build for execution);
Набір інструментів має бути готовим для реєстрації помилок та управління тестуванням;
Системне тестування, в ідеалі, має бути закінчено;
Критерії початку (Entry Criteria):
Бета-тести, наприклад, що тестувати, та процедури, задокументовані для використання на проді;
Немає необхідності в матриці простежуваності;
Кінцеві користувачі та замовник об'єднуються;
Налаштування середовища кінцевого користувача;
Набір інструментів має бути готовим для збору відгуків/пропозицій;
Alpha Testing має бути закінчено;
Критерії закінчення (Exit Criteria):
Усі альфа-тести мають бути виконані, і всі цикли мають бути завершені;
Critical / Major дефекти мають бути виправлені та повторно протестовані;
Має бути завершено ефективний аналіз відгуків, наданих учасниками;
Alpha Test Summary report;
Alpha Testing має бути закінчено;
Критерії закінчення (Exit Criteria):
Усі цикли мають бути завершені;
Critical / Major дефекти мають бути виправлені та повторно протестовані;
Має бути завершено ефективний аналіз відгуків, наданих учасниками;
Beta Test Summary report;
Beta Testing має бути закінчено;
Плюси (Pros):
Допомагає виявити помилки, які були виявлені під час попередніх тестових заходів;
Найкраще уявлення про використання та надійність продукту;
Аналіз можливих ризиків під час та після запуску продукту;
Допомагає підготуватись до майбутньої підтримки клієнтів;
Допомагає зміцнити довіру клієнтів до продукту;
Зниження витрат на обслуговування за рахунок виявлення та виправлення помилок перед запуском бета-версії/production версії;
Просте управління тестуванням (Test Management);
Плюси (Pros):
Тестування продукту не піддається контролю, і користувач може протестувати будь-яку доступну функцію будь-яким способом – у цьому випадку кутові області (corner areas) добре протестовані;
Допомагає виявити помилки, які були виявлені під час попередніх тестових заходів (включаючи альфа-версію);
Краще уявлення про використання продукту, надійність та безпеку;
Аналіз точки зору та думка реального користувача про продукт;
Відгуки/пропозиції реальних користувачів допомагають надалі імпровізувати продукт;
Допомагає підвищити задоволеність клієнтів продуктом;
Мінуси (Cons):
Очікується, що не вся функціональність продукту буде перевірена;
Обмежено лише бізнес-вимогами;
Мінуси (Cons):
Певний обсяг (Scope) може дотримуватися або не дотримуватись учасниками;
Документація більше і потребує більше часу - потрібна для використання інструменту реєстрації помилок (при необхідності), використання інструменту для збору відгуків/пропозицій, процедури тестування (установка/видалення, посібники користувача);
Не всі учасники гарантують, що проводять якісне тестування;
Не всі відгуки ефективні - на розгляд відгуків йде багато часу;
Управління тестуванням надто складно;
Крім альфа-і бета-тестування, існують ще гамма-тестування та пілотне.
Джерела:
Дод. матеріал:
– це заключний етап тестування, який виконується, коли продукт готовий до випуску з особливими вимогами. Не всі дії щодо внутрішнього тестування, які вирішено пройти через цей етап тестування, виконуються на продукті. Цей етап не дозволяє вносити до продукту будь-які зміни, крім виправлення критичних помилок, які необхідно виконати. Це тестування проводиться, щоб переконатися, що продукт є більш безпечним з точки зору якості продукту, зручності використання, безпеки та продуктивності перед випуском у прод.
визначається як тип тестування програмного забезпечення, який перевіряє компонент системи або всю систему як реального часу. Метою пілотного тесту є оцінка здійсненності, часу, вартості, ризику та ефективності дослідницького проекту. Це тестування проводиться точно між UAT та Production. У пілотному тестуванні обрана група кінцевих користувачів пробує систему, що тестується, і надає зворотний зв'язок до повного розгортання системи. Іншими словами, це означає проведення генеральної репетиції для подальшого тестування на зручність використання. Пілотне тестування допомагає у ранньому виявленні помилок у Системі. Пілотне тестування пов'язане із встановленням системи на майданчику замовника (або в середовищі, що моделюється користувачем) для тестування на предмет постійного та регулярного використання. Виявлені недоліки потім надсилаються команді розробників у вигляді звітів про помилки, і ці помилки виправляються у наступному складанні системи. Під час цього процесу іноді приймальне тестування також включається як частина тестування сумісність. Це відбувається коли система розробляється для заміни старої.