Тестирование и версии ПО
Практически во всех IT-компаниях разрабатываемое программное обеспечение проходит развитие через несколько версий. И для каждой версии есть свои особенности тестирования. Давайте разберемся в этом.
Тестировщик » QA-блог » Прочее » Тестирование и версии ПО
6 месяцев назад 0 979

Альфа-, Бета- и другие версии ПО
В программировании есть своя градация версий ПО, которая показывает стадию его готовности: от самой первой, «авторской» компоновки, до релиза на рынок или широкого использования. В теории считается, что разработка ПО должна пройти через 5 версий:
Может так случаться, что пользователи получают доступ к ПО на более ранних стадиях. Или что ПО проходит не все стадии. Как бы то ни было, работа для тестировщика есть для каждой версии.
Пре-альфа-версия и тестирование
Пре-альфа (Pre-Alpha) — это самая первая версия ПО. Она обычно не предназначена для использования и уж тем более продажи. Это некий прототип IT-продукта, он служит для демонстрации бизнес-идеи. Как правило, в нем много ошибок и функционал реализован не полностью.
В отношении пре-альфа-версии может выполняться следующее тестирование:
- Проверка сквозных сценариев использования ПО (End-to-End);
- Проверка основных возможностей продукта (например, будет ли подтормаживать графика);
- Проверка отдельных гипотез по функционированию ПО;
- Оценка потребления ресурсов в будущем;
- Анализ макетов и интерфейса.
Альфа-версия ПО и тестирование
Альфа (Alpha) – первая версия с полным функционалом. Считается, что в ней реализованы все возможности, которые задумывались для данного ПО. Формально это уже завершенный IT-продукт, но все прекрасно понимают, что там полно багов [ссылка на статью 26 Дефект ПО], которые надо найти и устранить. Как правило, тестирование альфа-версии проводится внутри компании, чтобы обеспечить нужный уровень конфиденциальности.
В отношении альфа-версии может выполняться следующее тестирование:
- Дымовое, санитарное и сквозное тестирование [ссылка на статью 09 Виды тестирования];
- По уровням Пирамиды тестирования;
- Тестирование интерфейса;
- Нефункциональное тестирование.
Бета-версия ПО и тестирование
Бета (Beta) – это версия, в которой устранены все найденные серьезные дефекты. Тестировщики компании уже в значительной степени «прошерстили» ПО, и оставшиеся баги, как правило, незначительны.
Тестировать далее собственными силами уже малоэффективно, поэтому разработчик хочет воспользоваться «силой толпы». Компания дает доступ к Бета-версии обычным пользователям в обмен на информацию о найденных дефектах. Получается так называемое «открытое тестирование» (пользователи как бесплатные тестировщики).
Также Бета-версией могут воспользоваться другие разработчики, чтобы проверить совместимость ПО между собой.
Релиз-кандидат и тестирование
Релиз-кандидат (Release Candidate, RC) – это уже почти готовый IT-продукт. Им можно пользоваться как полноценным, баги там редкость. Компания-разработчик оставляет себе несколько месяцев, чтобы удостовериться, что дефекты более не препятствуют продаже (широкому использованию) продукта.
Основной тип проверок в Релиз-кандидате – это регрессионное тестирование после устранения мелких недочетов.
Релиз-версия и тестирование
Релиз (Release) – это готовая версия ПО, которая выходит на рынок (широкое использование). Естественно, не существует гарантии, что в ней нет ошибок. Как гласит один из принципов тестирования: «Все протестировать невозможно». Поэтому рано или поздно выходят обновления – новые версии продукта.
Как и в случае с Релиз-кандидатом, основной тип тестирования здесь – регрессионное.
Резюме
Разработка IT-продукта проходит через несколько его версий перед окончательным выходом на широкую аудиторию. Версии могут иметь как формальный статус, так и условное разделение. В любом случае тестирование присутствует на каждой стадии. Со всеми применяемыми там видами тестирования Вы познакомитесь на онлайн-курсах тестировщиков.

