ในการทดสอบ มักจะมีการทำงานบางอย่างที่ทำซ้ำๆ ไม่ว่าจะเป็นการเตรียมข้อมูลใหม่ การ clear ข้อมูล หากมีการทำงานซ้ำๆ เราสามารถใช้การ setup และ teardown ได้ โดยสามารถใช้งานได้ดังนี้
Repeating Setup
หากเรามีงานที่ต้องทำซ้ำๆ สำหรับการทดสอบหลายๆ ครั้ง เราสามารถใช้ beforeEach
และ afterEach
hooks ได้
One-Time Setup
ถ้าหากเราต้องการตั้งค่าเพียงครั้งเดียวของการทดสอบในไฟล์ๆ นั้น ให้ใช้ beforeAll
และ afterAll
เพื่อจัดการกับสถานการณ์นี้
Scope
การใช้งาน คำสั่งเหล่านี้ ก็มี scope ของมันอยู่เหมือนกัน หากเราประกาศไว้ข้างนอก จะสามารถใช้งานได้ทั้งหมดกับทุกการทดสอบในไฟล์ๆ นั้น
หากเราประกาศไว้ภายใน describe
ก็เป็นการกำหนดการใช้งานภายใน scope ของ describe
นั้น
ลำดับในการ execution ของ hooks ทั้งหมด