Chai 中文文档 下载 App

Node.js 环境安装 Chai - npm 安装与 package.json 配置

通过 npm 安装

在 Node.js 项目中,Chai 通过 npm 分发。标准做法是安装为开发依赖:

npm install chai --save-dev

npm 7+ 可以省略 --save-dev(安装默认写入 devDependencies):

npm install chai -D

package.json 建议配置

Chai 通常与测试运行器一起出现在 devDependencies 中:

{
  "scripts": {
    "test": "mocha test/**/*.test.js"
  },
  "devDependencies": {
    "chai": "^5.2.0",
    "mocha": "^10.7.0"
  }
}

关于版本号的选择:

CommonJS 引入方式

Node.js 默认的 CommonJS 模块系统:

const chai = require('chai');
const expect = chai.expect;
const assert = chai.assert;

// 只引入需要的接口
const { expect, should } = require('chai');

ESM / ES Modules 引入方式

Node.js 12+ 原生支持 ESM。在 package.json 中设置 "type": "module" 后:

import chai, { expect, assert } from 'chai';

// 或者命名导入
import { expect } from 'chai';

// 如果需要 should 风格,要显式调用初始化
import 'chai/register-should';

也可以用动态 import():

const { expect } = await import('chai');

验证安装成功

创建一个简单的验证脚本 verify-chai.js:

const { expect } = require('chai');

expect(1 + 1).to.equal(2);
expect('hello').to.be.a('string');

console.log('✓ Chai 安装正常');

运行:

node verify-chai.js

没有抛错就说明一切正常。故意写错一个断言试试错误信息:

expect(1 + 1).to.equal(3);
// AssertionError: expected 2 to equal 3

与 TypeScript 配合

Chai v4+ 自带了类型声明,无需额外安装 @types/chai:

import { expect } from 'chai';

describe('Array', () => {
  it('should pass', () => {
    expect([1, 2, 3]).to.have.lengthOf(3);
  });
});

下一环节

安装完成后,去 第一个断言 写第一条断言,或者直接跳到 搭配 Mocha 搭配 Mocha 跑完整的测试套件。