Автор Михаил Кулешов
Михаил, профессиональный партнерский маркетолог, является основателем компании South Media OÜ, которая была создана в 2018 году и базируется в Таллинне. С 2016 года Михаил уехал из Финляндии и жил как настоящий «цифровой кочевник» в IT-индустрии, путешествуя по миру только с ноутбуком. Михаил работает и пишет статьи, связанные с IT-индустрией.
Что такое RC-версия? Значение термина пре-релиз и RC-версия
RC-версия (Релиз-кандидат, release candidate, пре-релиз, Pre) – это стадия кандидат на то, чтобы стать финальной. Программы на данной стадии прошли все комплексное тестирование, благодаря чему исправлены все критические ошибки, однако вероятность нахождения некоторых ошибок остается.
Помогло? Делись!
Реклама:
Представляем
систему управления сайтами
NetCat
CMS NetCat — профессиональная коммерческая система управления Интернет-сайтами, один из лидеров на российском рынке веб-разработок.
Наша компания является сертифицированным партнером и рекомендуемым разработчиком сайтов на NetCat во Владивостоке.
В настоящее время большинство новых сайтов мы создаем на основе ее программной платформы.
Быстрый поиск по сайту:
© Аниматика 2005 — 2023
690002 , г.Владивосток , пр-т Острякова, 5, оф.306
Тел.: +7 (423) 206-00-23
E-mail: info@animatika.ru
Какими бывают версии программ. Жизненный цикл

