ReferenceError:describe 未定义 NodeJs [英] ReferenceError: describe is not defined NodeJs

查看:33
本文介绍了ReferenceError:describe 未定义 NodeJs的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试定义一些端点并使用 nodejs 进行测试.在 server.js 我有:

var express = require('express');var func1 = require('./func1.js');无功端口 = 8080;var server = express();服务器.配置(功能(){server.use(express.bodyParser());});server.post('/testend/', func1.testend);

func1.js中:

 var testend = function(req, res) {serialPort.write("1", function(err, results) {serialPort.write("2" + "
", function(err, results) {});});});export.testend = testend;

现在在 test.js 我试图使用这个端点:

var should = require('should');var assert = require('assert');var request = require('supertest');var http = require('http');var app = require('./../server.js');无功端口 = 8080;描述('帐户',函数(){var url = "http://localhost:" + port.toString();它('测试开始',功能(完成){请求(url).post('/testend/')//end 处理响应.end(function(err, res) {如果(错误){抛出错误;}res.body.error.should.type('string');完毕();});});});

但是当我运行 node test.js 时,我收到此错误:

<前>描述('帐户',函数(){^参考错误:未定义描述在对象.(/test/test.js:9:1)在 Module._compile (module.js:456:26)在 Object.Module._extensions..js (module.js:474:10)在 Module.load (module.js:356:32)在 Function.Module._load (module.js:312:12)在 Function.Module.runMain (module.js:497:10)启动时 (node.js:119:16)在 node.js:906:3

我该如何解决这个问题?

解决方案

假设您正在通过 mocha 进行测试,您必须使用 mocha 命令而不是 node 可执行文件来运行测试.

因此,如果您还没有,请确保您执行 npm install mocha -g.然后只需在项目的根目录中运行 mocha.

I am trying to define some endpoints and do a test using nodejs. In server.js I have:

var express = require('express');
var func1 = require('./func1.js');
var port = 8080;
var server = express();

server.configure(function(){
  server.use(express.bodyParser());
});

server.post('/testend/', func1.testend);

and in func1.js:

    var testend = function(req, res) {
           serialPort.write("1", function(err, results) {
           serialPort.write("2" + "
", function(err, results) {
           });
      });
   });
    exports.testend = testend;

Now in test.js I am trying to use this endpoint:

var should = require('should');
var assert = require('assert');
var request = require('supertest');
var http = require('http');
var app = require('./../server.js');
var port = 8080;

describe('Account', function() {
        var url = "http://localhost:" + port.toString();
        it('test starts', function(done) {
                request(url).post('/testend/')
                // end handles the response
                .end(function(err, res) {
                        if (err) {
                                throw err;
                        }
                        res.body.error.should.type('string');
                        done();
                });
        });
});

But when I run node test.js I am getting this error:

describe('Account', function() {
^

ReferenceError: describe is not defined
    at Object. (/test/test.js:9:1)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Function.Module.runMain (module.js:497:10)
    at startup (node.js:119:16)
    at node.js:906:3

How can I fix the issue?

解决方案

Assuming you are testing via mocha, you have to run your tests using the mocha command instead of the node executable.

So if you haven't already, make sure you do npm install mocha -g. Then just run mocha in your project's root directory.

这篇关于ReferenceError:describe 未定义 NodeJs的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