日常开发的时候,常常性须要对某个组件进行单元测试。而VSCode提供了调试的node程序的功能,就但愿直接在源码页面上调试,这样更加方便。node
{ "version": "0.2.0", "configurations": [ { "name": "Run mocha", "type": "node", "request": "launch", "program": "${workspaceRoot}/node_modules/mocha/bin/_mocha", "stopOnEntry": false, "args": [ "--no-timeouts", "--require", "./testHelper.js", "--compilers", "js:babel-core/register", "--recursive" ], "cwd": "${workspaceRoot}/", "runtimeExecutable": null, "env": { "NODE_ENV": "testing" } } ] }
testHelper.js:npm
require('./registerBabel');
registerBabel.js:json
require('babel-core/register')({ // babel options // ... // 在这里能够处理某些特殊的须要,好比对`node_moduels`下某个组件启用babel解析等等 });
抽离这两个文件是为了让正式程序也直接能够调用registerBabel.js文件。babel
npm i babel-core -D
而后再你想打断点的位置 打上断点,点击run 就能够了、。单元测试
不过在处理过程当中,发现断点的地方每每与实际不相符,这是由于编译后的源码与实际源码文件的行不一致形成的。只须要在.babelrc文件内加上一个属性便可:测试
{ "retainLines": true }