首页 > 解决方案 > 在初始化变量之前评估带有模板文字的测试名称

问题描述

我对这种结构进行了测试:

for (let inputFile of inputFiles) {
    describe(`Testing ${inputFile}`, function () {
        let var1, var2, var3; //variables initialized in before hook

        before(async function () {
            //initializing var1, var2 and var3
        });


        it(`Result ${var1} matches something`, function (done) {
            let someVariable = 4;
            assert.equal(someVariable, var1)
            done();
        });
    });
}

测试根据在 before 钩子中初始化的变量给出正确的成功或失败状态,但上面代码中的测试名称显示为"someVariable is undefined",即使在提供给它的回调函数的范围内( ) var1 已经初始化。我猜 mocha 在调用任何钩子之前会评估所有测试名称。

你知道我怎么能解决这个问题吗?

标签: javascriptnode.jsmocha.js

解决方案


推荐阅读