Meteor集成测试,在velocity'她的镜子上有茉莉花
Meteor integration testing, rest api endpoint in velocity's mirror with jasmine
我正在尝试为使用meter编写的API端点创建一个测试。我用的是茉莉花和速度。它打算在同一个项目中运行,这就是我使用它们的原因。当我试图运行测试并检查端点中的数据时,问题就出现了。我在mongodb副本中有一个引导的数据集,当我发布它时,它与本地应用程序中引导的数据不匹配。下面是示例代码:
Jasmine.onTest(function () {
describe('RestApi.MyMethod', function () {
it('Expects to fail because it lacks of valid parameters', function () { /*but it fails because of the user can't be found in the real app*/
var response = "";
var userId = Meteor.users.findOne({"username": "MyUser"})._id;
try {
response = Meteor.http.call(
"POST",
"http://localhost:3000/api/myMethod",
{
data: {
"userId":
},
timeout: 1000
}
);
} catch(error){
expect(error.message.indexOf("failed [400]")).toBeGreaterThan(-1);
expect(error.message.indexOf("Invalid parameters provided")).toBeGreaterThan(-1);
}
expect(response).toBe('');
});
});
});
我认为它应该指向镜像的rest api。有办法做到这一点吗?我将localhost:3000更改为localhost:5000,但它不起作用。如何检查镜像的端口?提前感谢!
使用Meteor.absoluteUrl
而不是硬编码端口。
在你的代码中,这样做:
response = Meteor.http.call(
"POST",
Meteor.absoluteUrl("api/myMethod"), // this bit has changed.
{
data: {
"userId":
},
timeout: 1000
}
);
当测试运行时,您的测试镜像将动态生成一个绝对url。
相关文章:
- 迷你$provider注入茉莉花和角
- 茉莉花宝石-耙茉莉花:ci dons't运行测试
- 茉莉花节点测试;t正在运行
- Meteor集成测试,在velocity'她的镜子上有茉莉花
- 如何制作一个在现实世界中看起来像镜子的屏幕
- 我可以把茉莉花规格报告器的输出写入文件吗
- 茉莉花 - 未调用方法
- 在测试间谍的上下文中,存根和mock之间有什么区别?(茉莉花)
- 使用茉莉花测试木偶视图和车把模板
- 使用茉莉花测试主干关系模型
- JQuery/骨干删除在茉莉花中不起作用
- 茉莉花和元素的位置
- 量角器 iOS 自动化:茉莉花规范超时.重置 Web 驱动程序控制流
- 茉莉花Maven插件包括我的脚本使用文件协议
- 运行茉莉花测试用例
- 茉莉花钟的工作原理
- 茉莉花节点没有输出
- 茉莉花与iframe固定
- 分离“;上下文”;以及“;触发器”;茉莉花
- 为什么这个茉莉花节点测试没有失败