如何给可视化组件编写单元测试
起因
有个业务方用到了我们的一个组件,用的是比较老的版本;该组件目前已经经过了N次迭代了,然后他们有个需求是之前老组件不具备的,在新版本中已经支持了,因此我想让他们直接用最新版的组件替代老组件。结果我提供了代码后,他们嵌入自己的业务中,问题不断,导致体验非常差。
究其原因,是因为我们没有对组件进行单元测试,每次迭代的时候,很多情况都没去验证,导致最终提供的组件代码是非常不可靠的。因此我想对组件进行单元测试,来解决这类问题。
其他知名组件库的单元测试方案
ECharts
从package.json中,可以看到ECharts是采用的jest进行单元测试的:
1 | |
可视化相关测试的思路
- 渲染无关部分做单元测试
- 渲染相关部分做 UI 测试
- 测试不同配置项设置下的渲染一致性
- 测试不同版本的渲染一致性
- 查看 Canvas 图像与操作栈 diff 分析失败原因
参考资料
羡澈:前端可视化的测试实践: