#vue-test-utils
Вопрос:
Я провожу простой модульный тест с помощью утилит vue test. но это не работает. Я понятия не имею…. Помоги мне
Я установил эти штуки…..
> $ npm i -D jest @vue/test-utils vue-jest jest-serializer-vue babel-jest babel-core@bridge
> $ npm i -D @babel/core @babel/preset-env
Я сделал jest.config.js файл
module.exports = {
moduleFileExtensions: [
'vue',
'js'
],
moduleNameMapper: {
'^~/(.*)
и tests/Parent.test.js
import { mount } from '@vue/test-utils'
import Parent from './Parent.vue'
test('Mount', () => {
const wrapper = mount(Parent)
expect(wrapper.html()).toBe('')
})
но тест запуска npm:единичная ошибка, подобная этой
FAIL tests/Parent.test.js
● Test suite failed to run
TypeError: Cannot destructure property `config` of 'undefined' or 'null'.
at Object.getCacheKey (node_modules/vue-jest/lib/index.js:10:5)
at ScriptTransformer._getCacheKey (node_modules/@jest/transform/build/ScriptTransformer.js:280:41)
at ScriptTransformer._getFileCachePath (node_modules/@jest/transform/build/ScriptTransformer.js:351:27)
at ScriptTransformer.transformSource (node_modules/@jest/transform/build/ScriptTransformer.js:588:32)
at ScriptTransformer._transformAndBuildScript (node_modules/@jest/transform/build/ScriptTransformer.js:758:40)
at ScriptTransformer.transform (node_modules/@jest/transform/build/ScriptTransformer.js:815:19)
Test Suites: 1 failed, 1 total
Tests: 0 total
Snapshots: 0 total
Time: 0.512 s
Ran all test suites.
Ответ №1:
Пакет отходит от семантического управления версиями для поддержки различных версий Vue (2.x, 3.x) и версий Jest (26.x, 27.x). Итак, если вы используете Vue 3.x и Jest 27.x, вам нужно установить vue3-jest, а не vue-jest.
npm i vue3-jest -D
# or
yarn add vue3-jest --dev
Затем обновите свой jest.config.js
следующим образом:
module.exports = {
moduleFileExtensions: ['vue', 'js', 'json', 'jsx'],
testEnvironment: 'jsdom',
transform: {
'^. \.vue
К моменту написания этого ответа имя пакета и управление версиями были примерно такими:
Вы можете прочитать больше о новой стратегии именования и управления версиями здесь.
Ответ №2:
Если вы используете версию 27 jest, попробуйте понизить рейтинг до версии 26. Не забудьте понизить уровень babel-jest и ts-jest также до версии 26. Я получал следующую ошибку, и это сделало это за меня:
Невозможно уничтожить свойство "конфигурация ""неопределенного", поскольку оно не определено.
Комментарии:
1. Это была хорошая подсказка для меня, я использовал Jest 27, но мне также нужно было обновить его компаньона
babel-jest
до 27, так как он все еще был на 24. После того, как я обновил его, он начал работать.2. @jfunk рад, что это помогло
3. У меня есть "вавилонская шутка": "^27.0.6", "шутка": "^27.0.6", "ts-шутка": "^27.0.4", но все равно это не работает
4. Работает на меня, спасибо. Понижение до "ts-шутка": "26.5.6", "шутка": "^26.6.3"
Ответ №3:
Столкнулся с теми же проблемами, пытаясь заставить Vue3, Jest и Typescript работать вместе. Вот как мне удалось заставить это работать. Это вопрос выравнивания планет с зависимостями.
- Сначала я предлагаю очистить package.json от любой шутки, упоминающей зависимость (особенно, если, как и я, вы проводите несколько дней, пытаясь установить и удалить зависимости, исполняя танец дождя, держа подкову).
- добавить в пакет.json
"devDependencies": { "@babel/core": "^7.14.5", "@babel/preset-env": "^7.14.7", "babel-core": "^7.0.0-bridge.0", "typescript": "^4.3.5", "@vue/test-utils": "^2.0.0-rc.9", "jest": "^26.5.6", "ts-jest": "^26.5.6", "babel-jest": "^26.5.6", "vue-jest": "^5.0.0-alpha.10", "@vue/cli-plugin-unit-jest": "5.0.0-beta.2" }
(убедитесь, что у этого отделения одна и та же версия: jest, ts-jest и babel-jest) - все еще в пакете.json добавить скрипт
"scripts": { "test": "jest" },
- нпм i
- запуск теста npm
И для меня это сейчас работает. Надеюсь, это может помочь кому-то еще.
: '<rootDir>/src/$1'
},
modulePathIgnorePatterns: [
'<rootDir>/node_modules',
'<rootDir>/dist'
],
testURL: 'http://localhost',
transform: {
'^. \.vueи tests/Parent.test.js
но тест запуска npm:единичная ошибка, подобная этой
введите описание изображения здесь
Ответ №1:
Пакет отходит от семантического управления версиями для поддержки различных версий Vue (2.x, 3.x) и версий Jest (26.x, 27.x). Итак, если вы используете Vue 3.x и Jest 27.x, вам нужно установить vue3-jest, а не vue-jest.
Затем обновите свой jest.config.js
следующим образом:
К моменту написания этого ответа имя пакета и управление версиями были примерно такими:
Вы можете прочитать больше о новой стратегии именования и управления версиями здесь.
Ответ №2:
Если вы используете версию 27 jest, попробуйте понизить рейтинг до версии 26. Не забудьте понизить уровень babel-jest и ts-jest также до версии 26. Я получал следующую ошибку, и это сделало это за меня:
Невозможно уничтожить свойство "конфигурация ""неопределенного", поскольку оно не определено.
Комментарии:
1. Это была хорошая подсказка для меня, я использовал Jest 27, но мне также нужно было обновить его компаньона
babel-jest
до 27, так как он все еще был на 24. После того, как я обновил его, он начал работать.2. @jfunk рад, что это помогло
3. У меня есть "вавилонская шутка": "^27.0.6", "шутка": "^27.0.6", "ts-шутка": "^27.0.4", но все равно это не работает
4. Работает на меня, спасибо. Понижение до "ts-шутка": "26.5.6", "шутка": "^26.6.3"
Ответ №3:
Столкнулся с теми же проблемами, пытаясь заставить Vue3, Jest и Typescript работать вместе. Вот как мне удалось заставить это работать. Это вопрос выравнивания планет с зависимостями.
- Сначала я предлагаю очистить package.json от любой шутки, упоминающей зависимость (особенно, если, как и я, вы проводите несколько дней, пытаясь установить и удалить зависимости, исполняя танец дождя, держа подкову).
- добавить в пакет.json
"devDependencies": { "@babel/core": "^7.14.5", "@babel/preset-env": "^7.14.7", "babel-core": "^7.0.0-bridge.0", "typescript": "^4.3.5", "@vue/test-utils": "^2.0.0-rc.9", "jest": "^26.5.6", "ts-jest": "^26.5.6", "babel-jest": "^26.5.6", "vue-jest": "^5.0.0-alpha.10", "@vue/cli-plugin-unit-jest": "5.0.0-beta.2" }
(убедитесь, что у этого отделения одна и та же версия: jest, ts-jest и babel-jest) - все еще в пакете.json добавить скрипт
"scripts": { "test": "jest" },
- нпм i
- запуск теста npm
И для меня это сейчас работает. Надеюсь, это может помочь кому-то еще.
: 'vue-jest',
'^. \.jsx?и tests/Parent.test.js
но тест запуска npm:единичная ошибка, подобная этой
введите описание изображения здесь
Ответ №1:
Пакет отходит от семантического управления версиями для поддержки различных версий Vue (2.x, 3.x) и версий Jest (26.x, 27.x). Итак, если вы используете Vue 3.x и Jest 27.x, вам нужно установить vue3-jest, а не vue-jest.
Затем обновите свой jest.config.js
следующим образом:
К моменту написания этого ответа имя пакета и управление версиями были примерно такими:
Вы можете прочитать больше о новой стратегии именования и управления версиями здесь.
Ответ №2:
Если вы используете версию 27 jest, попробуйте понизить рейтинг до версии 26. Не забудьте понизить уровень babel-jest и ts-jest также до версии 26. Я получал следующую ошибку, и это сделало это за меня:
Невозможно уничтожить свойство "конфигурация ""неопределенного", поскольку оно не определено.
Комментарии:
1. Это была хорошая подсказка для меня, я использовал Jest 27, но мне также нужно было обновить его компаньона
babel-jest
до 27, так как он все еще был на 24. После того, как я обновил его, он начал работать.2. @jfunk рад, что это помогло
3. У меня есть "вавилонская шутка": "^27.0.6", "шутка": "^27.0.6", "ts-шутка": "^27.0.4", но все равно это не работает
4. Работает на меня, спасибо. Понижение до "ts-шутка": "26.5.6", "шутка": "^26.6.3"
Ответ №3:
Столкнулся с теми же проблемами, пытаясь заставить Vue3, Jest и Typescript работать вместе. Вот как мне удалось заставить это работать. Это вопрос выравнивания планет с зависимостями.
- Сначала я предлагаю очистить package.json от любой шутки, упоминающей зависимость (особенно, если, как и я, вы проводите несколько дней, пытаясь установить и удалить зависимости, исполняя танец дождя, держа подкову).
- добавить в пакет.json
"devDependencies": { "@babel/core": "^7.14.5", "@babel/preset-env": "^7.14.7", "babel-core": "^7.0.0-bridge.0", "typescript": "^4.3.5", "@vue/test-utils": "^2.0.0-rc.9", "jest": "^26.5.6", "ts-jest": "^26.5.6", "babel-jest": "^26.5.6", "vue-jest": "^5.0.0-alpha.10", "@vue/cli-plugin-unit-jest": "5.0.0-beta.2" }
(убедитесь, что у этого отделения одна и та же версия: jest, ts-jest и babel-jest) - все еще в пакете.json добавить скрипт
"scripts": { "test": "jest" },
- нпм i
- запуск теста npm
И для меня это сейчас работает. Надеюсь, это может помочь кому-то еще.
: 'babel-jest'
}
}
и tests/Parent.test.js
но тест запуска npm:единичная ошибка, подобная этой
введите описание изображения здесь
Ответ №1:
Пакет отходит от семантического управления версиями для поддержки различных версий Vue (2.x, 3.x) и версий Jest (26.x, 27.x). Итак, если вы используете Vue 3.x и Jest 27.x, вам нужно установить vue3-jest, а не vue-jest.
Затем обновите свой jest.config.js
следующим образом:
К моменту написания этого ответа имя пакета и управление версиями были примерно такими:
Вы можете прочитать больше о новой стратегии именования и управления версиями здесь.
Ответ №2:
Если вы используете версию 27 jest, попробуйте понизить рейтинг до версии 26. Не забудьте понизить уровень babel-jest и ts-jest также до версии 26. Я получал следующую ошибку, и это сделало это за меня:
Невозможно уничтожить свойство "конфигурация ""неопределенного", поскольку оно не определено.
Комментарии:
1. Это была хорошая подсказка для меня, я использовал Jest 27, но мне также нужно было обновить его компаньона
babel-jest
до 27, так как он все еще был на 24. После того, как я обновил его, он начал работать.2. @jfunk рад, что это помогло
3. У меня есть "вавилонская шутка": "^27.0.6", "шутка": "^27.0.6", "ts-шутка": "^27.0.4", но все равно это не работает
4. Работает на меня, спасибо. Понижение до "ts-шутка": "26.5.6", "шутка": "^26.6.3"
Ответ №3:
Столкнулся с теми же проблемами, пытаясь заставить Vue3, Jest и Typescript работать вместе. Вот как мне удалось заставить это работать. Это вопрос выравнивания планет с зависимостями.
- Сначала я предлагаю очистить package.json от любой шутки, упоминающей зависимость (особенно, если, как и я, вы проводите несколько дней, пытаясь установить и удалить зависимости, исполняя танец дождя, держа подкову).
- добавить в пакет.json
"devDependencies": { "@babel/core": "^7.14.5", "@babel/preset-env": "^7.14.7", "babel-core": "^7.0.0-bridge.0", "typescript": "^4.3.5", "@vue/test-utils": "^2.0.0-rc.9", "jest": "^26.5.6", "ts-jest": "^26.5.6", "babel-jest": "^26.5.6", "vue-jest": "^5.0.0-alpha.10", "@vue/cli-plugin-unit-jest": "5.0.0-beta.2" }
(убедитесь, что у этого отделения одна и та же версия: jest, ts-jest и babel-jest) - все еще в пакете.json добавить скрипт
"scripts": { "test": "jest" },
- нпм i
- запуск теста npm
И для меня это сейчас работает. Надеюсь, это может помочь кому-то еще.
: 'vue3-jest',
'^. \jsК моменту написания этого ответа имя пакета и управление версиями были примерно такими:
Вы можете прочитать больше о новой стратегии именования и управления версиями здесь.
Ответ №2:
Если вы используете версию 27 jest, попробуйте понизить рейтинг до версии 26. Не забудьте понизить уровень babel-jest и ts-jest также до версии 26. Я получал следующую ошибку, и это сделало это за меня:
Невозможно уничтожить свойство "конфигурация ""неопределенного", поскольку оно не определено.
Комментарии:
1. Это была хорошая подсказка для меня, я использовал Jest 27, но мне также нужно было обновить его компаньона
babel-jest
до 27, так как он все еще был на 24. После того, как я обновил его, он начал работать.2. @jfunk рад, что это помогло
3. У меня есть "вавилонская шутка": "^27.0.6", "шутка": "^27.0.6", "ts-шутка": "^27.0.4", но все равно это не работает
4. Работает на меня, спасибо. Понижение до "ts-шутка": "26.5.6", "шутка": "^26.6.3"
Ответ №3:
Столкнулся с теми же проблемами, пытаясь заставить Vue3, Jest и Typescript работать вместе. Вот как мне удалось заставить это работать. Это вопрос выравнивания планет с зависимостями.
- Сначала я предлагаю очистить package.json от любой шутки, упоминающей зависимость (особенно, если, как и я, вы проводите несколько дней, пытаясь установить и удалить зависимости, исполняя танец дождя, держа подкову).
- добавить в пакет.json
"devDependencies": { "@babel/core": "^7.14.5", "@babel/preset-env": "^7.14.7", "babel-core": "^7.0.0-bridge.0", "typescript": "^4.3.5", "@vue/test-utils": "^2.0.0-rc.9", "jest": "^26.5.6", "ts-jest": "^26.5.6", "babel-jest": "^26.5.6", "vue-jest": "^5.0.0-alpha.10", "@vue/cli-plugin-unit-jest": "5.0.0-beta.2" }
(убедитесь, что у этого отделения одна и та же версия: jest, ts-jest и babel-jest) - все еще в пакете.json добавить скрипт
"scripts": { "test": "jest" },
- нпм i
- запуск теста npm
И для меня это сейчас работает. Надеюсь, это может помочь кому-то еще.
: '<rootDir>/src/$1'
},
modulePathIgnorePatterns: [
'<rootDir>/node_modules',
'<rootDir>/dist'
],
testURL: 'http://localhost',
transform: {
'^. \.vueи tests/Parent.test.js
но тест запуска npm:единичная ошибка, подобная этой
введите описание изображения здесь
Ответ №1:
Пакет отходит от семантического управления версиями для поддержки различных версий Vue (2.x, 3.x) и версий Jest (26.x, 27.x). Итак, если вы используете Vue 3.x и Jest 27.x, вам нужно установить vue3-jest, а не vue-jest.
Затем обновите свой jest.config.js
следующим образом:
К моменту написания этого ответа имя пакета и управление версиями были примерно такими:
Вы можете прочитать больше о новой стратегии именования и управления версиями здесь.
Ответ №2:
Если вы используете версию 27 jest, попробуйте понизить рейтинг до версии 26. Не забудьте понизить уровень babel-jest и ts-jest также до версии 26. Я получал следующую ошибку, и это сделало это за меня:
Невозможно уничтожить свойство "конфигурация ""неопределенного", поскольку оно не определено.
Комментарии:
1. Это была хорошая подсказка для меня, я использовал Jest 27, но мне также нужно было обновить его компаньона
babel-jest
до 27, так как он все еще был на 24. После того, как я обновил его, он начал работать.2. @jfunk рад, что это помогло
3. У меня есть "вавилонская шутка": "^27.0.6", "шутка": "^27.0.6", "ts-шутка": "^27.0.4", но все равно это не работает
4. Работает на меня, спасибо. Понижение до "ts-шутка": "26.5.6", "шутка": "^26.6.3"
Ответ №3:
Столкнулся с теми же проблемами, пытаясь заставить Vue3, Jest и Typescript работать вместе. Вот как мне удалось заставить это работать. Это вопрос выравнивания планет с зависимостями.
- Сначала я предлагаю очистить package.json от любой шутки, упоминающей зависимость (особенно, если, как и я, вы проводите несколько дней, пытаясь установить и удалить зависимости, исполняя танец дождя, держа подкову).
- добавить в пакет.json
"devDependencies": { "@babel/core": "^7.14.5", "@babel/preset-env": "^7.14.7", "babel-core": "^7.0.0-bridge.0", "typescript": "^4.3.5", "@vue/test-utils": "^2.0.0-rc.9", "jest": "^26.5.6", "ts-jest": "^26.5.6", "babel-jest": "^26.5.6", "vue-jest": "^5.0.0-alpha.10", "@vue/cli-plugin-unit-jest": "5.0.0-beta.2" }
(убедитесь, что у этого отделения одна и та же версия: jest, ts-jest и babel-jest) - все еще в пакете.json добавить скрипт
"scripts": { "test": "jest" },
- нпм i
- запуск теста npm
И для меня это сейчас работает. Надеюсь, это может помочь кому-то еще.
: 'vue-jest',
'^. \.jsx?и tests/Parent.test.js
но тест запуска npm:единичная ошибка, подобная этой
введите описание изображения здесь
Ответ №1:
Пакет отходит от семантического управления версиями для поддержки различных версий Vue (2.x, 3.x) и версий Jest (26.x, 27.x). Итак, если вы используете Vue 3.x и Jest 27.x, вам нужно установить vue3-jest, а не vue-jest.
Затем обновите свой jest.config.js
следующим образом:
К моменту написания этого ответа имя пакета и управление версиями были примерно такими:
Вы можете прочитать больше о новой стратегии именования и управления версиями здесь.
Ответ №2:
Если вы используете версию 27 jest, попробуйте понизить рейтинг до версии 26. Не забудьте понизить уровень babel-jest и ts-jest также до версии 26. Я получал следующую ошибку, и это сделало это за меня:
Невозможно уничтожить свойство "конфигурация ""неопределенного", поскольку оно не определено.
Комментарии:
1. Это была хорошая подсказка для меня, я использовал Jest 27, но мне также нужно было обновить его компаньона
babel-jest
до 27, так как он все еще был на 24. После того, как я обновил его, он начал работать.2. @jfunk рад, что это помогло
3. У меня есть "вавилонская шутка": "^27.0.6", "шутка": "^27.0.6", "ts-шутка": "^27.0.4", но все равно это не работает
4. Работает на меня, спасибо. Понижение до "ts-шутка": "26.5.6", "шутка": "^26.6.3"
Ответ №3:
Столкнулся с теми же проблемами, пытаясь заставить Vue3, Jest и Typescript работать вместе. Вот как мне удалось заставить это работать. Это вопрос выравнивания планет с зависимостями.
- Сначала я предлагаю очистить package.json от любой шутки, упоминающей зависимость (особенно, если, как и я, вы проводите несколько дней, пытаясь установить и удалить зависимости, исполняя танец дождя, держа подкову).
- добавить в пакет.json
"devDependencies": { "@babel/core": "^7.14.5", "@babel/preset-env": "^7.14.7", "babel-core": "^7.0.0-bridge.0", "typescript": "^4.3.5", "@vue/test-utils": "^2.0.0-rc.9", "jest": "^26.5.6", "ts-jest": "^26.5.6", "babel-jest": "^26.5.6", "vue-jest": "^5.0.0-alpha.10", "@vue/cli-plugin-unit-jest": "5.0.0-beta.2" }
(убедитесь, что у этого отделения одна и та же версия: jest, ts-jest и babel-jest) - все еще в пакете.json добавить скрипт
"scripts": { "test": "jest" },
- нпм i
- запуск теста npm
И для меня это сейчас работает. Надеюсь, это может помочь кому-то еще.
: 'babel-jest'
}
}
и tests/Parent.test.js
но тест запуска npm:единичная ошибка, подобная этой
введите описание изображения здесь
Ответ №1:
Пакет отходит от семантического управления версиями для поддержки различных версий Vue (2.x, 3.x) и версий Jest (26.x, 27.x). Итак, если вы используете Vue 3.x и Jest 27.x, вам нужно установить vue3-jest, а не vue-jest.
Затем обновите свой jest.config.js
следующим образом:
К моменту написания этого ответа имя пакета и управление версиями были примерно такими:
Вы можете прочитать больше о новой стратегии именования и управления версиями здесь.
Ответ №2:
Если вы используете версию 27 jest, попробуйте понизить рейтинг до версии 26. Не забудьте понизить уровень babel-jest и ts-jest также до версии 26. Я получал следующую ошибку, и это сделало это за меня:
Невозможно уничтожить свойство «конфигурация «»неопределенного», поскольку оно не определено.
Комментарии:
1. Это была хорошая подсказка для меня, я использовал Jest 27, но мне также нужно было обновить его компаньона
babel-jest
до 27, так как он все еще был на 24. После того, как я обновил его, он начал работать.2. @jfunk рад, что это помогло
3. У меня есть «вавилонская шутка»: «^27.0.6», «шутка»: «^27.0.6», «ts-шутка»: «^27.0.4», но все равно это не работает
4. Работает на меня, спасибо. Понижение до «ts-шутка»: «26.5.6», «шутка»: «^26.6.3»
Ответ №3:
Столкнулся с теми же проблемами, пытаясь заставить Vue3, Jest и Typescript работать вместе. Вот как мне удалось заставить это работать. Это вопрос выравнивания планет с зависимостями.
- Сначала я предлагаю очистить package.json от любой шутки, упоминающей зависимость (особенно, если, как и я, вы проводите несколько дней, пытаясь установить и удалить зависимости, исполняя танец дождя, держа подкову).
- добавить в пакет.json
"devDependencies": { "@babel/core": "^7.14.5", "@babel/preset-env": "^7.14.7", "babel-core": "^7.0.0-bridge.0", "typescript": "^4.3.5", "@vue/test-utils": "^2.0.0-rc.9", "jest": "^26.5.6", "ts-jest": "^26.5.6", "babel-jest": "^26.5.6", "vue-jest": "^5.0.0-alpha.10", "@vue/cli-plugin-unit-jest": "5.0.0-beta.2" }
(убедитесь, что у этого отделения одна и та же версия: jest, ts-jest и babel-jest) - все еще в пакете.json добавить скрипт
"scripts": { "test": "jest" },
- нпм i
- запуск теста npm
И для меня это сейчас работает. Надеюсь, это может помочь кому-то еще.
: ‘babel-jest’,
},
}К моменту написания этого ответа имя пакета и управление версиями были примерно такими:
Вы можете прочитать больше о новой стратегии именования и управления версиями здесь.
Ответ №2:
Если вы используете версию 27 jest, попробуйте понизить рейтинг до версии 26. Не забудьте понизить уровень babel-jest и ts-jest также до версии 26. Я получал следующую ошибку, и это сделало это за меня:
Невозможно уничтожить свойство «конфигурация «»неопределенного», поскольку оно не определено.
Комментарии:
1. Это была хорошая подсказка для меня, я использовал Jest 27, но мне также нужно было обновить его компаньона
babel-jest
до 27, так как он все еще был на 24. После того, как я обновил его, он начал работать.2. @jfunk рад, что это помогло
3. У меня есть «вавилонская шутка»: «^27.0.6», «шутка»: «^27.0.6», «ts-шутка»: «^27.0.4», но все равно это не работает
4. Работает на меня, спасибо. Понижение до «ts-шутка»: «26.5.6», «шутка»: «^26.6.3»
Ответ №3:
Столкнулся с теми же проблемами, пытаясь заставить Vue3, Jest и Typescript работать вместе. Вот как мне удалось заставить это работать. Это вопрос выравнивания планет с зависимостями.
- Сначала я предлагаю очистить package.json от любой шутки, упоминающей зависимость (особенно, если, как и я, вы проводите несколько дней, пытаясь установить и удалить зависимости, исполняя танец дождя, держа подкову).
- добавить в пакет.json
"devDependencies": { "@babel/core": "^7.14.5", "@babel/preset-env": "^7.14.7", "babel-core": "^7.0.0-bridge.0", "typescript": "^4.3.5", "@vue/test-utils": "^2.0.0-rc.9", "jest": "^26.5.6", "ts-jest": "^26.5.6", "babel-jest": "^26.5.6", "vue-jest": "^5.0.0-alpha.10", "@vue/cli-plugin-unit-jest": "5.0.0-beta.2" }
(убедитесь, что у этого отделения одна и та же версия: jest, ts-jest и babel-jest) - все еще в пакете.json добавить скрипт
"scripts": { "test": "jest" },
- нпм i
- запуск теста npm
И для меня это сейчас работает. Надеюсь, это может помочь кому-то еще.
: ‘<rootDir>/src/$1’
},
modulePathIgnorePatterns: [
‘<rootDir>/node_modules’,
‘<rootDir>/dist’
],
testURL: ‘http://localhost’,
transform: {
‘^. \.vueи tests/Parent.test.js
но тест запуска npm:единичная ошибка, подобная этой
введите описание изображения здесь
Ответ №1:
Пакет отходит от семантического управления версиями для поддержки различных версий Vue (2.x, 3.x) и версий Jest (26.x, 27.x). Итак, если вы используете Vue 3.x и Jest 27.x, вам нужно установить vue3-jest, а не vue-jest.
Затем обновите свой jest.config.js
следующим образом:
К моменту написания этого ответа имя пакета и управление версиями были примерно такими:
Вы можете прочитать больше о новой стратегии именования и управления версиями здесь.
Ответ №2:
Если вы используете версию 27 jest, попробуйте понизить рейтинг до версии 26. Не забудьте понизить уровень babel-jest и ts-jest также до версии 26. Я получал следующую ошибку, и это сделало это за меня:
Невозможно уничтожить свойство «конфигурация «»неопределенного», поскольку оно не определено.
Комментарии:
1. Это была хорошая подсказка для меня, я использовал Jest 27, но мне также нужно было обновить его компаньона
babel-jest
до 27, так как он все еще был на 24. После того, как я обновил его, он начал работать.2. @jfunk рад, что это помогло
3. У меня есть «вавилонская шутка»: «^27.0.6», «шутка»: «^27.0.6», «ts-шутка»: «^27.0.4», но все равно это не работает
4. Работает на меня, спасибо. Понижение до «ts-шутка»: «26.5.6», «шутка»: «^26.6.3»
Ответ №3:
Столкнулся с теми же проблемами, пытаясь заставить Vue3, Jest и Typescript работать вместе. Вот как мне удалось заставить это работать. Это вопрос выравнивания планет с зависимостями.
- Сначала я предлагаю очистить package.json от любой шутки, упоминающей зависимость (особенно, если, как и я, вы проводите несколько дней, пытаясь установить и удалить зависимости, исполняя танец дождя, держа подкову).
- добавить в пакет.json
"devDependencies": { "@babel/core": "^7.14.5", "@babel/preset-env": "^7.14.7", "babel-core": "^7.0.0-bridge.0", "typescript": "^4.3.5", "@vue/test-utils": "^2.0.0-rc.9", "jest": "^26.5.6", "ts-jest": "^26.5.6", "babel-jest": "^26.5.6", "vue-jest": "^5.0.0-alpha.10", "@vue/cli-plugin-unit-jest": "5.0.0-beta.2" }
(убедитесь, что у этого отделения одна и та же версия: jest, ts-jest и babel-jest) - все еще в пакете.json добавить скрипт
"scripts": { "test": "jest" },
- нпм i
- запуск теста npm
И для меня это сейчас работает. Надеюсь, это может помочь кому-то еще.
: ‘vue-jest’,
‘^. \.jsx?и tests/Parent.test.js
но тест запуска npm:единичная ошибка, подобная этой
введите описание изображения здесь
Ответ №1:
Пакет отходит от семантического управления версиями для поддержки различных версий Vue (2.x, 3.x) и версий Jest (26.x, 27.x). Итак, если вы используете Vue 3.x и Jest 27.x, вам нужно установить vue3-jest, а не vue-jest.
Затем обновите свой jest.config.js
следующим образом:
К моменту написания этого ответа имя пакета и управление версиями были примерно такими:
Вы можете прочитать больше о новой стратегии именования и управления версиями здесь.
Ответ №2:
Если вы используете версию 27 jest, попробуйте понизить рейтинг до версии 26. Не забудьте понизить уровень babel-jest и ts-jest также до версии 26. Я получал следующую ошибку, и это сделало это за меня:
Невозможно уничтожить свойство «конфигурация «»неопределенного», поскольку оно не определено.
Комментарии:
1. Это была хорошая подсказка для меня, я использовал Jest 27, но мне также нужно было обновить его компаньона
babel-jest
до 27, так как он все еще был на 24. После того, как я обновил его, он начал работать.2. @jfunk рад, что это помогло
3. У меня есть «вавилонская шутка»: «^27.0.6», «шутка»: «^27.0.6», «ts-шутка»: «^27.0.4», но все равно это не работает
4. Работает на меня, спасибо. Понижение до «ts-шутка»: «26.5.6», «шутка»: «^26.6.3»
Ответ №3:
Столкнулся с теми же проблемами, пытаясь заставить Vue3, Jest и Typescript работать вместе. Вот как мне удалось заставить это работать. Это вопрос выравнивания планет с зависимостями.
- Сначала я предлагаю очистить package.json от любой шутки, упоминающей зависимость (особенно, если, как и я, вы проводите несколько дней, пытаясь установить и удалить зависимости, исполняя танец дождя, держа подкову).
- добавить в пакет.json
"devDependencies": { "@babel/core": "^7.14.5", "@babel/preset-env": "^7.14.7", "babel-core": "^7.0.0-bridge.0", "typescript": "^4.3.5", "@vue/test-utils": "^2.0.0-rc.9", "jest": "^26.5.6", "ts-jest": "^26.5.6", "babel-jest": "^26.5.6", "vue-jest": "^5.0.0-alpha.10", "@vue/cli-plugin-unit-jest": "5.0.0-beta.2" }
(убедитесь, что у этого отделения одна и та же версия: jest, ts-jest и babel-jest) - все еще в пакете.json добавить скрипт
"scripts": { "test": "jest" },
- нпм i
- запуск теста npm
И для меня это сейчас работает. Надеюсь, это может помочь кому-то еще.
: ‘babel-jest’
}
}и tests/Parent.test.js
но тест запуска npm:единичная ошибка, подобная этой
введите описание изображения здесь
Ответ №1:
Пакет отходит от семантического управления версиями для поддержки различных версий Vue (2.x, 3.x) и версий Jest (26.x, 27.x). Итак, если вы используете Vue 3.x и Jest 27.x, вам нужно установить vue3-jest, а не vue-jest.
Затем обновите свой jest.config.js
следующим образом:
К моменту написания этого ответа имя пакета и управление версиями были примерно такими:
Вы можете прочитать больше о новой стратегии именования и управления версиями здесь.
Ответ №2:
Если вы используете версию 27 jest, попробуйте понизить рейтинг до версии 26. Не забудьте понизить уровень babel-jest и ts-jest также до версии 26. Я получал следующую ошибку, и это сделало это за меня:
Невозможно уничтожить свойство «конфигурация «»неопределенного», поскольку оно не определено.
Комментарии:
1. Это была хорошая подсказка для меня, я использовал Jest 27, но мне также нужно было обновить его компаньона
babel-jest
до 27, так как он все еще был на 24. После того, как я обновил его, он начал работать.2. @jfunk рад, что это помогло
3. У меня есть «вавилонская шутка»: «^27.0.6», «шутка»: «^27.0.6», «ts-шутка»: «^27.0.4», но все равно это не работает
4. Работает на меня, спасибо. Понижение до «ts-шутка»: «26.5.6», «шутка»: «^26.6.3»
Ответ №3:
Столкнулся с теми же проблемами, пытаясь заставить Vue3, Jest и Typescript работать вместе. Вот как мне удалось заставить это работать. Это вопрос выравнивания планет с зависимостями.
- Сначала я предлагаю очистить package.json от любой шутки, упоминающей зависимость (особенно, если, как и я, вы проводите несколько дней, пытаясь установить и удалить зависимости, исполняя танец дождя, держа подкову).
- добавить в пакет.json
"devDependencies": { "@babel/core": "^7.14.5", "@babel/preset-env": "^7.14.7", "babel-core": "^7.0.0-bridge.0", "typescript": "^4.3.5", "@vue/test-utils": "^2.0.0-rc.9", "jest": "^26.5.6", "ts-jest": "^26.5.6", "babel-jest": "^26.5.6", "vue-jest": "^5.0.0-alpha.10", "@vue/cli-plugin-unit-jest": "5.0.0-beta.2" }
(убедитесь, что у этого отделения одна и та же версия: jest, ts-jest и babel-jest) - все еще в пакете.json добавить скрипт
"scripts": { "test": "jest" },
- нпм i
- запуск теста npm
И для меня это сейчас работает. Надеюсь, это может помочь кому-то еще.