Юнит-тесты, генерируемые исключениями vue-cli - PullRequest
0 голосов
/ 19 марта 2019

После создания проекта с помощью vue-cli (v3.5.1) автоматически созданный модульный тест не работает, когда я запускаю: 'npm run test: unit'.

После запуска 'vue create' я вручную выбрал следующие параметры: TS, Маршрутизатор, Vuex, Linter, Unit, E2E, синтаксис компонента в стиле класса: да, Babel: нет, режим истории: нет, linter: TSLint, Lint при сохранении, решение для модульного тестирования: Mocha, решение для тестирования E2E Cypress, файлы конфигурации: выделенные файлы enter image description here.

Вывод 'npm run test: unit'ниже.

WEBPACK Compiled successfully in 7321ms
MOCHA Testing...
RUNTIME EXCEPTION Exception occurred while loading your tests
ReferenceError: performance is not defined at Module../node_modules/vue/dist/vue.runtime.esm.js

Я попытался изменить скрипт npm, используемый для запуска теста, как показано ниже (я не был уверен, что включение было получено с узла, и я не думаю, что это должно быть), но я просто получаю сообщение о том, что perf_hooks не найден в \ node_modules \ mocha-webpack \ lib.

"test:unit": "vue-cli-service test:unit --include perf_hooks"

Пример кода: https://github.com/derek-baker/super-duper-guacamole

1 Ответ

0 голосов
/ 20 марта 2019

Если, в дополнение к описанным выше параметрам, я предпочитаю включить Babel в качестве функции, а также использовать Babel вместе с TypeScript для автоматически обнаруживаемых полифиллов, модульный тест запускается, как и ожидалось. Пример рабочей конфигурации приведен ниже.

{
  "name": "vue-cli-test",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint",
    "test:e2e": "vue-cli-service test:e2e",
    "test:unit": "vue-cli-service test:unit"
  },
  "dependencies": {
    "vue": "^2.6.6",
    "vue-class-component": "^6.0.0",
    "vue-property-decorator": "^7.0.0",
    "vue-router": "^3.0.1",
    "vuex": "^3.0.1"
  },
  "devDependencies": {
    "@types/chai": "^4.1.0",
    "@types/mocha": "^5.2.4",
    "@vue/cli-plugin-babel": "^3.5.0",
    "@vue/cli-plugin-e2e-cypress": "^3.5.0",
    "@vue/cli-plugin-typescript": "^3.5.0",
    "@vue/cli-plugin-unit-mocha": "^3.5.0",
    "@vue/cli-service": "^3.5.0",
    "@vue/test-utils": "1.0.0-beta.29",
    "chai": "^4.1.2",
    "typescript": "^3.2.1",
    "vue-template-compiler": "^2.5.21"
  }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...