В данной статье будет рассказано о том, что собой представляют альфа и бета версии программ. Также предстоит выяснить, какими бывают приложения до официального итогового релиза. Эта информация пригодится не только разработчикам, но и тестировщикам на собеседованиях.
Стадии разработки
Стадии разработки используются для описания степени готовности итогового программного продукта. Данный момент может отражать реализованные функции, запланированные для того или иного приложения.
Стадии разработки могут быть как объявлены официально, так и проводиться негласно. Во втором случае подобное описание используется специально для того, чтобы охарактеризовать состояние конкретного продукта.
Основная «классификация» стадий разработки программ:
- Pre-Alpha;
- Alpha;
- Beta;
- вечная бета-версия;
- Release candidate.
Каждый вариант предусматривает свои ключевые особенности, о которых будет рассказано далее. Особое внимание будет уделено альфа и бета версиям ПО.
Pre-Alpha
Этапы разработки (стадии) программы делятся на несколько «шагов». Первая – это начальная. Она характеризуется периодом времени от начала работы над проектом до выхода первой альфа версии.
Pre-Alpha – это программы, которые еще не стали alpha или beta, но уже частично готовы для организации тестирования. В них реализованы основные функциональные возможности, возможно в неполной мере.
В Pre-Alpha версии подразумеваются все действия, выполняемые при проектировании приложения:
- формирование дизайна;
- анализ выдвинутых требований;
- непосредственное написание программа;
- отладка конкретных модулей.
Обычно такой версией программ среднестатистические клиенты не пользуются. Они ждут более «серьезного» релиза.
Alpha
Данная версия предназначается преимущественно для тестирования внутри компании или сообщества программистов. Этап, который характеризуется добавлением новых функциональных возможностей. Приложения типа alpha применяются для ознакомления с будущими возможностями.
Тестирование такой версии обычно завершается заморозкой функциональности и переходом к следующим стадиям создания ПО.
Beta
Бета – это «общественная разработка». Стадия активного тестирования широким кругом лиц, а также отладки программы. Приложения такого уровня могут использоваться другими разработчиками для проверки совместимости. Подобное программное обеспечение может содержать достаточно большое количество ошибок.
Бета-продукт – это не финальная версия, хоть она и является относительно стабильной. Его публичное тестирование производится на страх и риск пользователя. За последствия работы с бетой создатели не несут никакой ответственности.
Вечная бета
Есть отдельная категория программ – «вечная бета». Данное понятие было введено Тимом О’Райли. Оно характеризует ситуацию, когда приложение находится в бета-стадии неопределенное количество времени.
Механизм уместен в интернете, где у ПО имеются следующие свойства:
- вместо инсталляторов применяются интернет-службы с дешевой масштабируемостью;
- уникальные подборки данных, которые обогащаются при расширении пользовательской публики;
- выход за рамки одного устройства;
- упрощенные пользовательские интерфейсы и бизнес-модели;
- привлечение целевой аудитории (конечных пользователей) к помощи в создании итогового продукта.
Также «вечной бетой» становятся проекты с особой ответственностью за пользовательские данные. Это приводит к тому, что программисты просто уходят от их конечного формирования. Это может означать, что на официальный итоговый релиз продукта можно не рассчитывать. Он вряд ли появится.
Release Candidate
Стадия-кандидат на то, чтобы стать стабильной (итоговой). Если приложение получило подобный «статус», это может означать, что оно успешно прошло комплексное тестирование. В таких программных продуктах исправлены критические и крупные ошибки.
Release Candidate не исключает наличие багов. Если в течение некоторого времени масштабные недоработки не обнаруживаются, проект переходит в RTM-тип.
Выпуск
Что такое альфа версия программы, теперь понятно. Когда проект прошел все «предварительные» этапы, начинается его выпуск. Процесс носит название «стабильный выпуск». Это формальный термин, который обычно зависит от способа реализации: физический носитель, онлайн или веб-приложение.
Здесь выделяют несколько вариантов:
- Выпуск в производство. Ситуация, когда проект готов к тиражированию. Стабильная версия (не альфа и не candidate) программы, прошедшая предыдущие этапы. Это и есть RTM. Термин используется тогда, когда нужно указать, что проект соответствует определенному уровню качества и готов для «выпуска в массы».
- Общедоступность или GA. Маркетинговая стадия. Во время нее проводятся мероприятия, связанные с коммерциализацией. Программный продукт становится доступным для приобретения.
- Веб-релиз. Это – выпуск в интернет (RTW). Средство доставки ПО, использующее для распространения интернет. Наиболее распространенная концепция в 21 веке.
После того как итоговый проект будет реализован, он начинает поддерживаться. Во время этого периода создатели выпускают к ПО патчи, а также пакеты обновления. Срок поддержки нигде не регламентирован: у некоторых приложений он длится 1-2 года, а у каких-то 5-9 лет.
P. S. Хотите знать больше? Обратите внимание на курсы по тестированию в Otus. Присутствуют варианты как для продвинутых, так и для начинающих пользователей.
Релиз
Релиз (англ. Release) – подразумевает под собой последний выпуск программного обеспечения, это самая новая версия программного обеспечения, содержащая все изменения и обновления. В релизе содержатся новые и измененные конфигурационные единицы, в отношении которых осуществлено тестирование и которые готовы к использованию. Целью процесса управления релизами является консолидация, структурирование и оптимизация всех изменений или обновлений ПО. Также при этом снижаются риски при переходе продукта на новый качественный уровень.
Общие сведения
Общую информацию Вы можете получить, перейдя по следующим ссылкам:
Расширенные сведения
С дополнительной информацией об этом понятии Вы можете ознакомиться ниже.
![]()
Жизненный цикл релиза
У релиза программного обеспечения есть свой жизненный цикл (см. иллюстрацию):
Пре-альфа
Первый этап жизненного цикла релиза ПО называется «Пре-альфа» (англ. Pre-alpha). Пре-альфа относится ко всем видам деятельности на этапе разработки ПО до момента тестирования. На этом этапе выполняют такие действия:
- Сбор и анализ требований
- Дизайн ПО
- Разработка ПО
- Модульное тестирование
Альфа
Второй этап — «Альфа» (англ. Alpha). На этом этапе впервые проводят комплексное тестирование ПО различными методами. Разработчики тестируют исправность функционирования приложений системы. По на этапе Альфа может бывает нестабильным, то есть может произойти сбой программы или потеря данных. После того, как все тесты проведены, данный этап жизненного цикла релиза ПО завершается утверждением набора функций и параметров ПО.
Бета
Третий этап – «Бета» (англ. Beta). Данный этап, как правило, начинается с завершения разработки всех функций ПО. На этапе Бета в программах находят больше технических деффектов, чем на предыдущих этапах (например, скорость работы или производительность системы). Этот этап предполагает проведение тестирования эксплуатационной пригодности. Процесс предоставления пользователям бета-версии программы называется Бета-релиз. По сути, это тот этап, когда программное обеспечение становится доступным для внешних пользователей, а не только для разработчиков внутри организации.
Закрытое и открытое Бета-тестирование
Четвертый этап – «Закрытое и открытое Бета-тестирование». То есть разработчики выпускают или закрытую версию ПО, или открытую. Закрытая Бета-версия программы доступна лишь для узкого круга пользователей, которые протестируют ПО. Соответственно, открытая Бета-версия доступна широкому кругу лиц, которые могут протестировать программу по своей инициативе. После чего, они сообщают разработчикам о возникших ошибках и иногда предлагают дополнить программу какими-то функциями, которые, по их мнению, должны присутствовать в финальной версии программы. Примерами основных открытых бета-версий программ могут служить:
- Apple’s Mac OS X Public Beta. Который вышел в сентябре 2000 года.
- Релиз ПО Longhorn от компании Microsoft в январе 2005 года.
Тестирование открытых Бета-версий применимо в двух случаях:
- Продемонстрировать пользователям новый продукт
- Протестировать ПО среди огромного числа пользователей, с целью обнаружения дефектов, которые маленькие группы тестировщиков могут не найти (например, если определенная ошибка очень редко встречается).
Пятый этап называется «Релиз-кандидат» (англ. Release candidate, RC)- это Бета-версия продукта, который имеет достаточно потенциала для того, чтобы стать финальной версий. На этом этапе продукт станет финальным релизом, в случае, если не возникнут серьезные дефекты. На данном этапе происходит стабилизация функционирования ПО – все функции разработаны, закодированы и протестированы. Этот релиз превращается в релиз с утвержденным кодом (code complete), когда вся команда разработчиков убеждена, что ни один новый код не будет добавлен в данную программу.
Релиз для производства
Шестой этап называется «Релиз для производства» (англ. «Release to manufacturing,RTM). Термин RTM, известный также, как «становящийся золотом»(англ. Going Gold), используется, когда продукт может предоставляться конечным пользователям. Чаще всего, подразумеваются розничные продажи широкому числу покупателей. Термин RTM также может означать, что продукт был предоставлен клиентам для инсталляции на своих аппаратных устройствах. Этот термин не определяет способ и объем доставки ПО потребителям, он всего лишь указывает на то, что на этом этапе качества продукта достаточно для массового распространения. Этот этап предшествует этапу жизненного цикла релиза ПО под названием «Общедоступный Релиз».
Общедоступный Релиз
Седьмой этап — «Общедоступный Релиз» (англ. General availability,GA). Означает, что вся деятельность по коммерческой реализации завершена и ПО доступно широкой общественности или через Интернет, или с помощью физических носителей. Коммерческая деятельность может включать, но не ограничивается, организацией дистрибуции, подготовкой маркетинговых материалов на разных языках, определением целевых рынков, выполнением окончательных тестов. На этом этапе ПО «обретает жизнь». То есть данный релиз – это «живая» финальная версия конкретного продукта. На данном этапе ПО отличается своей стабильностью и практически не имеет дефектов. Такая программа пригодна для массового использования конечными потребителями. Этот релиз также известен как «золотой релиз» (англ. Gold Release).
Веб-релиз
«Веб-релиз» — означает, что для распространения программы используют Интернет, то есть не используются физические носители. В последние годы данный вид релиза стал более популярным, в связи с распространением Интернета. После всех вышеперечисленных этапов наступает этап «промежуточных релизов». После внедрения программы, спустя определенный промежуток времени она будет нуждаться в поддержке.
Окончание срока службы
Завершающий этап «Окончание срока службы» (англ. End-of-life). Означает, что программа больше не продается и не поддерживается. ПО морально устаревает, но иногда лояльность пользователей может продлить программе жизнь на еще какой-то промежуток времени.