Alpha、Beta、Snapshot、Release、Nightly、Milestone、Release Candidate(RC)... 何时使用哪个术语
Alpha, Beta, Snapshot, Release, Nightly, Milestone, Release Candidate(RC)... When to use which terminology
作为构建、发布和部署工程师,发布有多种类型,如下所示:
- 阿尔法
- 测试版
- 快照
- 发布
- 每晚
- 里程碑
- 候选版本 (RC)
- [其他]
想知道它们的区别和意义
阿尔法
发布生命周期的 alpha 阶段是开始软件测试的第一个阶段(alpha 是希腊字母表的第一个字母,用作数字 1)。在此阶段,开发人员通常使用白盒技术测试软件。然后由另一个测试团队使用黑盒或灰盒技术执行额外的验证。转向组织内部的黑盒测试称为 alpha 发布
Alpha 版软件可能不稳定,可能导致崩溃或数据丢失。 Alpha 软件可能不包含为最终版本计划的所有功能。一般来说,alpha 软件的外部可用性在专有软件中并不常见,而开源软件通常有公开可用的 alpha 版本。 alpha 阶段通常以功能冻结结束,表示不会向软件添加更多功能。此时,据说该软件的功能已经完成。
测试版
Beta,以希腊字母表的第二个字母命名,是alpha之后的软件开发阶段。处于测试阶段的软件也称为 betaware。 Beta 阶段通常在软件功能完整但可能包含许多已知或未知错误时开始。处于测试阶段的软件通常会比完成的软件有更多的错误,以及 speed/performance 问题,并且仍然可能导致崩溃或数据丢失。 Beta 测试的重点是减少对用户的影响,通常结合可用性测试。向用户提供测试版的过程称为测试版发布,这通常是软件首次在开发它的组织之外可用。 Beta 版软件通常可用于在组织内以及对潜在客户进行演示和预览。一些开发人员将此阶段称为预览、预览版、原型、技术 preview/technology 预览 (TP) 或抢先体验。一些软件一直处于永久测试阶段,新的特性和功能会不断添加到软件中,而不会建立一个确定的“最终”版本。
Beta 测试人员是积极报告 Beta 软件问题的人。他们通常是开发软件的组织的客户或潜在客户的代表。 Beta 测试人员倾向于免费提供服务,但通常会收到他们测试的产品版本、发布版本的折扣或其他奖励。
由于 Internet 促进了软件的快速和廉价分发,公司开始对“测试版”一词的使用采取更宽松的方式。 2005 年 2 月,ZDNet 发表了一篇文章,讲述了最近出现的 beta 版本经常停留多年并被当作生产级别使用的现象,被贬称为“永久测试版”。它指出,例如 Gmail 和 Google News 已经测试了很长时间,尽管它们被广泛使用,但预计不会放弃测试状态;但是,Google 新闻确实在 2006 年 1 月离开了测试版,随后 Google 应用程序(包括 Gmail)在 2009 年 7 月离开了测试版。这种技术可能允许开发人员延迟提供对剩余问题的全面支持和责任。在 Web 2.0 的背景下,人们甚至谈论永久测试版来表示某些软件旨在保持测试状态。此外,“beta”有时用于表示更像是发布候选的东西,或者作为一种限时演示或营销技术的形式。自推出 Windows 8 以来,Microsoft 不再将其软件命名为 Beta。相反,他们一直在为大多数预发布软件使用术语预览。自 2014 年启动 Windows Insider Program 以来,通过该计划发布的所有预发布版本都称为 Insider Preview 版本。
快照和发布
Maven中的快照版本是尚未发布的版本。
想法是在 1.0 版本(或任何其他版本)完成之前,存在一个 1.0-SNAPSHOT。该版本可能会成为 1.0。它基本上是“1.0 正在开发中”。这可能接近于真正的 1.0 版本,或者相当远(例如,在 0.9 版本之后)。
“真实”版本和快照版本的区别在于快照可能会得到更新。这意味着今天下载 1.0-SNAPSHOT 可能会得到与昨天或明天下载不同的文件。
通常,快照依赖项只应在开发期间存在,发布版本(即没有非快照)不应依赖于快照版本。
每晚
每晚构建是一种自动发生的中性构建。这些通常发生在没有人可能在办公室工作的情况下,因此在构建期间不会对源代码进行更改。
夜间构建是一件好事,如果开发人员破坏了构建,它们会立即向开发人员提供反馈。每晚构建意味着该软件是稳定的,并且很可能为新用户构建。不定期构建的软件很难发布。
里程碑
里程碑版本包括特定功能集,并在功能完成后立即发布。
候选版本 [RC]
发布候选。发布候选 (RC),也称为“going silver”,是一个有可能成为最终产品的测试版,除非出现重大错误,否则随时可以发布。
候选版本 (RC) 是内部发布的版本,用于检查在之前的开发期间是否有任何关键问题未被发现到代码中。 Release candidates 不用于生产部署,但它们仅用于测试目的。
作为构建、发布和部署工程师,发布有多种类型,如下所示:
- 阿尔法
- 测试版
- 快照
- 发布
- 每晚
- 里程碑
- 候选版本 (RC)
- [其他]
想知道它们的区别和意义
阿尔法
发布生命周期的 alpha 阶段是开始软件测试的第一个阶段(alpha 是希腊字母表的第一个字母,用作数字 1)。在此阶段,开发人员通常使用白盒技术测试软件。然后由另一个测试团队使用黑盒或灰盒技术执行额外的验证。转向组织内部的黑盒测试称为 alpha 发布
Alpha 版软件可能不稳定,可能导致崩溃或数据丢失。 Alpha 软件可能不包含为最终版本计划的所有功能。一般来说,alpha 软件的外部可用性在专有软件中并不常见,而开源软件通常有公开可用的 alpha 版本。 alpha 阶段通常以功能冻结结束,表示不会向软件添加更多功能。此时,据说该软件的功能已经完成。
测试版
Beta,以希腊字母表的第二个字母命名,是alpha之后的软件开发阶段。处于测试阶段的软件也称为 betaware。 Beta 阶段通常在软件功能完整但可能包含许多已知或未知错误时开始。处于测试阶段的软件通常会比完成的软件有更多的错误,以及 speed/performance 问题,并且仍然可能导致崩溃或数据丢失。 Beta 测试的重点是减少对用户的影响,通常结合可用性测试。向用户提供测试版的过程称为测试版发布,这通常是软件首次在开发它的组织之外可用。 Beta 版软件通常可用于在组织内以及对潜在客户进行演示和预览。一些开发人员将此阶段称为预览、预览版、原型、技术 preview/technology 预览 (TP) 或抢先体验。一些软件一直处于永久测试阶段,新的特性和功能会不断添加到软件中,而不会建立一个确定的“最终”版本。
Beta 测试人员是积极报告 Beta 软件问题的人。他们通常是开发软件的组织的客户或潜在客户的代表。 Beta 测试人员倾向于免费提供服务,但通常会收到他们测试的产品版本、发布版本的折扣或其他奖励。
由于 Internet 促进了软件的快速和廉价分发,公司开始对“测试版”一词的使用采取更宽松的方式。 2005 年 2 月,ZDNet 发表了一篇文章,讲述了最近出现的 beta 版本经常停留多年并被当作生产级别使用的现象,被贬称为“永久测试版”。它指出,例如 Gmail 和 Google News 已经测试了很长时间,尽管它们被广泛使用,但预计不会放弃测试状态;但是,Google 新闻确实在 2006 年 1 月离开了测试版,随后 Google 应用程序(包括 Gmail)在 2009 年 7 月离开了测试版。这种技术可能允许开发人员延迟提供对剩余问题的全面支持和责任。在 Web 2.0 的背景下,人们甚至谈论永久测试版来表示某些软件旨在保持测试状态。此外,“beta”有时用于表示更像是发布候选的东西,或者作为一种限时演示或营销技术的形式。自推出 Windows 8 以来,Microsoft 不再将其软件命名为 Beta。相反,他们一直在为大多数预发布软件使用术语预览。自 2014 年启动 Windows Insider Program 以来,通过该计划发布的所有预发布版本都称为 Insider Preview 版本。
快照和发布
Maven中的快照版本是尚未发布的版本。
想法是在 1.0 版本(或任何其他版本)完成之前,存在一个 1.0-SNAPSHOT。该版本可能会成为 1.0。它基本上是“1.0 正在开发中”。这可能接近于真正的 1.0 版本,或者相当远(例如,在 0.9 版本之后)。
“真实”版本和快照版本的区别在于快照可能会得到更新。这意味着今天下载 1.0-SNAPSHOT 可能会得到与昨天或明天下载不同的文件。
通常,快照依赖项只应在开发期间存在,发布版本(即没有非快照)不应依赖于快照版本。
每晚
每晚构建是一种自动发生的中性构建。这些通常发生在没有人可能在办公室工作的情况下,因此在构建期间不会对源代码进行更改。
夜间构建是一件好事,如果开发人员破坏了构建,它们会立即向开发人员提供反馈。每晚构建意味着该软件是稳定的,并且很可能为新用户构建。不定期构建的软件很难发布。
里程碑
里程碑版本包括特定功能集,并在功能完成后立即发布。
候选版本 [RC]
发布候选。发布候选 (RC),也称为“going silver”,是一个有可能成为最终产品的测试版,除非出现重大错误,否则随时可以发布。
候选版本 (RC) 是内部发布的版本,用于检查在之前的开发期间是否有任何关键问题未被发现到代码中。 Release candidates 不用于生产部署,但它们仅用于测试目的。