创建一个 JavaScript 项目
- 导航进入 JavaScript 项目目录。

- 在地址栏中输入 cmd 后按回车打开命令行窗口,然后输入 npm init -y 命令初始化一个
package.json
文件,后续会用到。
安装 Mocha测试框架 和 Chai断言库
- 在项目目录中打开的命令行窗口下,执行以下命令然后会在当前项目中安装 Mocha 测试框架和Chai断言库。
- npm install --save-dev mocha chai
- 在项目中执行以下命令创建一个测试文件,通常命名为
test.js
或以 .test.js
结尾。
- echo. > test.js
- 然后输入 code . 命令在 VS Code 中打开当前JS目录,并在test.js文件中输入测试内容。
- 在 Mocha 中,测试用例是由
describe
和 it
构成的。
describe
用于创建测试套件,it
用于编写具体的测试用例。
配置 VS Code 设置
- 在 VS Code 中,按
Ctrl+Shift+P
键后,在弹出的命令面板中输入:打开工作区设置。
- 然后会在当前目录下生成
.vscode/settings.json
配置文件,在这个文件中,添加以下配置。
"mocha.files"
是一个 Mocha 扩展提供的配置项,用于指定要运行的测试文件的匹配模式。
- 如果有多个测试文件,可以使用通配符来匹配它们。例如,如果所有的测试文件都以
.test.js
结尾,可以使用 "mocha.files": "./**/*.test.js"
,这样就会匹配项目中所有以 .test.js
结尾的文件。
运行测试
- 在 VS Code 中,打开集成终端(Integrated Terminal)并运行 npx mocha 命令。

- 或者,可以使用 VSCode 的任务(Tasks)来运行测试。在项目根目录下创建一个
.vscode/tasks.json
文件,并添加类似以下的配置:
"label"
是任务的显示名称,可以根据需要自定义。
"type"
是任务类型,这里是 "shell"
,表示使用命令行 shell。
"command"
是要运行的命令,这里是 "npm"
。
"args"
是传递给命令的参数,这里是 ["test"]
,表示运行 npm 的 test 脚本。可以根据项目和测试框架进行调整。
"group"
指定任务的分组,这里是 "test"
,表示这是一个测试任务,"isDefault": true
表示这是默认任务。
- 检查
package.json
文件中的 "test" 脚本,将其值修改为 "mocha"。
- 按
Ctrl+Shift+P
打开命令面板,然后输入 "Tasks: Configure Default Build Task",点击下面内容。
- 选择 Run JavaScript Tests 作为默认生成任务,也就是在
.vscode/tasks.json
文件配置的"label"
字段名。(确保选择的是用于运行测试的任务)
- 按
Ctrl+Shift+P
打开命令面板,在命令面板中输入 "Tasks: Run Build Task",然后点击该命令右侧的齿轮按钮。
- 可以看到使用 Ctrl+Shift+B 命令也可以运行任务,这里点击齿轮后,双击该项修改快捷键方式为 Ctrl+R 命令。

- 最后按 Ctrl+R 键就可以运行测试咯!!!
文件清单
- .vscode/settings.json文件内容
javascript
复制代码
{
// 这会告诉 Mocha 在当前项目目录下寻找 test.js 文件来运行测试。
"mocha.files": "./test.js"
}
- .vscode/task.json文件内容
javascript
复制代码
{
"version": "2.0.0",
"tasks": [
{
"label": "Run JavaScript Tests",
"type": "shell",
"command": "npm",
"args": [
"test"
],
"group": {
"kind": "build",
"isDefault": true
},
"problemMatcher": []
}
]
}
- package.json文件内容
javascript
复制代码
{
"name": "mocha_demo",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "mocha"
},
"keywords": [],
"author": "",
"license": "ISC",
"devDependencies": {
"chai": "^4.3.10",
"mocha": "^10.2.0"
}
}
- test.js文件内容
javascript
复制代码
// test.js
const assert = require('chai').assert;
describe('MyTestSuite', function () {
it('Mocha 安装成功', function () {
assert.equal(1, 1);
});
});