Node.js 在nodejs中使用(mocha,chai)进行错误单元测试
我在运行测试时出错:Node.js 在nodejs中使用(mocha,chai)进行错误单元测试,node.js,mocha.js,chai,should.js,Node.js,Mocha.js,Chai,Should.js,我在运行测试时出错:mochatest.js 这就是错误: const chaiHttp = require('chai-http'); const sinon = require('sinon'); const sinontest = require('sinon-test'); const test = sinontest(sinon); const chai = require('chai'); const accounts_controller = require('../control
mochatest.js
这就是错误:
const chaiHttp = require('chai-http');
const sinon = require('sinon');
const sinontest = require('sinon-test');
const test = sinontest(sinon);
const chai = require('chai');
const accounts_controller = require('../controllers/accountsController');
const tickets_controller = require('../controllers/ticketsController');
const gains_controller = require('../controllers/gainsController');
const config = require('./config');
const router = config.serverdev;
const { expect } = chai;
const accounts_spec = require('./accountsSpec');
//configuration of chai
chai.use(chaiHttp);
chai.should();
Account
create an admin account
Should create a new admin account:
Uncaught TypeError: Cannot read property 'should' of undefined
at /api/test/accountsSpec.js:41:17
at Test.Request.callback (node_modules/superagent/lib/node/index.js:728:3)
at ClientRequest.<anonymous> (node_modules/superagent/lib/node/index.js:647:10)
at TLSSocket.socketErrorListener (_http_client.js:432:9)
at errorOrDestroy (internal/streams/destroy.js:128:12)
at onwriteError (_stream_writable.js:463:3)
at onwrite (_stream_writable.js:484:7)
at internal/streams/destroy.js:60:7
at TLSSocket.Socket._destroy (net.js:673:5)
at TLSSocket.destroy (internal/streams/destroy.js:55:8)
at WriteWrap.onWriteComplete [as oncomplete] (internal/stream_base_commons.js:93:12)
您必须使用
chai http
插件并调用chai。应:
let chaiHttp = require('chai-http');
let should = chai.should();
chai.use(chaiHttp);
其次,您的错误是无法读取未定义的
的属性'should',因此res
是未定义的
。请检查您是否创建了成功帖子(没有错误)您必须使用chai http
插件并调用chai。应该:
let chaiHttp = require('chai-http');
let should = chai.should();
chai.use(chaiHttp);
其次,您的错误是无法读取未定义的
的属性'should',因此res
是未定义的
。请检查您是否创建了成功帖子(无err
)您是否尝试检查.end中提供的回调中的“err”参数?库通常对错误优先回调所做的是,如果异步操作中发生错误,它们会在结果中发送一些非null错误和null,但是,不可能将该结果作为未定义的结果提供,这就是“res.should”可能导致此错误的原因代码>它给了我:错误:write EPROTO 140231124449088:错误:1408F10B:SSL例程:ssl3_get_record:错误的版本号:../deps/openssl/openssl/SSL/record/ssl3_record.c:332:请选择任何解决方案?尝试添加process.env['NODE\u TLS\u REJECT\u UNAUTHORIZED']=0代码>在代码的最开始处。警告:这将导致安全漏洞。嘿,请问这段代码是干什么的?您是否尝试过检查.end中提供的回调中的“err”参数?库通常对错误优先回调所做的是,如果异步操作中发生错误,它们会在结果中发送一些非null错误和null,但是,不可能将该结果作为未定义的结果提供,这就是“res.should”可能导致此错误的原因代码>它给了我:错误:write EPROTO 140231124449088:错误:1408F10B:SSL例程:ssl3_get_record:错误的版本号:../deps/openssl/openssl/SSL/record/ssl3_record.c:332:请选择任何解决方案?尝试添加process.env['NODE\u TLS\u REJECT\u UNAUTHORIZED']=0代码>在代码的最开始处。警告:这将导致一个安全漏洞。嘿,请问这是什么代码?嗨,我有这个:chai.use(chaiHttp);chai.should()但是当你说的时候,让should=chai.should()代码>我什么时候可以把should变量放在代码中?实际上,你不需要把should
变量放在任何地方。调用chai.should
is ough你能检查err
变量吗,也许你的帖子有问题所以res
isundefined
它给出:错误:write-EPROTO 140231124449088:Error:1408F10B:SSL例程:ssl3\u获取记录:错误的版本号:../deps/openssl/SSL/SSL/record/ssl3\u record.c:332:有什么解决方案吗,我有这个:chai.use(chaiHttp);chai.should()但是当你说的时候,让should=chai.should()代码>我什么时候可以把should变量放在代码中?实际上,你不需要把should
变量放在任何地方。调用chai.should
is ough你能检查err
变量吗,也许你的帖子有问题所以res
isundefined
它给出:错误:write-EPROTO 140231124449088:Error:1408F10B:SSL例程:ssl3\u获取记录:错误的版本号:../deps/openssl/SSL/SSL/record/ssl3\u record.c:332:有什么解决方案吗?