cari

Rumah  >  Soal Jawab  >  teks badan

javascript - Menggunakan perancah rasmi vue untuk ujian unit, bagaimana untuk menutup pembolehubah dalam jam tangan?

Jam tangan dalam komponen adalah seperti berikut:

player(isPlay) {
  if (isPlay) {
    this.playState = 'play'
  } else {
    this.playState = 'pause'
  }
}

Contoh penggunaan yang berkaitan dalam fail ujian Home.spec.js adalah seperti berikut

it('播放状态切换', () => {
  const Constructor = Vue.extend(Home)
  const vm = new Constructor().$mount()
  vm.playerShow = true
  Vue.nextTick( () => {
    expect(vm.playState).to.equal("play")
  })
  vm.playerShow = false
  Vue.nextTick( () => {
    expect(vm.playState).to.equal("pause")
    done()
  })
})

Selepas menulis ini, semak laporan liputan dan ketahui bahawa bahagian jam tangan kod dalam komponen tidak dilindungi (semua merah)
Sila beritahu saya cara menulis bekas untuk menutup kod jam tangan

typechotypecho2709 hari yang lalu1085

membalas semua(1)saya akan balas

  • 大家讲道理

    大家讲道理2017-06-27 09:21:20

    Walaupun saya tidak tahu sama ada ini pendekatan yang betul, selepas menulisnya dengan cara ini, kod jam tangan akan dilindungi...

    it('播放状态切换', () => {
      const Constructor = Vue.extend(Home)
      const vm = new Constructor().$mount()
      vm._watchers[0].cb(true)
      Vue.nextTick( () => {
        expect(vm.playState).to.equal("play")
      })
      vm._watchers[0].cb(false)
      Vue.nextTick( () => {
        expect(vm.playState).to.equal("pause")
        done()
      })
    })

    balas
    0
  • Batalbalas