NodeJs 和 Mocha 测试响应
NodeJs and Mocha testing the response
是否可以使用 Mocha 测试 NodeJs 的响应?
使用 $http 从 AngularJs 向 NodeJs 发出 GET 请求。请求成功后调用此函数:
var successCallback = function (data) {
var SUCCESS_STATUS_CODE = 200;
response.set('Content-Type', 'application/json');
response.send({
statusCode: SUCCESS_STATUS_CODE,
data: data
});
};
我曾尝试使用 Sinon 来监视该函数并使用 Mocha 来检查请求,但我无法让它们工作。编写测试以检查 "response.send" 的输出的最佳方法是什么?
要测试来自 Node.JS 的 HTTP 调用的响应,您可以使用 superagent
创建文件夹并安装在 mocha 和 superagent 中:
$ npm install superagent
$ npm install mocha
然后使用以下代码创建一个名为 test.js 的文件:
var request = require('superagent');
var assert = require('assert');
var URL = 'https://www.google.com.bo/#q=nodejs';
describe('Testing an HTTP Response', function () {
it('should have a status code 200', function (done) {
this.timeout(9000);
request
.get(URL)
.end(function (err, response) {
assert.equal(response.status, 200);
done();
});
});
});
然后你可以 运行 它与 mocha
$ mocha
是否可以使用 Mocha 测试 NodeJs 的响应?
使用 $http 从 AngularJs 向 NodeJs 发出 GET 请求。请求成功后调用此函数:
var successCallback = function (data) {
var SUCCESS_STATUS_CODE = 200;
response.set('Content-Type', 'application/json');
response.send({
statusCode: SUCCESS_STATUS_CODE,
data: data
});
};
我曾尝试使用 Sinon 来监视该函数并使用 Mocha 来检查请求,但我无法让它们工作。编写测试以检查 "response.send" 的输出的最佳方法是什么?
要测试来自 Node.JS 的 HTTP 调用的响应,您可以使用 superagent
创建文件夹并安装在 mocha 和 superagent 中:
$ npm install superagent
$ npm install mocha
然后使用以下代码创建一个名为 test.js 的文件:
var request = require('superagent');
var assert = require('assert');
var URL = 'https://www.google.com.bo/#q=nodejs';
describe('Testing an HTTP Response', function () {
it('should have a status code 200', function (done) {
this.timeout(9000);
request
.get(URL)
.end(function (err, response) {
assert.equal(response.status, 200);
done();
});
});
});
然后你可以 运行 它与 mocha
$ mocha