如何使用npm测试进行调试

MAN*_*NOJ 12 mocha.js node.js

我正在使用VS Code.当我尝试在调试模式下运行测试时,它说describe不是一个函数.因此,只有我能够运行测试的方法是通过npm Note.

注意:我正在使用摩卡和柴.

var { describe,it, before, after } = require('mocha');
var assert = require('chai').assert;
var AuthAPI = require('../api/controllers/API.js');
     describe('getItem tests', function() {
    it('getItem ', function(done) {
      var API = new AuthAPI(clientId, PASS, List);

      api_jwt = API.getItem();
      assert.isNotEmpty(api_jwt);
    });
    )}
Run Code Online (Sandbox Code Playgroud)

Nik*_*kin 9

我认为你只需要为你的mocha测试另一个启动配置.

转到Visual Studio代码中的"调试"部分.

单击选择控件,然后选择"添加配置..."(或者只需单击齿轮图标并单击屏幕右侧的蓝色"添加配置..."按钮);

您应该能够在那里选择"Node.js:Mocha Tests",它会生成如下的启动配置:

{
    "type": "node",
    "request": "launch",
    "name": "Mocha Tests",
    "program": "${workspaceFolder}/node_modules/mocha/bin/_mocha",
    "args": [
        "-u",
        "tdd",
        "--timeout",
        "999999",
        "--colors",
        "${workspaceFolder}/test"
    ],
    "internalConsoleOptions": "openOnSessionStart"
},
Run Code Online (Sandbox Code Playgroud)

确保您的mocha测试位于describe文件夹中,并且您已在本地安装了mocha或自定义启动器配置.

假设你有一个测试./test(注意,它没有任何要求,因为mocha binary自己知道这个函数)

describe('test', () => {
  it('should work', () => {
  });
})
Run Code Online (Sandbox Code Playgroud)

启动新创建的"Mocha Test"配置,它应该返回一个成功的结果.

test
    ? should work
  1 passing (9ms)
Run Code Online (Sandbox Code Playgroud)

但是如果你真的需要以编程方式启动mocha测试,请查看这个官方维基页面https://github.com/mochajs/mocha/wiki/Using-mocha-programmatically.