【发布时间】:2016-08-11 06:53:01
【问题描述】:
我有一个类似下面的 API(GET 请求)
/vehicle/{:vehicleId}/model/{:modelNumber}
在用例中的转换如下所示
/vehicle/1000/model/1233
这将产生一个特定的 JSON 响应。
如何使用 supertest 测试上述具有多个参数的 GET API?
【问题讨论】:
标签: node.js mocha.js chai supertest
我有一个类似下面的 API(GET 请求)
/vehicle/{:vehicleId}/model/{:modelNumber}
在用例中的转换如下所示
/vehicle/1000/model/1233
这将产生一个特定的 JSON 响应。
如何使用 supertest 测试上述具有多个参数的 GET API?
【问题讨论】:
标签: node.js mocha.js chai supertest
这可能是也可能不是最好的方法,但它是一个有效的答案。
var endpoint = '/vehicle/{:vehicleId}/model/{:modelNumber}';
function testGet(vehID, modelNo, done) {
it('Test GET on vehicle ID = ' + vehID +
' and model number = ' + modelNo, function(done) {
// url is defined elsewhere or passed in as desired
var app = url + endpoint
.replace('{:vehicleId}', vehID)
.replace('{:modelNumber}', modelNo);
request(app)
.get()
// any other .set or .expect commands
.end(done);
});
})
您还可以使用 ES6 插值(反引号字符串),例如 `/vehicle/${vehicleId}/model/${modelNumber}`
【讨论】: