1、初始化TypeScript工程
npm i -D typescript
生成TypeScript工程配置
tsc --init
代码目录
test
└── src
├── sum.test.ts
└── sum.ts
sum.ts
export function add(a: number, b: number): number {
return a + b;
}
sum.test.ts
import { add } from './sum';
test('add function', () => {
const result = add(1, 2);
expect(result).toBe(3);
});
2、配置Jest
npm i -D jest ts-jest @types/jest
npm i -D ts-node
生成jest配置文件
npx jest --init
选择生成TypeScript类型配置文件jest.config.ts
,设置preset
为ts-jest
,按需设置其他参数:
/**
* For a detailed explanation regarding each configuration property, visit:
* https://jestjs.io/docs/configuration
*/
import type {Config} from 'jest';
const config: Config = {
...
// A preset that is used as a base for Jest's configuration
preset: 'ts-jest',
testEnvironment: "node",
...
};
export default config;
执行测试:
npx jest
3、创建 package.json
npm init
package.json
{
...
"scripts": {
"test": "jest"
},
...
}
4、VS Code插件
vscode-jest Works out of the box Jest based testing in VS Code.
vscode-jest-runner Simple way to run or debug one or more tests from context menu, codelens or command plalette.
5、相关链接
[1] https://kulshekhar.github.io/ts-jest/docs/getting-started/options
[2] https://jestjs.io/docs/configuration
[3] https://github.com/jest-community/awesome-jest
[4] npm 中文文档
[5] yarn 中文网站