嘿,開(kāi)發(fā)者同事! ?你準(zhǔn)備好進(jìn)入vitest的世界了嗎?如果您是測(cè)試新手或者一直在使用其他測(cè)試框架,請(qǐng)不要擔(dān)心。我們將一起探索 vitest,在本文結(jié)束時(shí),您會(huì)很高興嘗試一下!
什么是維泰斯特?
vitest 就像你的代碼的超級(jí)英雄。這是一個(gè)由 vite 提供支持的超快單元測(cè)試框架。但這對(duì)你來(lái)說(shuō)意味著什么?
?? 速度:vitest 速度快得令人難以置信,這意味著您可以花更少的時(shí)間等待,花更多的時(shí)間編碼。
?簡(jiǎn)易設(shè)置:與vite開(kāi)箱即用,超級(jí)容易上手。
?觀看模式:當(dāng)您進(jìn)行更改時(shí),它可以自動(dòng)重新運(yùn)行您的測(cè)試。
?出色的開(kāi)發(fā)者體驗(yàn):它有一個(gè)干凈、直觀的 api,使用起來(lái)很有趣。
讓我們開(kāi)始吧!
想象一下您正在開(kāi)發(fā)一個(gè)新項(xiàng)目。您已經(jīng)有了一些功能,并且想要確保它們正常工作。進(jìn)入維斯特!
首先我們來(lái)安裝vitest:
npm install -d vitest
登錄后復(fù)制
現(xiàn)在,假設(shè)我們有一個(gè)簡(jiǎn)單的函數(shù)要測(cè)試:
// math.js export function add(a, b) { return a + b; }
登錄后復(fù)制
我們?nèi)绾问褂?vitest 進(jìn)行測(cè)試?這非常簡(jiǎn)單!我們來(lái)創(chuàng)建一個(gè)測(cè)試文件:
// math.test.js import { expect, test } from 'vitest' import { add } from './math' test('addition works', () => { expect(add(2, 2)).tobe(4) })
登錄后復(fù)制
哇,這很簡(jiǎn)單,對(duì)吧?我們來(lái)分解一下:
-
我們從vitest導(dǎo)入expect和test。
我們導(dǎo)入add函數(shù)。
我們使用測(cè)試函數(shù)創(chuàng)建一個(gè)測(cè)試。
在測(cè)試中,我們使用expect來(lái)檢查我們的函數(shù)是否正常工作。
運(yùn)行你的測(cè)試
準(zhǔn)備好運(yùn)行測(cè)試了嗎?只需將其添加到您的 package.json 中即可:
{ "scripts": { "test": "vitest" } }
登錄后復(fù)制
現(xiàn)在您可以使用以下命令運(yùn)行測(cè)試:
npm run test
登錄后復(fù)制
瞧!您將在終端中看到測(cè)試結(jié)果。 ?
讓我們來(lái)看看:觀看模式
但是等等,還有更多! vitest 有一個(gè)很棒的觀看模式。就像有一個(gè)私人助理,每次您進(jìn)行更改時(shí)都會(huì)檢查您的代碼。
要使用觀看模式,只需運(yùn)行:
npm run test -- --watch
登錄后復(fù)制
現(xiàn)在,每次您保存文件時(shí),vitest 都會(huì)自動(dòng)重新運(yùn)行您的測(cè)試。就像魔法一樣! ?
提問(wèn)時(shí)間!
讓我們來(lái)互動(dòng)吧。你能猜出這個(gè)測(cè)試的作用嗎?
test('multiply function', () => { expect(multiply(3, 4)).tobe(12) })
登錄后復(fù)制
花點(diǎn)時(shí)間想一想…
準(zhǔn)備好了嗎?此測(cè)試正在檢查乘法函數(shù),以確保它正確地將 3 和 4 相乘得到 12。很酷,對(duì)嗎?
輪到你了!
現(xiàn)在輪到你寫(xiě)測(cè)試了!假設(shè)我們有這個(gè)函數(shù):
export function isEven(number) { return number % 2 === 0 }
登錄后復(fù)制
你能為這個(gè)函數(shù)寫(xiě)一個(gè)測(cè)試嗎?試試吧!
(提示:您需要檢查偶數(shù)和奇數(shù))
總結(jié)
恭喜!您剛剛邁出了進(jìn)入 vitest 世界的第一步。 ? 我們已經(jīng)介紹了基礎(chǔ)知識(shí),但還有更多值得探索的內(nèi)容:
模擬函數(shù)和模塊
測(cè)試異步代碼
將 vitest 與您最喜歡的框架(如 react 或 vue)一起使用
記住,測(cè)試不僅僅是發(fā)現(xiàn)錯(cuò)誤。這是關(guān)于編寫(xiě)更好、更可靠的代碼。有了 vitest,其實(shí)可以很有趣!
那么,你準(zhǔn)備好在你的下一個(gè)項(xiàng)目中嘗試vitest了嗎?相信我,未來(lái)的你會(huì)感謝你的! ?
測(cè)試愉快! ??