Heroku登台应用程序有什么用?

时间:2017-02-16 02:21:23

标签: heroku staging

我了解如何在将Heroku部署到生产环境之前,将代码创建并部署到临时环境。我知道很高兴看到代码是否会在与生产环境非常相似的环境中“爆炸”。

但是,我无法找出任何有形的方法或机制来确定应用程序是否在登台环境中被破坏。

换句话说,我不明白如何在暂存环境中运行应用程序让我有信心将我的应用程序部署到生产环境。

因此我的问题是:

  1. Heroku上的暂存环境还有哪些其他步骤?
  2. 集成测试是否应该在暂存环境中运行?
  3. 如果我注意到应用程序在暂存环境中运行,那还不错吗?

2 个答案:

答案 0 :(得分:0)

暂存环境仅用于此目的 - 在将应用程序版本升级到生产之前暂存或“排练”应用程序版本。

Heroku管道使您能够在与生产应用程序尽可能相同的环境中部署临时应用程序,以减少“但它在我的开发环境中工作”的问题。

您在暂存环境中对应用的处理取决于您自己。您可以考虑使用各种模拟工具来模拟将访问您的生产应用程序的实时用户。您可能需要对生产应用程序的数据执行迁移,因此您可以先在暂存应用程序中运行它们。您可以让测试人员使用您的暂存应用程序,以便在升级到生产之前验证所有内容是否按预期工作。

结论:无论您使用生产应用程序做什么,您都应该可以使用您的暂存应用程序。因此,您应该努力实现部署流程,从而在将版本升级到生产之前,无论生产中出现什么情况,都应首先在分段上进行测试。你如何实现这一点取决于你。

答案 1 :(得分:0)

Heroku上的暂存环境还有哪些其他步骤?

  1. 直观地捕获任何损坏的CSS + HTML(这对于当前的测试工具来说是一项非常困难的任务)
  2. 您的团队中可能还有其他成员(SEO专家,营销经理等),他们希望检查文本,元标记等。拥有一个临时环境只会让他们的生活更轻松,因为他们可以导航和探索,提出建议改进等
  3. 在您的开发机器中,您和其他团队成员可能拥有的环境与您在生产中运行的环境不同(不同的DB OS版本和第三方服务(.ie Elasticsearch,Redis等)仅举几例。
  4. 您希望自行测试部署(您可能会在部署期间触发一系列任务)

    随着生产环境的继续,尽可能接近临时环境的好处和优势列表......

  5. 集成测试是否应该在暂存环境中运行?

    通常,您在CI服务器(而不是暂存)中运行自动化测试。暂存只是用于视觉测试,也许是为了捕获测试场景尚未涵盖的错误

    如果我注意到应用程序在暂存环境中运行,那还不错吗?

    很难说(您的暂存环境可能不是生产环境的完美副本),但如果经过充分测试,它应该非常接近您希望在生产环境中运行的内容