【问题标题】:How to get express app variable in a mocha test case?如何在 mocha 测试用例中获取 express app 变量?
【发布时间】:2014-02-25 09:25:55
【问题描述】:

我需要在服务器端做一些 http 测试。所以我正在使用摩卡咖啡和超级测试。 但是我有一个问题,如何获取超测需要的app变量?

我正在使用 mean.io 项目结构。所以这个 gruntfile 已经就位了。 它配置 mocha 测试如下:

    mochaTest: {
        options: {
            reporter: 'spec',
            require: 'server.js'
        },
        src: ['test/mocha/**/*.js']
    },

在 server.js 文件的末尾,它导出了 express 应用:

// Start the app by listening on <port>
var port = process.env.PORT || config.port;
app.listen(port);
console.log('Express app started on port ' + port);

// Initializing logger
logger.init(app, passport, mongoose);

// Expose app
exports = module.exports = app;

如何在 mocha 测试用例中获取所需的导出应用程序? 我不知道。

【问题讨论】:

    标签: unit-testing express mocha.js


    【解决方案1】:

    您只需拨打var app = require( 'my/path/to/app.js' );即可获得它

    【讨论】:

    • server.js会被执行两次吗? server.js 执行两次会怎样?
    • 是的。它会。所以要在 mocha 中获取应用实例,你应该先停止 server.js,或者你可以在另一个端口上运行应用程序。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-12-16
    • 1970-01-01
    • 2015-05-11
    • 2015-06-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多