【问题标题】:Mocha Chai source file path length required in spec file规范文件中所需的 Mocha Chai 源文件路径长度
【发布时间】:2016-01-26 04:46:08
【问题描述】:

刚开始玩 Mocha Chai,但找不到如何简化 spec 文件中使用的源文件的路径。

我们有项目 src 和测试目录层次结构。在规范文件中,有一个看起来像这样的要求:
var somecode = require('../../../src/a/fun/lib/somecode');

我不能有 $srcpath 和 $testpath 吗? var somecode = require('$srcpath/a/fun/lib/somecode');

$srcpath/$relativepath/somecode 更好。

注意:测试是递归运行的。

【问题讨论】:

    标签: mocha.js chai


    【解决方案1】:

    在我的所有测试文件中,我使用以下内容从项目的根目录加载模块:

    describe('...', function() {
        ...
        var path = require('path');
        var basedir = path.resolve('./');
    
        var moduleToTest = require(path.resolve(basedir, 'lib/path/to/moduletotest'));
        ...
    

    对于与当前规范相关的路径,只需将 basedir 替换为 __dirname

    【讨论】:

    • 这很有帮助,因为我不知道 require('path')。拿你写的,我正在试验:var srcdir = path.resolve('./src'); var testdir = path.resolve('./test'); var relativeToTestDir = path.relative(testdir, __dirname); var relativeToSrcDir = path.resolve(srcdir, relativeToTestDir); var srcfile = path.resolve(relativeToSrcDir, "app.js"); then calling: myapp = require(srcfile);
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-09
    • 2010-09-22
    • 2016-11-10
    • 1970-01-01
    • 2017-06-03
    • 1970-01-01
    相关资源
    最近更新 更多