Lun*_*Lun 8 javascript testing node.js svelte vitest
import { sveltekit } from '@sveltejs/kit/vite';
const config = {
plugins: [sveltekit()],
test: {
include: ['**/*.spec.{js,mjs,cjs,ts,mts,cts,jsx,tsx}'],
environment: 'jsdom',
globals: true,
setupFiles: 'src/setupTests.ts'
}
};
export default config;
Run Code Online (Sandbox Code Playgroud)
import '@testing-library/jest-dom/extend-expect';
Run Code Online (Sandbox Code Playgroud)
onMount(() => {
postElementId = crypto.randomUUID();
...
});
Run Code Online (Sandbox Code Playgroud)
TypeError: crypto.randomUUID is not a function
Run Code Online (Sandbox Code Playgroud)
我有一个使用加密 api 创建随机 id 并按预期工作的组件,但是当我想测试它时,每次我执行此操作时都会弹出此错误,非常感谢任何帮助!
我的 vitest 错误是window.crypto.randomUUID() is not a function。
所以,我添加setupFiles到 vite.config.js
test: {
setupFiles: [
'./test/_setup/globalSetup.js'
],
...
Run Code Online (Sandbox Code Playgroud)
然后,在globalSetup.js文件中我添加了这两行:
import {randomUUID} from 'node:crypto';
window.crypto.randomUUID = randomUUID;
Run Code Online (Sandbox Code Playgroud)
它似乎已经成功了。
| 归档时间: |
|
| 查看次数: |
6054 次 |
| 最近记录: |