如何在玩笑代码覆盖率中覆盖 beforeDestroy 钩子
How to cover beforeDestroy hook in jest code coverage
我在 Employee.vue 文件中有以下 beforeDestroy 挂钩
beforeDestroy() {
this.checkIncompleteValues()
}
并且在测试文件单元测试中写成
test('beforeDestroy method', () => {
const beforeDestroySpy = jest.spyOn(Employee, 'beforeDestroy')
wrapper.vm.callOtherMethod = jest.fn()
expect(beforeDestroySpy).toHaveBeenCalled()
expect(mockedMethod).toHaveBeenCalled()
})
以上测试已通过,但在代码覆盖率报告中,如您在图片中看到的那样,beforeDestroy 行未被覆盖
coverage report
有什么方法可以覆盖 beforeDestroy 钩子中存在的行
谢谢
销毁组件的实例,例如 wrapper.destroy()
。
import { mount } from '@vue/test-utils'
import sinon from 'sinon'
const spy = sinon.stub()
mount({
render: null,
destroyed() {
spy()
}
}).destroy()
expect(spy.calledOnce).toBe(true)
注意:对于功能组件,destroy
仅从文档中删除呈现的 DOM 个元素。
我在 Employee.vue 文件中有以下 beforeDestroy 挂钩
beforeDestroy() {
this.checkIncompleteValues()
}
并且在测试文件单元测试中写成
test('beforeDestroy method', () => {
const beforeDestroySpy = jest.spyOn(Employee, 'beforeDestroy')
wrapper.vm.callOtherMethod = jest.fn()
expect(beforeDestroySpy).toHaveBeenCalled()
expect(mockedMethod).toHaveBeenCalled()
})
以上测试已通过,但在代码覆盖率报告中,如您在图片中看到的那样,beforeDestroy 行未被覆盖 coverage report
有什么方法可以覆盖 beforeDestroy 钩子中存在的行
谢谢
销毁组件的实例,例如 wrapper.destroy()
。
import { mount } from '@vue/test-utils'
import sinon from 'sinon'
const spy = sinon.stub()
mount({
render: null,
destroyed() {
spy()
}
}).destroy()
expect(spy.calledOnce).toBe(true)
注意:对于功能组件,destroy
仅从文档中删除呈现的 DOM 个元素。