我们是否需要单独的环境来进行测试和验收(暂存)

Do we need separate environments for testing and acceptance (staging)

我们将从旧服务器迁移到新服务器,现在问题来了:我们是否应该保留 3 台服务器:

或者我们应该把第一个放在一起,只得到两个服务器。我们部署的软件不是很复杂,它是按预定时间间隔移动和处理各种数据文件的小型独立程序。

在我在这里工作的一年多的时间里,我从来没有遇到过需要单独的测试和验收环境的情况。通常,程序在接受环境进行最终测试之前已经过单元测试和集成测试(在单独的构建服务器上)。

然而,在我以前的工作地点,我确实记得缺少额外的服务器。我们将在发布前进行最终测试,但这意味着我们无法测试或展示具有新功能的分支。 这种情况在我目前的工作地点不太可能发生,因为我们的团队非常小:1 个开发人员和 2 个测试人员。

那么在什么情况下应该多一台服务器进行测试验收呢? 我在想:

我是否遗漏了此列表中的某些内容?

首先拥有这两种环境的原因是什么?

同时拥有这两种环境的原因还可能是:

  • 您需要保持环境 运行 与以下版本相同 生产,所以你可以 investigate/reproduce 生产问题 - 和 因此有一个潜在的管道来测试修补程序。
  • 也许其中一个环境专用于例如性能测试什么的。
  • 或者您的最终用户可能需要一个他们可以接受教育的地方, 同时不打扰正在进行的开发和测试。

那是我的 10 美分。