- Nodejs 如何使用import語法做js文件的單測。 2. 如何配合jest
我寫了個sum.js。
文件路徑algorithm/sum.js,
export default function sum(a, b) {
return a + b
}
我希望跑單測,
import sum from '../sum'
test('sum function correct', () => {
expect(sum(1, 2)).toBe(3)
})
如果你是原始的repo,先npm init -y。這里我們要考慮esm的問題,默認(rèn)jest使用的是commonjs。
- npm install jest -g
- npm install jest
- jest --init 初始化jest config文件 選擇node環(huán)境
- 添加package.json一列:
"type": "module" - 添加package.json的scripts一列:
"node --experimental-vm-modules ./node_modules/.bin/jest",告訴node 我用esm的方式運行jest。 - 由于jest默認(rèn)的path是在tests目錄下。需要建立目錄
algorithm/__tests__。建algorithm/__tests__/sum.spec.js添加上面的單測。 - npm run test。查看結(jié)果
總結(jié):
還是一個比較簡單的單測demo,起因是平時個人寫的比較少而且最近也在刷算法題,之后會嘗試多使用這樣的模式。
還有更多擴(kuò)展:
- ts配合
- 如何watch
- jest配合browser
- 配合nestjs如何寫單測,包括hijack數(shù)據(jù)庫。