Dmi*_*iui 5 javascript testing dom canvas jestjs
无法使用画布运行玩笑测试。我有与画布、上下文、dom 等一起使用的函数。如何为此正确设置 jest?
我曾尝试使用 jest-canvas-mock,但如何正确安装它?
包.json
"devDependencies": {
***
"jest": "^24.8.0",
"jsdom": "^15.1.1",
***
},
"dependencies": {
***
},
"jest": {
"setupFiles": [
"jest-canvas-mock"
]
}
}
Run Code Online (Sandbox Code Playgroud)
开玩笑的配置文件
module.exports = {
roots: [
'<rootDir>/src',
],
testRegex: '(/__tests__/.*|(\\.|/)(test|spec))\\.[jt]sx?$',
moduleFileExtensions: [
'js',
],
};
Run Code Online (Sandbox Code Playgroud)
控制台日志:
TypeError: Cannot set property 'imageSmoothingEnabled' of null
15 | const canvas = document.createElement('canvas');
16 | const context = canvas.getContext('2d');
> 17 | context.imageSmoothingEnabled = false;
| ^
Run Code Online (Sandbox Code Playgroud)
尝试将jest-canvas-mock库安装到 package.json 中。
npm install --dev jest-canvas-mock
Run Code Online (Sandbox Code Playgroud)
然后将其导入到您的测试文件中。
import 'jest-canvas-mock'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2771 次 |
| 最近记录: |