Javascript 如何在meteor服务器端测试中加载json文件
我的Meteor服务器方法首先调用另一台服务器来检索数据,缓存在mongo db中,然后响应请求。我想用Meteor和Velocity测试我的服务器代码 对于单元测试,我有一个json文件,其中包含来自api的样本响应,但我不知道如何将该文件加载到模拟服务器测试的api响应中。由于是服务器测试,我无法从Javascript 如何在meteor服务器端测试中加载json文件,javascript,json,meteor,meteor-velocity,Javascript,Json,Meteor,Meteor Velocity,我的Meteor服务器方法首先调用另一台服务器来检索数据,缓存在mongo db中,然后响应请求。我想用Meteor和Velocity测试我的服务器代码 对于单元测试,我有一个json文件,其中包含来自api的样本响应,但我不知道如何将该文件加载到模拟服务器测试的api响应中。由于是服务器测试,我无法从jasmine jquery访问jquery或getJSONFixtures() 如何在服务器测试代码中加载该json文件 编辑因此,我不想将我的测试资源文件作为资产捆绑在/private目录中感
jasmine jquery
访问jquery
或getJSONFixtures()
如何在服务器测试代码中加载该json文件
编辑因此,我不想将我的测试资源文件作为资产捆绑在
/private
目录中感谢@sparticus的建议
这解决了我的问题:
/tests
目录中。我的在/tests/resources/***
gulptest
),首先将它们复制到私有目录/private/tests
。然后您的测试文件将作为Assets.getText()
提供/private/tests
目录这确保了我的测试资源文件在部署期间不会被捆绑。可能重复@sparticus what is
private
目录?它是存储我的测试资源文件的好地方吗?私有目录是放置服务器端资产(而不是代码)的地方。JSON文件属于这一类。只需在根meteor目录中创建一个名为“private”的目录,并将JSON放在其中。阅读更多关于私有目录的信息:是的,json文件绝对不是代码。但是,资产和测试资源之间有一些区别。部署代码时,我不希望发布测试文件。可以有多个测试资源,你说呢?在私有文件夹中,我只需要创建一个子文件夹“test”。您可以将meteor构建配置为不包含该目录,或者进行一些奇特的目录链接,以提供对测试资源的访问,而不将它们包含在构建中。