為什麼使用Jest?
1. Jest 可以利用其特有的快照測試功能,通過比對 UI 代碼生成的快照檔案,實作對 React 等常見架構的自動測試。此外, Jest 的測試用例是并行執行的,而且隻執行發生改變的檔案所對應的測試,提升了測試速度
2.安裝配置簡單,非常容易上手,幾乎是零配置的,通過npm 指令安裝就可以直接運作了
3. Jest 内置了測試覆寫率工具istanbul,可以通過指令開啟或者在 package.json 檔案進行更詳細的配置。運作 istanbul 除了會再終端展示測試覆寫率情況,還會在項目下生産一個 coverage 目錄,内附一個測試覆寫率的報告,讓我們可以清晰看到分支的代碼的測試情況。
4. 內建了斷言庫,不需要再引入第三方的斷言庫,并且非常完美的支援React元件化測試。
安裝Jest
- 輸入如下指令
,在項目中進行初始化package.jsonnpm init -y
- 全局安裝Jest:輸入如下指令
npm install jest -g
使用Jest
建立需要被測試的js檔案檔案(進行聲明變量,并将其導出):
//聲明變量
const helloTest = "hello world";
//列印該變量
console.log(helloTest);
//将其成員導出
module.exports = helloTest
建立檔案夾名稱為
__test__
,聲明測試檔案,檔案名稱最好符合規範為,測試檔案名稱+
.spec.js
,具體看圖為例:

在
index.spec.js
中輸入如下代碼:
test("測試hello World", () => {
//将index.js導出的變量指派給ret
const ret = require("../index")
//斷言
//如果ret等于hello world的話則認為斷言成功,如果不等于的話則認為斷言失敗使得報錯
expect(ret).toBe("hello world")
})
在控制台運作如下代碼
jest helloworld
,語句中的helloworld代表檔案夾,是以需要在hellowolrd檔案夾的父級目錄輸入如下語句進行測試。測試結果:
代表斷言成功,比對到了ret變量中的hello world字元串。
結束
有幫助的話就點個贊呗~