伙计们,我如何在 POST 请求中 stub 参数,例如这里是函数的一部分
gridCalculator : function(req,res){
// calculation logic
var options=[];
options.dateFirstLicensed = req.param('DateFirstLicensed');
options.dateFirstInsured = req.param('DateFirstInsured');
options.claimList = req.param('ClaimList');
options.suspenList = req.param('SuspenList');
...etc
如果我这样做
it('grid Calculate', function (done) {
var req = {
'DateFirstLicensed' : "01-01-2010",
'DateFirstInsured': "01-01-2011",
'ClaimList': ['05-03-2012'],
'SuspenList': [{'StartDate':'05-03-2012','EndDate':'05-05-2012' }]
};
gridCalculator.gridCalculator(req,function (err, result) {
result.should.exist;
done();
});
});
我收到错误,因为我只是传递一个对象而不是 POST 请求
TypeError: req.param is not a function
最佳答案
我想到了两个选项(可能还有更多):
选项 1:自己定义 param
函数:
it('grid Calculate', function (done) {
var params = function(param) {
switch (param) {
case 'DateFirstLicensed':
return "01-01-2010";
case 'DateFirstInsured':
... //do the same for all params
}
};
var req = {
param: params
};
gridCalculator.gridCalculator(req,function (err, result) {
result.should.exist;
done();
});
});
选项 2:使用类似 supertest 的工具创建对服务器端点的调用。
关于javascript - POST 请求中的测试和 stub 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38813702/