【发布时间】:2019-03-06 07:15:12
【问题描述】:
我已经为我的 node.js 应用程序编写了一些测试,并且这些测试使用 Postgresql 测试数据库在本地运行。
当我运行我的测试脚本npm run test 时,环境设置为test,发生这种情况时,为测试数据库设置了数据库连接字符串,我在应用程序中的查询现在在测试数据库上完成.像这样:
let connectionString;
if (process.env.NODE_ENV === 'test') {
connectionString =`postgresql://${process.env.DB_USER}:${process.env.DB_PASS}@${process.env.DB_HOST}:${process.env.DB_PORT}/${process.env.TEST_DB_NAME}`;
} else {
connectionString =`postgresql://${process.env.DB_USER}:${process.env.DB_PASS}@${process.env.DB_HOST}:${process.env.DB_PORT}/${process.env.DB_NAME}`;
}
这样我的测试就在测试数据库上运行。
然而,在 travis 上,我知道我需要进一步配置它自己的数据库。在 travisCI 文档上,我读到了如何设置 PostgreSQL 数据库 here,但这对我没有帮助,因为我如何获得上面的完整数据库 URL?在 travisCI 上,我将使用什么作为数据库 hostname 或 port,以及如何在我的代码中设置此值?
如何设置数据库连接字符串并在我的代码中访问它?
感谢您的任何想法。
【问题讨论】:
标签: node.js postgresql express testing travis-ci