首先,我們來寫乙個類,並把它放入乙個檔案 counter.js 中,**如下。
class counter
addone ()
minusone ()
}export default counter
下面,我們來寫乙個測試檔案,測試這個類。如下。
import counter from './counter.js'
const counter = new counter()
test('測試 counter 中 addone 方法', () => )
test('測試 counter 中 minusone 方法', () => )
上面,兩個測試用例之間的資料是有關聯的,這樣是不太好的。
jest 提供給我們一下鉤子函式,在處理這種問題的時候,就可以使用。
這些鉤子函式例如,beforeall, afterall, beforeeach ...
參考官網介紹
這裡我們使用beforeeach 就好。
import counter from './counter.js'
let counter = null
beforeeach(() => )
test('測試 counter 中 addone 方法', () => )
test('測試 counter 中 minusone 方法', () => )
此外,我們還可以對測試用例進行分組,如下。
import counter from './counter.js'
let counter = null
beforeeach(() => )
describe('測試增加', () => )
test('測試 counter 中 addone 方法', () => )
})describe('測試減少', () => )
test('測試 counter 中 minusone 方法', () => )
})
其實上面的**,就等價於下面。
import counter from './counter.js'
describe('測試counter', () => )
describe('測試增加', () => )
test('測試 counter 中 addone 方法', () => )
})describe('測試減少', () => )
test('測試 counter 中 minusone 方法', () => )
})})
那麼,就很容易看出 beforeeach 這些鉤子,是屬於describe 的(作用域),我們可以在子的 describe 中也增加 鉤子,且它的生效範圍為它下的所有的測試用例。 (六)Jest中鉤子函式
在jest中,如果測試用例中需要使用到某個物件 或 在執行測試 的某個時刻需要做一些必要的處理,直接在測試檔案中寫基礎 是不推薦的,可以使用jest的鉤子函式。鉤子函式概念 在 執行的某個時刻,會自動執行的乙個函式。首先我們舉例 新建counter.js檔案,如下 export default cl...
Jest測試初學(五) Jest中的鉤子函式
jest中的鉤子函式相當於生命週期函式,在執行測試用例時,有先後呼叫的順序。一 jest常用的鉤子函式 beforeall 在測試用例執行之前執行 beforeeach 在每乙個測試用例執行之前執行 afterall 在測試用例執行結束之後執行 aftereach 在每乙個測試用例執行之後執行 im...
(七)Jest鉤子函式作用域
1 describe下都可以擁有自己的鉤子函式,使用的鉤子函式對自己的子describe的測試用例也適用。2 每個子describe也可以設定自己需要的鉤子函式,使用的鉤子函式對自己的測試用例適用。3 說明鉤子函式是有作用域的,而且在describe的範圍內,至於執行順序是由外到內。4 descri...