【发布时间】:2022-01-16 06:51:55
【问题描述】:
虽然我的具体示例涉及 Django、Docker 和 Heroku,但我相信这些都是非常笼统的测试/QA 问题。
我有一个使用 Selenium 在 dev 中测试的 dockerized Django 应用程序,确认我的静态文件从我的本地文件夹 (EXPECTED_ROOT = '/staticfiles/') 中正确提供。这个应用程序被部署到 Heroku,我可以看到(视觉上和在开发工具中)静态文件也被正确地从 CloudFront 拉入。我想用我在开发中使用的相同测试来正式化它。我的第一个问题与环境变量是否/如何用于测试有关:
- 我是否将例如
EXPECTED_ROOT = 'https://<somehash>.cloudfront.net/'作为环境变量添加到 Heroku 并在 Selenium 测试中使用它?
此外,要在 staging 中运行此测试,我需要像在 dev 中一样在我的 Docker 映像中安装 Firefox。也许这在舞台上是可以的,但在产品中,我相信我应该瞄准尽可能小的图像。所以问题是关于 staging 和 prod 之间的区别:
- 我是否将 Firefox 保留在我的暂存映像中,运行测试,然后发送 生产该 Dockerfile 的副本,但现在没有 Firefox?
感谢任何帮助。
【问题讨论】:
标签: django docker testing heroku devops