tdd Archive

แนะนำการเริ่มต้น Test-Driven Development (TDD) สำหรับ Android app

หลังจากที่แบ่งปันความรู้เกี่ยวกับ Test-Driven Development (TDD) สำหรับ Android app ตั้งแต่การเขียน Unit test หรือ Local unit test ที่ไม่ต้องการ Device หรือ Emulator จนถึง Instrumentation test, UI test และ Stress test ที่ต้องใช้ Device หรือ Emulator ในแต่ละ feature ในแต่ละ flow สำหรับผู้เริ่มต้นนั้นไม่ง่ายซะทีเดียว แต่ถ้ามีความพยายามก็ง่ายขึ้นเยอะ ดังนั้นจึงทำการสรุปเส้นทางการเรียนรู้ไว้นิดหน่อย เพื่อให้ง่ายต่อการศึกษามากยิ่งขึ้น เรื่องพื้นฐานมันสำคัญมาก ๆ นะครับ มาเริ่มกันเลย

Read More…

เพื่อความสนุกมาเขียน Unit testing ในภาษา R กัน

หลังจากที่เขียนภาษา R มาสักพัก สิ่งที่น่าสนใจ และ ตั้งคำถามไว้คือ ถ้าอยากเขียน Unit test ในภาษา R มันมี xUnit framework อะไรให้ใช้หรือไม่ ? เมื่อไปค้นหาก็เจอเยอะเลย เช่น RUnit ทำการ update ล่าสุดในปี 2015 svUnit ทำการ update ล่าสุดในปี 2014 testthat ทำการ update ล่าสุดในปี 2016 ดูจากการ update แล้วมาลองใช้งาน testthat กันหน่อยดีกว่า

Read More…

เริ่มต้นศึกษา TypeScript ด้วยแนวทาง Test-Driven Development (TDD)

ในการศึกษาภาษาใหม่ ๆ ด้วยแนวทาง Test-Driven Development (TDD) เป็นสิ่งที่ผมเชื่อว่าเป็นแนวทางที่ทำให้เข้าใจภาษาต่าง ๆ ได้รวดเร็วขึ้น ดังนั้นมาลองศึกษาภาษา TypeScript กันหน่อย ซึ่งถูกสร้างขึ้นมาจากบริษัท Microsoft และเป็น opensource ในการใช้งานจะต้อง compile มาเป็นภาษา JavaScript ก่อนเสมอ ดูแล้วขั้นตอนเยอะเลยนะ ดังนั้นมาเริ่มต้นศึกษาด้วย Hello World กันหน่อย

Read More…

[แปล] ทำความเข้าใจเกี่ยวกับ TDD และ Unit test กันอีกสักหน่อย

เช้านี้นั่งอ่านบทความเก่า ๆ ที่เก็บเอาไว้คือ 5 Common Misconceptions About TDD & Unit Tests อธิบายเกี่ยวกับความเข้าใจผิดเกี่ยวกับ TDD และ Unit Test จึงทำการแปลและสรุปเนื้อหาบางส่วนไว้นิดหน่อย

Read More…

สิ่งที่น่าสนใจจากบทความเรื่อง Last Line Effect

จากบทความเรื่อง Last Line Effect ทำการศึกษาผลกระทบที่มักเกิดกับการ Copy-and-Paste code ซึ่งแน่นอนว่า developer ส่วนใหญ่ชอบใช้งาน แถมใช้งานกันบ่อย ๆ อีกด้วย และบ่อยครั้งพบว่าการกระทำแบบนี้ก่อให้เกิดความผิดพลาดขึ้นมา หนึ่งในข้อผิดพลาดนั้นก็คือ code ใน block หรือบรรทัดท้าย ๆ นั่นเอง มาดูผลการศึกษากัน

Read More…

วิธีการแก้ไขปัญหาตามแนวคิด Test-Driven Development (TDD)

จากหนังสือ TDD by Example ทำการอธิบายวิธีการแก้ไขปัญหา เพื่อย้ายจากสถานะ RED ไปยัง GREEN ตาม life cycle ของ TDD ไว้ 3 วิธีการคือ Obvious implementation Fake it until you make it Triangulation ซึ่งการจะเลือกใช้วิธีการใดนั้น มันขึ้นอยู่กับความรู้ความเข้าใจต่อปัญหาของ developer มันขึ้นอยู่กับแนวทางในการแก้ไขปัญหาของ developer มันขึ้นอยู่กับความสามารถของ developer จึงทำการสรุปพร้อมตัวอย่างไว้นิดหน่อย เพื่อทำให้เราสามารถเดินไปข้างหน้าได้อย่างสม่ำเสมอ จนสามารถแก้ไขปัญหาต่าง ๆ ได้ มาเริ่มกันเลย

Read More…

สรุปข้อดีและข้อเสียของ Test Driven Development (TDD)

วันนี้มาแนะนำการพัฒนาระบบงานด้วยแนวคิด TDD (Test-Driven Development) จึงทำการสรุปข้อดีและข้อเสียของแนวคิดนี้ไว้นิดหน่อย เพื่อทำให้เข้าใจกันมากขึ้น

Read More…

ลำดับของการทดสอบส่งผลต่อประโยชน์ที่จะได้รับจาก TDD นะ

วันนี้ช่วงพักกลางวันจากงาน Conference JCSSE2016 ได้นั่งลองเขียน code ตามแนวคิด TDD (Test Driven Development) เพื่อทบทวนความเข้าใจในเรื่อง Small step (Increamental step) นั่นคือการสร้างระบบให้โตขึ้นอย่างต่อเนื่อง และ เสถียร ด้วยการเขียนชุดการทดสอบนั่นเอง โดยได้ฝึกตามบทความเรื่อง The Right Tests in The Wrong Order สิ่งที่ได้เจอกับตัวเองคือ ถึงแม้ว่าชุดการทดสอบจะถูกต้องและสมเหตุสมผล แต่ถ้าลำดับของการทดสอบมันผิด ก็ส่งผลต่อประโยชน์ที่จะได้รับจาก TDD เช่นกัน

Read More…

สรุปสิ่งที่แบ่งปันเรื่อง Secure Test-Driven Development

วันนี้ไปแบ่งปันเรื่อง Secure Test-Driven Development ในงาน IT Connect :: MiSS Day จัดที่มหาวิทยาลัยเกษตรศาสตร์ ซึ่งสามารถสรุปเนื้อหาหลัก ๆ ได้ดังนี้

Read More…

TDD มันคือหนึ่งความท้าทายของคุณและทีม !!

คำถามที่มักได้ยินมาเสมอ ฟังดูแล้ว TDD (Test-Driven Development) มันเป็นแนวคิดที่ดีนะ แต่เราควรนำมาใช้หรือเปล่านะ ? มันเหมาะสมกับเราหรือเปล่านะ ? ก่อนที่จะตอบนั้น ผมแนะนำให้ทดลองก่อนไหม ว่าแนวคิด และ เทคนิคของ TDD มันช่วยปรับปรุง code และ การพัฒนาระบบงานหรือไม่ ? คำถามต่อมาคือ แล้วจะทดลองกันอย่างไรดีล่ะ

Read More…