栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > Web开发 > Vue.js

popover组件测试用例

Vue.js 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

popover组件测试用例

1. 解决小三角形引起的抖动问题。
    // 以一个为例
    &.position-bottom {
    margin-top: 10px;
    &::before, &::after{
      left: 10px;
    }
    &::before {
      border-top: none;
      border-bottom-color: black;
      
      bottom: 100%;
    }
    &::after {
      border-top: none;
      border-bottom-color: white;
      
      bottom: calc(100% - 1px);
    }
  }
2. 实现关闭功能,用 slot-scope,把 close 传给插槽
    // popover.vue
    // 第一步在slot上传一个属性
    

    // 第二步结构一下close,然后用就可以了
    // index.html
    
      
      点我1
    
3. popover 的第一个测试用例-position
it('可以设置position.', (done) => {
    Vue.component('g-popover', Popover)
    const div = document.createElement('div')
    document.body.appendChild(div)
    div.innerHTML = `
    
      
      
    
    `
    const vm = new Vue({ // 这个vm不是组件,这个vm是一个div对应的实例,div里面才是popover组件
      el: div
    })
    vm.$el.querySelector('button').click()
    vm.$nextTick(() => {
      const {contentWrapper} = vm.$refs.a.$refs
      expect(contentWrapper.classList.contains('position-top')).to.be.false
      done()
    })
  })
4. 测试 mouseEnter 事件
  • 先确认用 dispatchEvent 的方式是可以触发 hover 事件的
    
      
 hihihi
      
      
    

    xxx.addEventListener('mouseenter',function(){
      console.log('hi')
    })

    button.onclick=function(){
      let event = new Event('mouseenter');
      xxx.dispatchEvent(event)
    }
  • 可以设置 trigger 的测试用例有问题,先跳过,it 前面+一个 x 可以跳过

    xit('可以设置 trigger.', (done) => {
      Vue.component('g-popover', Popover)
      const div = document.createElement('div')
      document.body.appendChild(div)
      div.innerHTML = `
      
        
        
      
      `
      const vm = new Vue({ // 这个vm不是组件,这个vm是一个div对应的实例,div里面才是popover组件
        el: div
      })
      let event = new Event('mouseenter');
      vm.$el.dispatchEvent(event)
      vm.$nextTick(() => {
        const {contentWrapper} = vm.$refs.a.$refs
        expect(contentWrapper).to.be.exist
        done()
      })
    })
    
    
最后,个人微信,欢迎交流!

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/240643.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号