Vue.js 开玩笑+;覆盖范围+;VueJs如何涵盖vue方法?
我试图覆盖代码以增加覆盖范围 报告百分比 如何涵盖vue方法中的if语句? 在我的情况下,使用Vue.js 开玩笑+;覆盖范围+;VueJs如何涵盖vue方法?,vue.js,jestjs,code-coverage,vue-test-utils,ts-jest,Vue.js,Jestjs,Code Coverage,Vue Test Utils,Ts Jest,我试图覆盖代码以增加覆盖范围 报告百分比 如何涵盖vue方法中的if语句? 在我的情况下,使用@vue/test-utils:“^1.1.4”和vue:“^2.6.12”软件包版本,仅供参考,以下是我的实际组件 <template> <div :class="iconcls" > <el-image ref='cal-modal' class="icons&
@vue/test-utils:“^1.1.4”
和vue:“^2.6.12”
软件包版本,仅供参考,以下是我的实际组件
<template>
<div :class="iconcls" >
<el-image
ref='cal-modal'
class="icons"
@click="handleRedirectRouter(urlname)"
:src="require(`@/assets/designsystem/home/${iconurl}`)"
fit="fill" />
<div class="desc" >{{ icondesc }}</div>
</div>
</template>
<script lang="ts">
import { Component, Vue, Prop } from 'vue-property-decorator';
@Component({
components: {}
})
class IconHolder extends Vue {
@Prop({ default: "" }) iconcls!: any;
@Prop({ default: "" }) iconurl!: any;
@Prop({ default: "" }) icondesc!: any;
@Prop({ default: "" }) urlname!: any;
handleRedirectRouter(url: string) {
if (url !== "") {
this.$router.push({ name: url });
}
}
}
export default IconHolder;
</script>
错误报告:
expect(jest.fn()).toHaveBeenCalledWith(...expected)
Expected: {"name": "about"}
Number of calls: 0
30 | })
31 | await wrapper.findComponent({ name: 'el-image' }).trigger('click');
> 32 | expect(push).toHaveBeenCalledWith({ name: 'about' })
创建一个单元测试,该测试使用
url
的非空字符串运行该方法
单击
处理程序)单击该组件上的
事件urlname
it('push route by name',()=>{
/* 2 */
const push=jest.fn()
常量包装=浅装(IconHolder{
/* 1 */
propsData:{
urlname:“关于”
},
/* 2 */
模拟:{
$router:{
推
}
}
})
/*3嘿,兄弟,我已经更新了上面的测试套件,仍然会出现上面的错误,请帮助我解决此问题。“vue”:“^2.6.12”,“@vue/test-utils”:“^1.1.4”,你能发布一个链接到一个重现该问题的项目吗?我正在寻找一个重现你在运行单元测试时看到的错误的项目。你链接的项目只给了我应用程序代码。
expect(jest.fn()).toHaveBeenCalledWith(...expected)
Expected: {"name": "about"}
Number of calls: 0
30 | })
31 | await wrapper.findComponent({ name: 'el-image' }).trigger('click');
> 32 | expect(push).toHaveBeenCalledWith({ name: 'about' })