单元测试

346 阅读1分钟

测试按钮中含有icon

{
    //测试按钮含有icon
    const Constructor = Vue.extend(Button)
    //首先生成一个vm
    const vm = new Constructor({
        propsData: {
            icon: 'settings'
        }
    })
    //然后将VM挂载到内存中
    vm.$mount()
    //去VM中寻找是否有一个叫做use的标签
    let useElement = vm.$el.querySelector('use')
    //判断USE标签的href必须等于i-setting
    let href = useElement.getAttribute('xlink:href')
    expect(href).to.eq('#i-settings')
    vm.$el.remove()
    vm.$destroy()
}

测试loading

如果传入一个loading,会显示一个叫做href为i-loading的以一个icon

{
        const Constructor = Vue.extend(Button)
        const vm = new Constructor({
            propsData: {
                icon: 'settings',
                loading: true
            }
        })
        vm.$mount()
        let useElement = vm.$el.querySelector('use')
        let href = useElement.getAttribute('xlink:href')
        expect(href).to.eq('#i-loading')
        vm.$el.remove()
        vm.$destroy()
    }