Test Doubles ในโลก Unit Testing มีอะไรบ้าง?

เยอะจุงเบย

Object ที่ถูกสร้างขึ้นมาเพื่อใช้ในการทดสอบระบบ ถูกเรียกว่า Test Doubles ประกอบด้วยชื่อต่างๆมากมาย เริ่มตั้งแต่

Mock — (Behavior)

Object ภายใต้สโคปของการเทส ถูกสร้างขึ้นมาแทนเพื่อใช้ ตรวจสอบพฤติกรรมว่าตรงตามความต้องการหรือไม่

https://stackoverflow.com/questions/2665812/what-is-mocking

Stub — (State)

กำหนดสถานะของ Class หรือ Method ที่ทำการทดสอบ เช่น กำหนดค่าออพเจคที่ทำการทดสอบ

บางครั้งเรียก Dummy Object, Fake Object, Fake Data, Dummy Class

Fake

บางสถานการณ์มี dependency ที่ไม่ต้องการเทสโดยตรงเช่น in-memory database, http, mail server

เราอาจจำลอง พวก nockHTTP, FakeSMTP Server มาแทน แล้วทำงานคู่กับ Stub และ Mock ว่าเราได้

  • state ที่ตรงตามความต้องการ
  • และ behavior ที่ถูกต้อง

จริงๆแล้วยังมีอีก Spy

Sign up to discover human stories that deepen your understanding of the world.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

--

--

Teerapong Singthong 👨🏻‍💻
Teerapong Singthong 👨🏻‍💻

Written by Teerapong Singthong 👨🏻‍💻

Engineering Manager, ex-Solution Engineering Lead at LINE | Tech | Team Building | System Design | Architecture | SWE | Large Scaling System

No responses yet

Write a response