您可以在设置特定于环境的配置方面获得一些帮助。 我有两个数据源文件
我在WIndows上使用脚本“SET NODE_ENV = test&& mocha test / ** / * .test.js”来运行我的测试用例并设置要测试的节点环境。 Loopback不会加载server / datasource.test.json,而是加载来自server / datasource.json的数据源。
我已使用process.env.NODE_ENV确认环境,其中记录了“test
”我试图将server / datasource.json更改为server / datasource.local.json,但后来我收到错误 警告:缺少主配置文件“datasources.json”。
我不明白我做错了什么。我应该为测试环境创建所有配置文件,如* .test.json。 或者是否有一个不同的配置文件,我必须定义环境特定文件。
请检查此回购https://github.com/dhruv004/sample-loopback-example
从代码中运行npm run test
它从local.json加载数据,local.json是开发环境的数据源。它应该从test.json
加载数据(测试环境的数据源)
答案 0 :(得分:2)
查看repository,我可以看到LoopBack documentation中与您相关的说明:
LoopBack应用程序可以加载多个配置文件,这些文件可能会相互冲突。具有最高优先级的文件设置的值将始终生效。优先事项是:
NODE_ENV
的值;例如,server/config.staging.json
。server/config.local.json
。server/config.json
。在model-config.json
中,所有模型都将数据源设置为db
,因此在您的情况下,LoopBack应用程序首先加载datasources.test.json
。它找不到数据源db
(仅testdb
),因此它会回退到datasources.json
。它在那里找到数据源db
并使用它。尝试将testdb
中的datasources.test.json
重命名为db
,这需要先行。