久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

javascript - 使用vue官方腳手架進行單元測試,如何覆蓋到watch里的變量?

瀏覽:138日期:2023-08-28 09:05:13

問題描述

組件中的watch如下:

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

測試文件Home.spec.js中的相關用例如下

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() })})

這樣寫了之后查看覆蓋率報告,發現組件中watch部分代碼沒有被覆蓋(都是紅的)請教下如何寫用例才能夠把watch的代碼覆蓋到

問題解答

回答1:

雖然不知道是不是正確的做法,這樣寫了之后,就能覆蓋到watch的代碼了...

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() })})

標簽: JavaScript
主站蜘蛛池模板: 仪征市| 九台市| 蓬溪县| 常山县| 琼海市| 鄂伦春自治旗| 息烽县| 昭觉县| 辰溪县| 彰武县| 囊谦县| 财经| 民乐县| 金沙县| 四会市| 蒙阴县| 梓潼县| 塔城市| 肥城市| 新营市| 嘉禾县| 沧州市| 襄垣县| 金寨县| 阿图什市| 岳阳县| 改则县| 甘谷县| 资中县| 虞城县| 盐边县| 合阳县| 通江县| 山东省| 徐汇区| 屏东市| 黎川县| 新巴尔虎左旗| 昌黎县| 图们市| 教育|