开玩笑的测试未使用Vue道具

时间:2020-10-27 11:03:35

标签: vue.js jestjs

刚开始在我的Vue应用程序中使用Jest进行测试,我不确定自己是否正确进行测试。

我有一个将对象sliderValues作为属性的组件。 sliderValues:标签上的值之一,我用来在跨度中呈现文本。

props: {
  sliderValues: {
    type: Object,
    default: () => ({
      label: 'label'
    })
  }
},


<div ref="bubble" class="c-slider__bubble">
  <span>{{ sliderValues.label }}</span>
</div>

测试:

const wrapper = mount(Slider, {
  propsData: {
    sliderValues: {
      label: 'km'
    }
  }
})

test('Slider passes prop correctly', () => {
  expect(wrapper.props().sliderValues.label).toBe('km')
  expect(wrapper.find('.c-slider__bubble').text()).toBe('km')
})

在测试中,我用标签值sliderValues来模拟km对象。

测试中的第一个期望似乎是测试模拟label对象中的sliderValue值是否等于km。因为如果我将实际组件的sliderValue标签值更改为noLabel

props: {
  sliderValues: {
    type: Object,
    default: () => ({
      noLabel: 'label'
    })
  }
},

测试顺利通过。

如果我将模板中的span更改为:

<span>{{ sliderValues.asd }}</span>

第二个期望值失败,因为未在跨度中呈现label值。有人有进行测试的提示吗?

0 个答案:

没有答案