0

我负责维护的 Web 应用程序出现问题。

系统经常遇到错误,我们的支持供应商总是要求我们看看我们是否可以“复制 UAT 中的错误”。这显然是一个合理的要求。很多时候,由于各种原因(有些是清楚的,有些不是),这些错误在 UAT中不存在。在测试环境中缺乏 bug 可重现性给 bug 解决过程增加了大量的摩擦。

我们的系统架构中有 3 个关键部分出现了这些错误(CMS、API 层和数据库)。我建议我们设置一个系统作业,将系统的这 3 个部分永久克隆到沙盒测试环境中。这种克隆会定期发生(例如,每 24 小时一次),并且会自动发生。

这种环境有专门的术语吗?这是帮助诊断系统问题的既定方法吗?有没有什么地方我可以阅读行业最佳实践来建立这样的东西?谢谢。

4

1 回答 1

1

这种过程的技术术语是复制,它通常用于一些系统,如数据库,但通常不是为了测试目的,而是为了增加可用性,所以复制用作故障转移备用。

由于对资源的高需求,您不会经常找到包含所有数据的生产系统的精确副本。此外,在某些时候,两个系统必须有所不同。大多数系统(我知道)都有大量的接口,您无法复制完整的系统系统。

另外:实际调试问题时,您只需要生产系统的副本。如果您正处于其中,您可能不希望一切都消失并被新副本取代。

因此,我建议设置允许按需获取相关部分副本的脚本。

此外,您可能需要考虑如何修改系统以更轻松地设置副本。

例如,当您将所有设置自动化(使用 chef/docker 或类似工具)时,您应该能够在任何您想要的地方再次设置相同的系统,因此您现在只需获取生产数据。

这是一个有趣的观点。生产数据通常包含秘密信息(因为它对业务至关重要,或者因为它是个人数据)。您不希望这种东西在每个人都可以访问的测试系统中徘徊。

于 2015-12-04T06:32:15.113 回答