【问题标题】:Mocha runs correctly, but shows undefined摩卡运行正常,但显示未定义
【发布时间】:2012-11-06 08:04:01
【问题描述】:

我使用mocha 测试我的nodejs 代码,测试运行正常,但是当我使用mocha test.js 运行测试时,我传递给describe 的字符串似乎没有显示。

代码如下:

var assert = require("should");
describe("FrontEndTest", function(){
    describe('websocket establish connection', function(){
        it('should establish connection correctly', function(done){
            var res;
            var wsClient = create_ws_client('ws://127.0.0.1:9876','brain_burst');
            wsClient.on('connect', function(connection){
                res = true;
                res.should.be.true;
                done();
            });
            wsClient.on('connectFailed', function(error){
                res = false;
                res.should.be.true;
                done();
            });
            console.log(res);
        });
        it('should disconnected by server.(also, that may crash server if there is not a protocol validation)', function(done){
            var res;
            var wsClient = create_ws_client('ws://127.0.0.1:9876');
            wsClient.on('connect', function(connection){
                res = true;
                res.should.be.false;
                done();
            });
            wsClient.on('connectFailed', function(error){
                res = false;
                res.should.be.false;
                done();
            });
        });
    });
});

mocha 命令的结果显示:

未定义․․

✔ 2 个测试完成(68 毫秒)

既然我已经传递了一个字符串,为什么它显示undefined

【问题讨论】:

    标签: node.js testing mocha.js should.js


    【解决方案1】:

    不是下面这行导致的吗?

    console.log(res);
    

    【讨论】:

    • 是的,这是因为这个输出没有给哪个变量赋值。谢谢,朋友。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-29
    • 1970-01-01
    • 1970-01-01
    • 2015-09-25
    相关资源
    最近更新 更多