unit-test Archive

สิ่งที่นักพัฒนาส่วนใหญ่ลืมก่อนการ commit code

เมื่อวานมีโอกาสแบ่งปันความรู้เรื่องการใช้งาน Version Control ด้วย Git ไป การ commit หรือบันทึกการเปลี่ยนแปลง การ push หรือการส่งการเปลี่ยนแปลงไปยัง remote repository การ pull หรือการดึงการเปลี่ยนแปลงจาก remote repository มายังเครื่องเรา ทั้งหมดนี้คือ การพูดคุยและการทำงานร่วมกันของทีมพัฒนา ยิ่งทำการ commit/push/pull บ่อย ๆ มากเพียงใด ปัญหาที่เกิดก็จะน้อยลงไป !! ลองคิดสิว่าระหว่าง commit บ่อย ๆ กับนาน ๆ ครั้ง แบบไหนจะดีกว่ากัน

Read More…

เขียน Unit Test กันดี ๆ หน่อยนะ

สัปดาห์ที่ผ่านมามีโอกาสแบ่งปันประสบการณ์เรื่อง การเขียน Unit test โดยเป็นสิ่งที่นักพัฒนาทุกคนควรทำ ถ้าเขียน code ได้แล้วก็เขียน Unit test ได้เช่นกัน ที่สำคัญ code ของ Unit test นั้น ต้องได้รับการดูแลเยี่ยง production code นั่นคือ ต้องทำการดูแลและปรับปรุงให้ดีขึ้นอยู่เสมอ มิฉะนั้นมันจะมาทำร้ายเราแน่นอน

Read More…

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

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

Read More…

เริ่มต้นการเขียน unit test สำหรับ JavaScript ด้วยการติดตั้ง

พอดีต้องพัฒนาระบบด้วย JavaScript ซึ่งต้องนำ Webpack มาใช้ด้วย สิ่งแรกที่ต้องการคือ การเขียน unit test เมื่อไปค้นหาก็เจอบทความเกี่ยวกับ Mocha + Webpack เยอะเลย ส่วน assertion ก็นำ chai มาช่วยนิดหน่อย มาเริ่มกันเลย

Read More…

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

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

Read More…

จะหลีกเลี่ยง code ที่ … อย่างไรดี ?

ปัญหาที่นักพัฒนาพบเจอเป็นประจำก็คือ Legacy code (Code ที่ไม่มี test) ซึ่งมีคุณสมบัติเฉพาะตัวนั่นก็คือ พังง่าย !! อาการประมาณว่า แก้ไขตรงนั้นนิดตรงนี้หน่อยแล้วส่วนอื่นพังไปด้วย !! เหมือนกับการแก้ไข bug เพียงตัวเดียวแล้วได้ bug มาอีกเป็นฝูง โดย code เหล่านี้นักพัฒนาต้องเจ็บตัวกันมาทุกคน ไม่ว่าจะมากหรือน้อยก็ตาม เพื่อทำการแก้ไข และ ปรับปรุง code เหล่านี้ให้ดีขึ้น คำถามที่น่าสนใจคือ แล้วเราจะหลีกเลี่ยง code แบบนี้ได้อย่างไร

Read More…

[Android] :: ทำการทดสอบ Custom View ด้วย Robolectric กันนิดหน่อย

พอดีมีคำถามมาจากน้อง ๆ ที่เขียน Android app ว่า ถ้าต้องการทดสอบพวก Custom View โดยไม่ต้องเปิดหรือทดสอบผ่าน Activity ได้ไหม ? ตอบไปแบบไม่คิดว่า ทดสอบยังไงหว่า ไม่ผ่าน Activity !! แต่เมื่อคิดให้ดี ๆ ก็นึกออกว่า สามารถทดสอบด้วยการใช้ Robolectric เมื่อไปค้นหาเจอบทความเก่าหน่อยแต่อธิบายได้ดี เรื่อง Android: Unit testing custom views เลยเอามาลองใช้งานดูนิดหน่อย

Read More…

[iOS]แนะนำ trainer เครื่องมือสำหรับการสร้างผลการทดสอบในรูปแบบ JUnit

ในการทดสอบ iOS app ผ่านระบบ Continuous Integration นั้น จำเป็นต้องทำการทดสอบทั้ง Unit test และ UI test และสร้างผลการทดสอบในรูปแบบ JUnit เพื่อสรุปผลการทดสอบต่าง ๆ ให้ง่ายและชัดเจน ปกติจะใช้ xcpretty ร่วมกับ xcodebuild แต่ว่าจะลำบากขึ้นเมื่อใช้งานร่วมกับ XCode 8 ดังนั้นทางผู้พัฒนา fastlane ก็ได้สร้างเครื่องมือใหม่ชื่อว่า trainer ขึ้นมา ซึ่งใช้ง่ายกว่า และ ทำการได้รวดเร็วกว่า ดังนั้นลองมาใช้งานกันดูหน่อย

Read More…

VDO อธิบายเรื่อง Unit Test แบบขำ ๆ 15 นาที

มีโอกาสอธิบายเรื่อง Developer testing ให้กับทีมพัฒนาฟังประมาณ 1-2 ชั่วโมง ซึ่งหนึ่งในนั้นคือเรื่อง Unit testing ซึ่งเป็นสิ่งที่ดีและสำคัญ แต่มักไม่ค่อยมีใครทำ !!

Read More…

มาเขียน Unit test แบบแย่ ๆ กัน

ในการเขียนการทดสอบแบบอัตโนมัตินั้น (Automated testing) มีรูปแบบ แนวคิด และ เทคนิคการเขียนที่ดีมากมาย แต่ developer มักจะบอกว่า มันเยอะมาก ๆ ทำไปก็เหนื่อยเพิ่มขึ้นอีก เสียเวลา … สุดท้ายก็ไม่ทำ !! ดังนั้นเพื่อให้มันเข้าใจง่ายกว่าเดิม มาพูดถึงวิธีการที่มันแย่ ๆ ดีกว่า เพื่อทำให้รู้ ให้เห็น แลเข้าใจได้ง่ายขึ้น

Read More…