久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合

站長(zhǎng)資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

什么是單元測(cè)試?Vue 組件怎么進(jìn)行單元測(cè)試?

本篇文章帶大家了解一下Vue 組件的單元測(cè)試,介紹一下Vue 組件配置單元測(cè)試,進(jìn)行單元測(cè)試的方法,希望對(duì)大家有所幫助!

什么是單元測(cè)試?Vue 組件怎么進(jìn)行單元測(cè)試?

我們先來(lái)簡(jiǎn)單解釋一下單元測(cè)試:就是對(duì)函數(shù)的輸入輸出進(jìn)行測(cè)試,使用斷言的方式,判斷我們輸入的用例的結(jié)果和我們實(shí)際輸入的結(jié)果是否相同

組件的單元測(cè)試就是使用單元測(cè)試工具,對(duì)組件的各種狀態(tài)和行為進(jìn)行測(cè)試

組件單元測(cè)試的好處

  • 提供描述組件行為的文檔
  • 節(jié)省手動(dòng)測(cè)試的時(shí)間
  • 減少研發(fā)新特性時(shí)產(chǎn)生的bug
  • 改進(jìn)設(shè)計(jì)
  • 促進(jìn)重構(gòu)

準(zhǔn)備工作

在我們進(jìn)行單元測(cè)試模擬之前,我們需要對(duì)環(huán)境進(jìn)行一些配置

安裝依賴

  • Vue Test Utils (學(xué)習(xí)視頻分享:vuejs教程)
npm install --save-dev jsdom jsdom-global
  • Jest
npm install --save-dev jest
  • vue-jest
npm install --save-dev @vue/vue2-jest # (use the appropriate version)
  • babel-jest
yarn add --dev babel-jest @babel/core

安裝測(cè)試依賴

yarn add jest @vue/test-utils vue-jest babel-jest -D -W

這里有點(diǎn)小問(wèn)題,如果使用下發(fā)的命令進(jìn)行安裝的話會(huì)出現(xiàn)一點(diǎn)點(diǎn)的小錯(cuò)誤

yarn add jest @vue/test-utils vue-jest babel-jest -D

報(bào)錯(cuò)截圖:

什么是單元測(cè)試?Vue 組件怎么進(jìn)行單元測(cè)試?

Jest 的配置

jest.config.js

