9 ต.ค. 2022 เวลา 02:00 • วิทยาศาสตร์ & เทคโนโลยี
EP63 - Test Doubles คืออะไรและควรใช้อย่างไร? - คำแนะนำจากหนังสือ Software Engineering at Google
.
EP นี้เล่าเรื่องจาก Chapter 13 ในหนังสือ Software Engineering at Google เรื่อง Test Doubles หรือ การใช้ตัวแทนของ implementation หรือ API บางส่วนที่จำเป็นในการเทสต์ เพื่อทำให้การทดสอบนั้นเป็นไปได้อย่างรวดเร็วและสะดวกมากขึ้น
.
ส่ิงที่น่าสนใจคือ Google เชื่อว่า เราไม่ควรใช้ test doubles เยอะๆ เพราะมักจะนำไปสู่ปัญหาในการดูแลรักษาภายหลัง รวมถึงเทสต์ที่ใช้ test doubles ก็ไม่ค่อยมีประโยชน์ในการหาบั๊กสักเท่าไหร่ด้วย คำแนะนำจาก Google คือ เราควรเลือกใช้ implementation จริงเป็นหลักก่อน แล้วค่อยพิจารณาปัจจัยดังต่อไปนี้เมื่อจำเป็นจะต้องตัดสินใจว่าจะใช้ test doubles หรือไม่
.
1. Execution time: เวลาในการทำงานของ implementation หรือ API บางตัว หากว่านานเกินไปจะทำให้ test suite ช้าลงได้มาก จึงอาจจะต้องเปลี่ยนเป็น test doubles
2. Determinism: implementation หรือ API บางตัว มีความไม่แน่นอนในการทำงาน หรือ ความไม่แน่นอนที่มาจาก network connection จึงอาจจะต้องพิจารณาเปลี่ยนโค้ดส่วนนั้นเป็น test doubles เช่นกัน
3. Dependency construction: implementation หรือ API บางตัว มี dependency เยอะ ทำให้เสียเวลาในการเซ็ตอัพ จึงอาจจะสะดวกกว่าที่จะเปลี่ยนเป็น test doubles
.
รายละเอียดจะเป็นอย่างไร ไปฟังกันใน EP นี้ครับ
.
อ่านหนังสือ Software Engineering at Google: https://abseil.io/resources/swe-book
.

ดูเพิ่มเติมในซีรีส์

โฆษณา