从三个角度分析vitest
他能做什么? 为什么要使用他? 使用它的优势是什么?
vitest官网cn.vitest.dev/
1.vitest能做什么
从官网介绍说这是一个单元测试框架
,大家听到有测试两个字觉得这个是测试同学写的东西,其实这个东西是帮助我们开发去测试代码。
例如我们在平时开发中所写的一段代码,或者一个函数,一个组件,我们为了确保所写的函数以及组件所预期的结果和我们开发者所期望的一样,我们会进行代码测试,可以手动模拟一些数据去测试,现在有了单元测试框架可以更友好的帮助我们去测试这些函数以及组件。
max([1,2,3,4]).toBe(4)
复制代码
例如上面这一段代码我们有一个函数max寻找最大值 期望的值是4,执行完返回4便符合我们的预期,如果返回其他值便不符合我们的预期,这种例子就可以使用单元测试完成。
2.为什么要使用vitest
大部分的开源库,都会使用一款单元测试工具,去测试所编写的逻辑以及代码,符合预期,以及测试各种边缘情况都满足,才会选择发布该库。
例如Vue react等都使用了单元测试框架
第二个原因就是如果你从A公司换到B公司,B公司做了单元测试,你便可以运行该脚本,从而观察输入输出,更快理解业务逻辑,防止屎山代码。
3.vitest的优势是什么
单元测试框架有很多,老牌jest
框架相信大部分同学都是用过jest
,vitest和jest方法大致相同,迁移起来也是很快,那vitest的优势是什么
我觉得第一点 vitest天然支持ts 配置过jest 支持 ts的同学会有感觉, 第二点 类似于rust的源码内联测试
, 第三点 支持测试vue react 等组件, 第四点 智能热更新HMR, 第五点 多线程并发运行。