Ошибка типа: в плагинах обнаружено ложное значение - Vue Юнит-тестирование с помощью Jest - PullRequest
1 голос
/ 27 января 2020

Я только начал писать тестовых случаев для моего уже существующего Vue.js проекта через Jest .

Единственным тестовым примером, который сработал, был Hello World, в котором он только проверяет, отображаются ли данные или нет.

Это пользовательская инструкция c, которая не работает.

Я создал файл FancyHeading.spe c. js

import { shallowMount } from '@vue/test-utils'
import FancyHeading from '@/components/FancyHeading'

describe('FancyHeading', () => {
  test('if logged in is false, do not show logout button', () => {
    const wrapper = shallowMount(FancyHeading)
    expect(wrapper.find('button').isVisible()).toBe(false)
  })

  test('if logged in, show logout button', () => {
    expect(true).toBe(true)
    expect(1 + 1).toBe(2)
  })
})

Для нижеуказанного компонента:

<template>
  <div>
    <button class="btn" v-show="loggedIn">Logout</button>
  </div>
</template>

    <script>
export default {
  name: 'fancy-heading',
  data () {
    return {
      loggedIn: false
    }
  }
}
</script>

Тестовый пример не запускается по следующей причине:

FAIL  tests/unit/FancyHeading.spec.js
  ● Test suite failed to run

    TypeError: Falsy value found in plugins

      at node_modules/babel-core/lib/transformation/file/options/option-manager.js:168:15
          at Array.map (<anonymous>)
      at Function.normalisePlugins (node_modules/babel-core/lib/transformation/file/options/option-manager.js:162:20)
      at OptionManager.mergeOptions (node_modules/babel-core/lib/transformation/file/options/option-manager.js:239:36)
      at OptionManager.init (node_modules/babel-core/lib/transformation/file/options/option-manager.js:373:12)
      at File.initOptions (node_modules/babel-core/lib/transformation/file/index.js:212:65)
      at new File (node_modules/babel-core/lib/transformation/file/index.js:135:24)
      at Pipeline.transform (node_modules/babel-core/lib/transformation/pipeline.js:46:16)
      at compileBabel (node_modules/vue-jest/lib/compilers/babel-compiler.js:23:21)
      at processScript (node_modules/vue-jest/lib/process.js:30:10)

Чего мне здесь не хватает?

...