简单的node单测

  1. 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的问题,默认jest使用的是commonjs。

  1. npm install jest -g
  2. npm install jest
  3. jest --init 初始化jest config文件 选择node环境
  4. 添加package.json一列:"type": "module"
  5. 添加package.json的scripts一列: "node --experimental-vm-modules ./node_modules/.bin/jest",告诉node 我用esm的方式运行jest。
  6. 由于jest默认的path是在tests目录下。需要建立目录algorithm/__tests__。建algorithm/__tests__/sum.spec.js添加上面的单测。
  7. npm run test。查看结果

总结:

还是一个比较简单的单测demo,起因是平时个人写的比较少而且最近也在刷算法题,之后会尝试多使用这样的模式。

还有更多扩展:

  1. ts配合
  2. 如何watch
  3. jest配合browser
  4. 配合nestjs如何写单测,包括hijack数据库。

你可能感兴趣的:(简单的node单测)