我是VueJS的新手(在测试用例中也是),如果已经问过这个问题,则表示歉意,
我在组件中添加了一个方法,该方法检查$route.name
并相应地返回一个布尔值,
但是问题出现在测试用例中(JEST) 已经尝试过了,但是没有用
isAbc () {
return this.$route.name === 'abc-route
}
这是我要为其编写测试用例的方法,
const $route = {
name: 'abc-route'
}
const wrapper = shallowMount(Component, {
mocks: {
$route
}
})
我也尝试过这种方法
https://github.com/facebook/jest/issues/890#issuecomment-209698782
并检查我是否可以得到this.$route.path
,但也没有运气。
任何人都可以提及我想念的是什么或做错了什么?
答案 0 :(得分:0)
万一有人卡住,我可以通过改变方法来解决,
代替分配$ router,应该执行以下操作
component.vm.$router.replace({ path: '/some/path', name: 'some-name' })
然后用
进行测试 expect(component.vm.isAbc()).toBe(false)