我在 VS 2019 中使用 Node js。我想尝试将 Mocha 作为测试平台,所以我已经完成并安装了它并使其在基本意义上工作。我有一个简单的计算器 Node js 文件 (calc.js)。
我有另一个包含基本 hello world 测试的文件 (basictest.js)。如果我没有在 Calc.js 的“require”行中输入,那么这些测试(测试 1 和测试 2)将由 VS 2019 测试资源管理器发现并列出。
但是,我需要 require 行来访问计算器应用程序,所以当我将 require 行 var mycalc = require('./Scripts/Calc.js');
放在那里时,未发现测试。如果我尝试引用 path=..
,也会发生同样的事情。我是 node js 的新手,所以在引用另一个 js 文件中的函数时,我也可能会遗漏一些看似明显的东西。
basictest.js:
'use strict';
var assert = require('assert');
var mycalc = require('./Scripts/Calc.js');
describe('Test Suite 1', function () {
it('Test 1', function () {
assert.ok(true, "This shouldn't fail");
});
it('Test 2', function () {
assert.ok(1 === 1, "This shouldn't fail");
assert.ok(false, "This should fail");
});
});
最佳答案
好吧……我在网上搜索了几个小时后才弄明白,但没有成功。
这里的这一行并不完全正确: var mycalc = require('./Scripts/Calc.js');
由于某些原因,js 找到了 calc.js 文件和测试文件。但是,测试资源管理器无法发现测试。原因很简单,一个“.”我的猜测是 ./Scripts/将当前工作目录放在 Scripts 目录中,而 VS 无法找到测试。只需添加第二个“。”将其移回一个目录,以便可以找到测试。
正确代码: var mycalc = require('../Scripts/Calc.js');
关于javascript - Visual Studio 2019 中用于 Node js 应用程序的 Mocha 在引用或需要另一个文件时未在测试资源管理器中显示测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62055482/