刚开始在我的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
值。有人有进行测试的提示吗?