zoukankan      html  css  js  c++  java
  • vue单元测试

    0、测试钩子函数

    describe的钩子函数
    在测试块describe中,存在这四个钩子函数,他会在describe执行的不同时期调用:

    before():在该区块的所有测试用例之前执行

    after():在该区块的所有测试用例之后执行

    beforeEach():在每个单元测试(即it)执行前执行

    afterEach():在每个单元测试(即it)执行后执行

    1、 加载对象

        const wrapper = mount(UserManageXG);
    
        const wrapper = shallowMount(UserManageXG, {
          propsData: { value }
        })

    2、设置属性

      it('prop isActive', () => {
        const wrapper = shallowMount(Hamburger)
        wrapper.setProps({ isActive: true })
        expect(wrapper.contains('.is-active')).toBe(true)
        wrapper.setProps({ isActive: false })
        expect(wrapper.contains('.is-active')).toBe(false)
      })

    3、异步测试代码

    await wrapper.vm.$nextTick()
    
    it('updates text', async () => {
      const wrapper = mount(Component)
      await wrapper.trigger('click')
      expect(wrapper.text()).toContain('updated')
      await wrapper.trigger('click')
      wrapper.text().toContain('some different text')
    })
    
    // 或者你不希望使用 async/await
    it('render text', done => {
      const wrapper = mount(TestComponent)
      wrapper.trigger('click').then(() => {
        wrapper.text().toContain('updated')
        wrapper.trigger('click').then(() => {
          wrapper.text().toContain('some different text')
          done()
        })
      })
    })

    4、判断属性是否相等

    const wrapper = mount(input, {
          propsData: {
            type: 'password',
            value: 'admin'
          }
        })
    expect(wrapper.props('value')).toBe('admin')
    
    
    
    // 挂载元素并返回已渲染的组件的工具函数
    function getMountedComponent(Component, propsData) {
      return shallowMount(Component, {
        propsData
      })
    }

    5、查询组件

        const querybtn = wrapper.findComponent({ ref: 'queryBtn' });
    让每一天过的有意义!
  • 相关阅读:
    Unieap3.5-Grid+Form下拉列表高度设置
    Unieap3.5-Grid翻页不提示修改
    Unieap3.5-需要用到window.setTimeout的地方
    Unieap3.5-前台js判断表单必录
    JavaScript空判断
    JavaScript字符串转日期格式
    Unieap3.5-前台js用SQL语句执行数据请求
    Unieap3.5-JS常用方法
    mysql之索引查询1
    mysql之多表查询和pymysql模块
  • 原文地址:https://www.cnblogs.com/BillyYoung/p/14421130.html
Copyright © 2011-2022 走看看