Я создаю какой-то модульный тест для своего компонента, но тест продолжает давать сбой, поскольку тестируемая кнопка не срабатывает из-за события click.
Я использовал документы в качестве Основание для моего теста: https://vuetifyjs.com/sv-SE/getting-started/unit-testing/
Я также попробовал некоторые из упомянутых здесь предложений: https://forum.vuejs.org/t/how-to-trigger-an-onchange-event/11081/4
Но, похоже, как будто я что-то упускаю, кто-нибудь, кто может мне помочь?
Мой тест:
test('If you can click on the Test button', () => {
const wrapper = shallowMount(myComponent, {
localVue,
vuetify,
});
const event = jest.fn();
const button = wrapper.find({name: 'v-btn'})
expect(button.exists()).toBe(true) //this works
wrapper.vm.$on('v-btn:clicked', event)
expect(event).toHaveBeenCalledTimes(0)
button.trigger('click')
expect(event).toHaveBeenCalledTimes(1)
})
myComponent:
<template>
<v-btn class="primary-text" @click.native="methodForTesting($event)">Test</v-btn>
<template>
<script>
methods: {
methodForTesting(){
console.log('button clicked!')
}
</script>