Jest 是当下最支流的前端测试框架
首先初始化ts环境
yarn add typescript --dev
npx tsc --init
第二步:装置ts下的jestyarn add jest @types/jest --dev
第三步:新建tests文件夹
tests/index.spec.ts
it('init',()=>{
expect(true).toBe(true)
})
此处记住要在tsconfig.json外面批改配置 "types": ["jest"],
第四步
package.json增加
"scripts": {
"test":"jest"
},
执行npm run test
失去
接下来解决导入模块的问题
index.ts
export function add (a,b){
return a+b
}
index.spec.ts
import { add } from "../index"
it('init',()=>{
expect(add(2,3)).toBe(5)
})
执行npm run test
报错
关上https://www.jestjs.cn/docs/getting-started
配置 Babel
npm install --save-dev babel-jest @babel/core @babel/preset-env
在我的项目的根目录下创立 babel.config.js ,通过配置 Babel 使其可能兼容以后的 Node 版本。
babel.config.js
module.exports = {
presets: [['@babel/preset-env', {targets: {node: 'current'}}]],
};
应用 Typescript
通过 babel 来反对 Typescript
通过 Babel,Jest 可能反对 Typescript。首先要确保你遵循了上述 应用 Babel 指引。接下来装置 @babel/preset-typescript 插件:
npm install --save-dev @babel/preset-typescript
babel.config.js
module.exports = {
presets: [
['@babel/preset-env', {targets: {node: 'current'}}],
'@babel/preset-typescript',
],
};
最初执行npm run test
初步实现在ts环境下的jest单测
发表回复