我正在设置Heroku-CI以运行集成测试。我的目标是:
我很难在Internet上找到任何说明如何连接测试套件的数据库/进行API调用的来源。
正如官方文档中所述,我将app.json
设置为提供heroku-postgresql:in-dyno
插件:https://devcenter.heroku.com/articles/heroku-ci#provisioning-add-ons-the-addons-key-example
{
"environments": {
"test": {
"addons": [
"heroku-postgresql:in-dyno"
]
}
},
"addons": [
"heroku-postgresql"
],
}
因此,我期望按照文档中的说明DATABASE_URL
env变量进行定义:https://devcenter.heroku.com/articles/heroku-ci-in-dyno-databases#usage
我倾倒了process.env
并得到(为清楚起见被滤除):
CI_NODE_INDEX=0
SHLVL=2
PORT=13825
WEB_CONCURRENCY=5
CI_NODE_TOTAL=1
HEROKU_TEST_RUN_COMMIT_VERSION=9d21e06632878c2d23fb4e8f51017d5e87628ac7
STACK=heroku-18
HEROKU_TEST_RUN_ID=e5e28b13-efbe-4ef0-bc50-ed3a041bca04
HEROKU_TEST_RUN_NUMBER=27
NODE_ENV=test
JEST_WORKER_ID=1
DATABASE_URL
未定义。我应该如何连接到数据库并用种子数据填充它?
我没有在DATABASE_URL
中的任何地方指定app.json
,但我不认为应该这样做,就像评论应用一样。
我还尝试使用PORT
环境变量http://localhost:${process.env.PORT}/graphql
对服务器进行API调用,但得到了connect ECONNREFUSED 127.0.0.1:13825
这让我感到困惑,任何见解将不胜感激!