首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >ReferenceError:Description未定义

ReferenceError:Description未定义
EN

Stack Overflow用户
提问于 2018-02-02 05:26:47
回答 2查看 0关注 0票数 0

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

代码语言:javascript
复制
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);

func1.js

代码语言:javascript
复制
    var testend = function(req, res) {
           serialPort.write("1", function(err, results) {
           serialPort.write("2" + "\n", function(err, results) {
           });
      });
   });
    exports.testend = testend;

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

代码语言:javascript
复制
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();
                });
        });
});

但是当我运行node test.js我得到这个错误:

代码语言:javascript
复制
describe('Account',function(){
^

ReferenceError:describe没有定义
    在对象。(/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

我该如何解决这个问题?

EN

回答 2

Stack Overflow用户

发布于 2018-02-02 13:38:22

假设你正在测试通过mocha,你必须运行你的测试使用mocha命令而不是node可执行文件。

所以,如果你还没有,请确保你这样做npm install mocha -g。然后运行mocha你的项目的根目录。

票数 0
EN

Stack Overflow用户

发布于 2018-02-02 14:55:34

要运行node / npm测试而不在全局安装Mocha,可以这样做:

•将Mocha本地安装到你的项目(npm install mocha --save-dev

•可选择安装断言库(npm install chai --save-dev

在你的package.json,添加一个部分scripts和目标的摩卡二进制

代码语言:javascript
复制
"scripts": {
  "test": "node ./node_modules/mocha/bin/mocha"
}

把你的spec文件放到你/test的根目录下的一个目录中

•在你的规格文件中,导入断言库

代码语言:javascript
复制
var expect = require('chai').expect;

然后从你的项目根目录运行脚本:

代码语言:javascript
复制
npm test
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100007298

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档