javascript – 当我运行摩卡测试我总是得到错误:connect ECONNREFUSED

我试图运行我的应用程序测试与摩卡和最高,但我总是得到错误:connect ECONNREFUSED.

app.js代码

var express = require('express'),mongoose = require('mongoose'),fs = require('fs'),config = require('./config/config');

mongoose.connect(config.db);
var db = mongoose.connection;
db.on('error',function () {
  throw new Error('unable to connect to database at ' + config.db);
});

var modelsPath = __dirname + '/app/models';
fs.readdirsync(modelsPath).forEach(function (file) {
  if (file.indexOf('.js') >= 0) {
    require(modelsPath + '/' + file);
  }
});

var app = express();

require('./config/express')(app,config);
require('./config/routes')(app);

app.listen(config.port);

exports.app = app;
console.log('LISTEN ON http://localhost:3000/')

test.js代码

var should = require('should'); 
var assert = require('assert');
var request = require('supertest');
var mongoose = require('mongoose');
var app = require('../../../app').app;

describe('Categories',function() {
    it('- POST is testing',function(done) {
        request(app)
        .post('http://localhost:3000/categories')
        .send({title:'test',text:'test'})
        .end(function(e,res) {
            console.log(e,res);
        });
    });
});

测试输出

LISTEN ON http://localhost:3000/


  Categories
{ [Error: connect ECONNREFUSED]
  code: 'ECONNREFUSED',errno: 'ECONNREFUSED',syscall: 'connect' } undefined
    1) - POST is testing


  0 passing (2s)
  1 failing

Done,but with warnings.

你能给出任何线索为什么发生吗?

先谢谢你!

Topicus

解决方法

问题是路径.这个“/ categories”替换“localhost:3000 / categories”一切正常.

工作实例:

describe('Categories',function(done) {
        request(app)
        .post('/categories')
        .send({title:'test',res);
        });
    });
});

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...