我知道,在开发解决方案时,至少应该有3种不同的环境:
我已经研究过关于软件工程的这个问题和关于服务器故障的这个问题,它们在分期环境的意义上似乎存在分歧。此外,关于主题的维基百科页面指出:
暂存环境的主要用途是在应用于生产环境之前测试所有安装/配置/迁移脚本和过程。这确保了对生产环境的所有重大和次要的升级都将在最短的时间内可靠地完成,而不会出现错误。
对我来说,暂存等于UAT,在进入现实世界之前,您必须测试应用程序和部署过程。因此,我们推动包与UAT的变化,就像我们推动生产,完全自动化和所有的仪式,我们应该对生产环境。
尽管如此,UAT环境和阶段环境之间有什么适当的区别呢?
--
编辑:为了清楚起见,我在考虑一个Web应用程序,无论是互联网网站还是内联网网站。没有“表单”应用程序或移动应用程序。
发布于 2017-08-05 01:13:27
区别在于数据。
UAT环境是为“用户接受”新功能而设置的。为了测试该功能,QA或涉众可以以特定的方式设置用户配置文件,以执行特定的功能,或者设置模拟产品或配置来检查所有这些功能。
通常使用生产数据的副本设置暂存环境,有时是匿名的。一些公司定期从生产快照中“刷新”他们的分期数据库。主要重点是确保应用程序在生产中的工作方式与在UAT中的工作方式相同。测试人员将不再重新设置数据,而是在数据库中搜索与基本测试用例集相匹配的配置文件和产品。通常,“真实”数据中有一些怪癖,导致在UAT期间错过了意想不到的边缘情况。此外,任何数据迁移测试都需要在暂存环境中进行。
发布于 2017-08-04 14:39:10
使用这些不同的环境真的,真的取决于您的需求。从您的评论“暂存== UAT”中可以看出,您的应用程序非常小,没有QA团队,而且只有几个开发人员。
大型应用程序环境可能具有集成测试环境和QA环境,前者是开发人员运行集成测试的地方,后者是QA团队运行测试的地方。可能存在一个培训环境,其中包含在每个培训会话之前恢复的库存数据。准备环境将在操作团队的控制下进行,以确保滚动正常进行。用户验收测试(UAT)环境将由客户团队使用。还可能存在用于复制客户问题的生产快照环境。
我的观点是,在确定您需要的环境时,要注意单一的观点。
发布于 2017-08-04 20:34:45
| Environment | Software version | Way of usage of software |
------------- ------------------- --------------------------
| UAT | New | Same as production |
| Staging | New or production | New for this version |在这里,使用的定义非常广泛,可能包括各种各样的东西,从终端用户所做的一些配置更改到UAT环境中无法使用的昂贵的基础设施特性。重要的是,软件产品的版本可以是新版本的,也可以是当前版本的,但始终是已经通过验收的版本。
换言之:
注意:正如问题本身所描述的那样,对于“分期环境”有不同的理解,而在您的公司/环境中使用的环境可能有所不同。
https://softwareengineering.stackexchange.com/questions/355103
复制相似问题