单元测试 jest 从零开始搭建简易的单元测试

js、ts使用jest经相单元测试

很多教程,但是可能我这个更加通俗易懂,特写,勿喷。

安装依赖

cnpm install ts-jest jest  @types/jest --save-dev
复制代码

配置

1: 修改package.jsoin,在"scipts"添加"test": "jest", 如下

"scripts": {
    "start": "webpack-dev-server",
    "build": "webpack --mode production",
    "test": "jest"
},
复制代码

2: 添加一个jest.config.js文件

填入如下内容

module.exports = {
    "moduleFileExtensions": [
        "js",
        "ts",
        "tsx"
    ],
    "transform": {
        "^.+\\.tsx?$": "ts-jest",
    },
    "testMatch": [
        "<rootDir>/tests/**/*.ts?(x)"
    ]
}
复制代码

通过testMatch可以看到我们是检测 工程/tests/ 文件下的内容

一般是推荐在文件下面写测试文件,但是我比较喜欢在外面写。

然后添加一个测试文件

添加测试文件

这是我的目录,可以参考

编写测试

参考下QAQ 具体看官方文档 jestjs.io/docs/zh-Han…

import { getSTyleStr, id } from '../../src/utils/utils'

test('id', () => {
    expect(id(1)).toBe(1)
    expect(id(null)).toBe(null)
    expect(id(void 0)).toBe(void 0)
})
describe('css class utils getSTyleStr', () => {
    it('带大写的属性', () => {
        expect(getSTyleStr({backgroundColor: "rgba(216,52,52,1)"}))
        .toBe('background-color: rgba(216,52,52,1);')
    })
    it('单个属性', () => {
        expect(getSTyleStr({width: "30px", height: "30px"}))
        .toBe('width: 30px;height: 30px;')
    })
})
复制代码

源码查看: github.com/0123cf/layo…

查看效果

npm run test
复制代码

如果我们写错了,这时候

相关链接:

jestjs.io/docs/zh-Han…
github.com/0123cf/layo…

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值