module.exports = {   "testMatch": ["**/__tests__/**/*.[jt]s?(x)"],   "moduleFileExtensions": [     "js",     "json",     // 告訴 Jest 處理 `*.vue` 文件     "vue"   ],   "transform": {     // 用 `vue-jest` 處理 `*.vue` 文件     ".*\.(vue)$": "vue-jest",     // 用 `babel-jest` 處理 js     ".*\.(js)$": "babel-jest"    } }

基于上面的測(cè)試文件的配置,我們會(huì)將每個(gè)測(cè)試文件的配置放置于__tests__

創(chuàng)建測(cè)試用例:

項(xiàng)目地址:https://gitee.com/liuyinghao123/task/tree/master/Part7/element

我們使用:packagesinputinput 組件進(jìn)行測(cè)試

packagesinput 文件夾下 創(chuàng)建 __tests__ 文件夾 后創(chuàng)建 input.test.js

這里先給大家普及一下幾個(gè)常用的API

什么是單元測(cè)試?Vue 組件怎么進(jìn)行單元測(cè)試?

測(cè)試用例1 判斷是否是文本框

import input from '../src/input.vue' import { mount } from '@vue/test-utils' // 掛載  describe('lg-input', () => {   test('input-text', () => {     const wrapper = mount(input)     expect(wrapper.html()).toContain('input type="text"')   }) })

這里我們需要 使用@vue/test-utils提供的mount方法進(jìn)行掛載,注意,這里只是在內(nèi)存中進(jìn)行掛載,并且我們需要保存這個(gè)包裹器返回的內(nèi)容

const wrapper = mount(input)

這個(gè)用例很簡(jiǎn)單,就是想要知道我們生產(chǎn)的是否是一個(gè)文本框,這里一個(gè)簡(jiǎn)單的測(cè)試用例就寫完了,接著我們運(yùn)行一下:

yarn test

運(yùn)行結(jié)果

什么是單元測(cè)試?Vue 組件怎么進(jìn)行單元測(cè)試?

修改用例

expect(wrapper.html()).toContain('input type="tex123123123t"')

運(yùn)行結(jié)果

什么是單元測(cè)試?Vue 組件怎么進(jìn)行單元測(cè)試?

什么是單元測(cè)試?Vue 組件怎么進(jìn)行單元測(cè)試?

測(cè)試失敗,提示沒(méi)有找到input type="tex123123123t"的內(nèi)容,符合預(yù)期,沒(méi)有問(wèn)題。

測(cè)試用例2 判斷是否是密碼框

 test('input-password', () => {     const wrapper = mount(input, {       propsData: {         type: 'password'       }     })     expect(wrapper.html()).toContain('input type="password"')   })

我們可以通過(guò)propsData來(lái)進(jìn)行設(shè)置組件的props屬性

運(yùn)行結(jié)果

什么是單元測(cè)試?Vue 組件怎么進(jìn)行單元測(cè)試?

測(cè)試用例3 組件接收值是否正確

  test('input-password', () => {     const wrapper = mount(input, {       propsData: {         type: 'password',         value: 'admin'       }     })     expect(wrapper.props('value')).toBe('admin')   })

這里我們通過(guò)wrapper.props獲取他的props屬性,拿到這個(gè)值之后,進(jìn)行判斷

運(yùn)行結(jié)果

什么是單元測(cè)試?Vue 組件怎么進(jìn)行單元測(cè)試?

測(cè)試用例4 快照的使用

  test('input-snapshot', () => {     const wrapper = mount(input, {       propsData: {         type: 'text',         value: 'admin'       }     })     expect(wrapper.vm.$el).toMatchSnapshot()   })

我們要把掛載的dom對(duì)象拍一個(gè)快照,我們第一次調(diào)用這個(gè)方法的時(shí)候,他會(huì)把這個(gè)內(nèi)容掛載到一個(gè)特殊的文本文件中,當(dāng)我們?cè)俅紊a(chǎn)測(cè)試的時(shí)候,會(huì)將我們剛剛存儲(chǔ)的文件進(jìn)行對(duì)比,如果發(fā)生了變化就會(huì)出現(xiàn)測(cè)試失敗的情況

文件結(jié)構(gòu):

什么是單元測(cè)試?Vue 組件怎么進(jìn)行單元測(cè)試?

修改快照的propsData

propsData: {     type: 'password',     value: 'admin' }

測(cè)試結(jié)果

什么是單元測(cè)試?Vue 組件怎么進(jìn)行單元測(cè)試?

什么是單元測(cè)試?Vue 組件怎么進(jìn)行單元測(cè)試?

刪除快照結(jié)果,重新生成

yarn test -u

總結(jié)

到這里我們的單元測(cè)試簡(jiǎn)單版 Demo 就這樣完結(jié)了,單元測(cè)試對(duì)我們進(jìn)行組件化的開(kāi)發(fā)還是非常重要的,配合 stroyBooks,我們可以做到很多

(學(xué)習(xí)視頻分享:web前端開(kāi)發(fā))

贊(0)
分享到: 更多 (0)
?
網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)
久久精品五月,日韩不卡视频在线观看,国产精品videossex久久发布 ,久久av综合
亚洲欧美高清| 亚洲精品一二三区区别| 亚洲福利专区| 日韩免费在线| 国产图片一区| 欧美中文高清| 国产探花一区| 美女视频网站久久| 中文字幕在线看片| 国产成人精品亚洲日本在线观看| 免费高潮视频95在线观看网站| 成人午夜网址| 88xx成人免费观看视频库| 日韩影院二区| 亚洲va中文在线播放免费| 电影亚洲精品噜噜在线观看| 日韩中文字幕高清在线观看| 蜜桃国内精品久久久久软件9| 亚洲一级少妇| 亚洲精品大全| 水野朝阳av一区二区三区| 亚洲无线观看| 欧美在线日韩| 欧美日韩在线观看首页| 91国语精品自产拍| 日韩在线黄色| 色欧美自拍视频| 国产亚洲永久域名| 国产精区一区二区| 欧美99久久| 国产精品一区二区三区www| 亚洲成a人片| 欧美偷窥清纯综合图区| 国产亚洲一区二区手机在线观看 | 久久一区精品| 激情自拍一区| 亚洲a成人v| 亚洲国产福利| 日韩高清不卡在线| 另类综合日韩欧美亚洲| 香蕉久久久久久久av网站| 国产精品v日韩精品v欧美精品网站| 夜鲁夜鲁夜鲁视频在线播放| 日韩手机在线| 欧美肉体xxxx裸体137大胆| 欧美日韩国产免费观看| 精品一区二区三区视频在线播放 | 久久高清国产| 欧美激情日韩| 免费看黄色91| 久久国产小视频| 九九久久国产| 国产精品毛片aⅴ一区二区三区| 久久要要av| 偷拍精品精品一区二区三区| 国产经典一区| 国产精品香蕉| 日本在线一区二区三区| 国产成人a视频高清在线观看| 日韩高清电影一区| 日本一区福利在线| 尤物在线精品| 亚洲福利国产| 日韩精品影视| 999久久久精品国产| 精品三级av| 精品国产日韩欧美精品国产欧美日韩一区二区三区 | 国产日韩欧美一区二区三区在线观看| 精品国产鲁一鲁****| 日韩av一区二区在线影视| 亚洲国产一区二区三区在线播放| 成人国产综合| 成人亚洲欧美| 91精品国产乱码久久久久久久| 丝袜诱惑一区二区| 91精品啪在线观看国产18| 国内激情久久| 岛国av在线网站| 日韩88av| 99久久久久国产精品| 亚洲午夜在线| 巨乳诱惑日韩免费av| 午夜在线视频一区二区区别| aⅴ色国产欧美| 午夜天堂精品久久久久| 国产精品亚洲产品| 国产黄大片在线观看| 欧美 日韩 国产精品免费观看| 亚洲欧洲一区| 欧美日韩1区2区3区| 91中文字幕精品永久在线| 精品72久久久久中文字幕| 国产va免费精品观看精品视频| 久久青草久久| 亚洲三级国产| 黄毛片在线观看| 99riav1国产精品视频| 日韩影片在线观看| 国产精品成人一区二区不卡| 91久久久精品国产| 欧美一区不卡| 亚洲一级影院| 国产精区一区二区| 最新亚洲一区| 久久精品伊人| 久久精品卡一| 国产亚洲人成a在线v网站| 久久超级碰碰| 欧美日韩三区| 国产日产一区| 激情婷婷久久| 国产丝袜一区| 夜夜嗨一区二区三区| 久久伊人亚洲| 久久精品一区二区国产| 亚洲九九精品| 精品视频一区二区三区四区五区| 1000部精品久久久久久久久| 欧美日一区二区在线观看| 亚洲伦乱视频| 久久中文字幕一区二区| 亚洲精品美女| av资源亚洲| 美女在线视频一区| 国产麻豆综合| 日韩一区二区在线免费| 精品黄色一级片| 日韩精品一级| 欧美二区视频| 久久亚洲精精品中文字幕| 先锋亚洲精品| 91精品99| 国产一区亚洲| 国产一区二区三区四区| 国产精品久久久网站| 亚洲精品极品| 婷婷视频一区二区三区| 成人羞羞视频播放网站| 成人台湾亚洲精品一区二区| 欧美91在线| 国产 日韩 欧美 综合 一区| 电影91久久久| 久久精品国产99久久| 在线观看免费一区二区| 激情综合在线| 鲁大师成人一区二区三区| 亚洲一区欧美二区| 免费视频一区二区| 久久激情五月婷婷| 精品淫伦v久久水蜜桃| 高清av一区二区三区| 欧美午夜不卡| 亚洲乱码视频| 国产精品网站在线看| 成人黄色av| 欧美精选一区二区三区| 综合激情一区| 国产精品对白| 久久蜜桃精品| 久久夜色精品| 国产a久久精品一区二区三区| 免费欧美一区| 国产精品久久久免费| 日韩欧美视频专区| 石原莉奈在线亚洲三区| 久久精品伊人| 亚洲欧美日韩专区| 天堂俺去俺来也www久久婷婷| 国产日韩欧美高清免费| 久久久久.com| 久久国产精品免费一区二区三区| 色婷婷久久久| 国产精品久久久久久久久久白浆| 久久久精品日韩| 国产情侣一区在线| 99pao成人国产永久免费视频| 日本国产精品| 久久男人av资源站| 日韩高清国产一区在线| 1024精品一区二区三区| 国产精品极品| 免费在线观看一区二区三区| 国产精品一区三区在线观看| 亚洲大全视频| 成人在线黄色| 捆绑调教美女网站视频一区| 日韩一区二区三区精品视频第3页 日韩一区二区三区免费视频 | 日韩精品影视| 国产在视频一区二区三区吞精| 免费在线观看视频一区| 麻豆精品蜜桃| 黄色在线观看www| 国产精品99久久免费观看| 亚洲精品电影| 99综合视频| 欧美日韩国产精品一区二区亚洲| 日韩影院二区| 99精品美女| 国产韩日影视精品| 久久要要av|