Jest + React
2023-08-07 本文已影响0人
考拉程序媛
https://juejin.cn/post/7199865975277649978#heading-37
https://jestjs.io/zh-Hans/docs/snapshot-testing
基础语法
describe:
将多个相关的测试组合在一起的块
test:
将运行测试的方法,别名是it
expect:
断言
skip:
跳过describe.skip/test.skip
cleanup:
测试用例结束后,确保所有的状态能回归到最初状态
import renderer from 'react-test-renderer';
waitFor
1、快照测试
2、dom 结构测试
3、事件测试
4、function测试
5、异步测试
6、模拟属性和方法的返回结果
7、Drag
8、test.only
* [在项目中遇到的一些问题]
[1、执行 pnpm test 报错]
[2、ts-jest和jest版本未对应]
[3、toBeInTheDocument、toHaveClass等报错]
[9、Echarts 单元测试 canvas 报错]
[10、引入了第三方的组件CodeMirrorEditor写单测报错]
[11、Route && Link]
[6、由于单测的运行环境问题,当遇到某些方法没有的时候尝试mock下]
[7、多个单测文件缺失某一个方法,可以采用如下配置]
[4、Cannot find namespace 'NodeJS’]
[5、module 'tslib' cannot be found]
[8、The error below may be caused by using the wrong test environment;
Consider using the "jsdom" test environment]
Component Data:组件静态数据
Component Props:组件动态数据
User Interaction:用户交互,例如单击
LifeCycle Methods:生命周期逻辑
Store:组件状态值
Route Params:路由参数
输出的dom
外部调用的函数
对子组件的改变