unit-testing - Jest Vue,测试触发点击按钮,预期 1,收到:0
问题描述
我对触发点击的单元测试有问题。错误:预期:1,接收:0 我正在使用 Vue、Jest 和 Vue 测试工具。我想测试按钮是否被触发
搜索.vue
<v-btn id="searchBtn" @click="searchItem"></v-btn>
methods: {
searchItem() {}
...
}
test.spec.js
import Search from '...'
describle(Search, () => {
it('trigger button', () => {
const wrapper = shallowMount(Search)
const clickMethodStub = jest.fn()
wrapper.setMethods({ searchItem: clickMethodStub })
wrapper.find('#searchBtn').trigger('click')
expect(clickMethodStub.mock.calls.length).toBe(1)
})
})
}
错误:预期:1 收到:0
解决方案
因为是 vuetify 按钮,所以需要使用 to shallowMount
to mount
。
import Search from '...'
describle(Search, () => {
it('trigger button', () => {
const wrapper = mount(Search)
const clickMethodStub = jest.fn()
wrapper.setMethods({ searchItem: clickMethodStub })
wrapper.find('#searchBtn').trigger('click')
expect(clickMethodStub.mock.calls.length).toBe(1)
})
})
}
推荐阅读
- machine-learning - “NoneType”对象没有属性“add_summary”
- python - 基本 Python 问题:elif 无效语法错误
- linux-kernel - 如何在 Linux 中启用 cgroup
- asynchronous - 如何通过异步服务间通信服务同步客户端服务器通信?
- matlab - MATLAB中每个元素的索引数组?
- php - 登录成功但登录成功后错误会话被拒绝
- r - 在ggplot map R Studio中更改图例中的文本
- oracle - 在 oracle 中将 blob(image) 转换为 varchar
- python - 如何将 Numpy 数组中的 Lab 元素相乘?
- c - 从c中的txt文件读取