【问题标题】:Jest coverage doesn't pick up on vue functional component开玩笑的覆盖率并没有出现在 vue 功能组件上
【发布时间】:2019-09-01 11:16:07
【问题描述】:

我有一个 Vue 功能组件,使用 Jest 进行了一些测试,但该文件的覆盖率说 0。这是在 Vue 中测试功能组件的正确方法吗?

这是我的组件的一个例子

<template functional>
      <div :class="['name', ...props.extraClasses]">
          {{ props.itemName }}
      </div>
</template>

<script>
export default {
    props: {
        itemName: {
            type: String,
            required: true,
        },
        extraClasses: {
            type: Array,
        },
    },
};
</script>

这是我的 1 个测试的样子

test('it works correctly with all props', () => {

    const wrapper = shallow(cmp, {
        context: {
          props: {
            itemName: 'item name',
            extraClasses: ['extra1', 'extra2'],
          }
        },
      })
    const name = wrapper.find('.name');
    expect(name.classes()).toEqual(['name', 'extra1', 'extra2']);
    expect(name.text()).toBe('item name');
});

运行 jest 后,我​​看到覆盖率为 0,而未覆盖的线是道具。 有没有其他方法可以测试功能组件?

我怎样才能让这个测试文件的笑话覆盖率正常工作?

谢谢

【问题讨论】:

    标签: vue.js jestjs


    【解决方案1】:

    据报道此问题已在版本 4 中得到修复 https://github.com/vuejs/vue-jest/issues/88 我尝试升级到 vue-jest@4.0.0-beta.2 并确认此问题已修复

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-07-15
      • 1970-01-01
      • 2023-02-17
      • 2020-07-13
      • 2020-08-11
      • 2018-05-31
      • 1970-01-01
      相关资源
      最近更新 更多