由于 .getContext() 未实现,单元测试引发错误

2024-04-03

我正在使用 Jest 为使用画布元素的组件编写测试。当我运行如下所示的测试时,我不断收到错误。

Error: Not implemented: HTMLCanvasElement.prototype.getContext (without installing the canvas npm package)

据我了解,Jest 使用 jsdom 进行测试,如果您安装了 canvas 或 canvas 预构建的软件包,那么 jsdom 与 canvas 兼容。

我已经尝试安装这些软件包中的每一个,但它们都没有解决该错误。我认为唯一可能出错的是 jsdom 找不到 canvas 或 canvas-prebuilt 包。有谁知道如何修复此错误或测试 jsdom 是否找到其他包?多谢!


我的团队正在使用create-react-app我们之前已经通过添加 npm 包解决了这个问题jest-canvas-mock。现在升级到react-scripts 3.4.1后,我们还必须向我们的src/setupTests.ts file:

import 'jest-canvas-mock';
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

由于 .getContext() 未实现,单元测试引发错误 的相关文章

随机推荐