gpt4 book ai didi

unit-testing - 引用错误 : ShadowRoot is not defined Jest and Vue3

转载 作者:行者123 更新时间:2023-12-05 04:53:02 24 4
gpt4 key购买 nike

我正在使用 Jest 设置 Vue3 和单元测试。

我已经不得不努力让它工作,并且我已经尝试了很多不同的配置。

这是我最后一次“工作”配置,我得到了这个错误:

ReferenceError: ShadowRoot 未定义

其实我也没什么想法了。

我的配置:

jest.config.js

    module.exports = {
transform: {
"^.+\\.vue$": "vue-jest",
"^.+\\.js$": "babel-jest",
'.+\\.(css|styl|less|sass|scss|svg|png|jpg|ttf|woff|woff2)(\\?inline)?$': 'jest-transform-stub',
},
moduleFileExtensions: ['vue', 'js', 'json', 'node'],
transformIgnorePatterns: [
"node_modules/(?!@jamescoyle/vue-icon)"
],
moduleNameMapper: {
"@/(.*)$": "<rootDir>/src/$1"
}
}

header.test.js


import { mount } from '@vue/test-utils'
import Header from "./Header.vue";

test('Header', () => {
const wrapper = mount(Header)
console.log(wrapper.html())
})

完整的错误:


> vue-cli-service test:unit

FAIL src/views/components/layout/Header/Header.test.js
✕ Header (11ms)

● Header

ReferenceError: ShadowRoot is not defined

3 |
4 | test('Header', () => {
> 5 | const wrapper = mount(Header)
| ^
6 |
7 | console.log(wrapper.html())
8 | })

at normalizeContainer (node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.js:1260:30)
at Object.app.mount (node_modules/@vue/runtime-dom/dist/runtime-dom.cjs.js:1211:27)
at mount (node_modules/@vue/test-utils/dist/vue-test-utils.cjs.js:2288:18)
at Object.<anonymous> (src/views/components/layout/Header/Header.test.js:5:21)

Test Suites: 1 failed, 1 total
Tests: 1 failed, 1 total
Snapshots: 0 total
Time: 1.664s
Ran all test suites.

最佳答案

看起来 Vue 团队已经意识到了这一点,并且已经合并了一个代码修复。

引用资料

https://github.com/vuejs/vue-test-utils-next/issues/293

https://github.com/vuejs/vue-next/pull/2943

Vue 3.0.6 发布时应该可以解决这个问题。

关于unit-testing - 引用错误 : ShadowRoot is not defined Jest and Vue3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66226216/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com