testing Archive

Session เกี่ยวกับการทดสอบจากงาน WWDC 2018

ในงาน WWDC 2018 นั้นมี session ที่น่าสนใจเกี่ยวกับการทดสอบ app ด้วย ซึ่งที่เห็นมามีอยู่ 2 session คือ What’s new in Testing ? Testing tips and tricks จึงทำการสรุปแบบสั้น ๆ ไว้นิดหน่อย

Read More…

ว่าง ๆ มาปรับปรุงการทำงานของ Spring Boot ให้เร็วขึ้น

ปัญหาที่พบเจอในการทดสอบระบบที่พัฒนาด้วย Spring Boot เมื่อเริ่มเขียนชุดการทดสอบของระบบที่พัฒนาด้วย Spring Boot นั้น ชีวิตก็จะสบายขึ้นมาเยอะ เนื่องจาก Spring Boot ได้เตรียม Spring Boot Unit test หรือ Integration test มาให้อยู่แล้ว แต่ขั้นตอนการทำงานภายในนั้น มันจะทำการสร้าง context ขึ้นมาทุกครั้ง ดังนั้นผลที่ตามมาคือ “ความช้า” และนี่แหละคือปัญหาที่ต้องเจอ จะแก้ไขหรือปรับปรุงอย่างไร เพื่อให้ทำการทดสอบได้รวดเร็วขึ้น

Read More…

[Java] มาลองใช้งาน Test containers กัน

โดยปกติการทดสอบในระดับ integration test และ component นั้น มักจะทดสอบผ่านระบบจริง ๆ ซึ่งควบคุมได้ยาก ยกตัวอย่างเช่น การทดสอบกับ Database, Data store รวมไปถึงการทดสอบระดับ UI/Acceptance test ซึ่งต้องทดสอบผ่าน browser แน่นอนว่า การจัดการนั้นไม่ง่ายเลย แต่เมื่อเข้าสู่ยุคของ container แล้วนั้น เรื่องต่าง ๆ เหล่านี้จะง่ายขึ้น แต่แลกมาด้วยการเรียนรู้และเครื่องที่แรงขึ้น หนึ่งในเครื่องมือนั้นคือ Test containers ซึ่งเป็น library ที่พัฒนาด้วยภาษา Java 1.8 ที่สำคัญคือ ใช้งานร่วมกับ JUnit ได้เลย เหมาะมากสำหรับการทดสอบระบบงาน

Read More…

เริ่มต้นเขียน Automation Test กันดีกว่า

มีโอกาสแบ่งปันเรื่องการทดสอบระบบงานแบบอัตโมมัติ (Automation Test) ทั้ง Web, API และ Mobile ใช้การทดสอบเป็นตัวหลักในการขับเคลื่อนการพัฒนา software เป็นสิ่งที่สำคัญและขาดไปไม่ได้เลย ช่วยทำให้เรามีความเชื่อมั่นต่อ code ที่เขียน อีกทั้งลดความกลัวจากการแก้ไข และช่วยให้เรากล้าทดลองทำในสิ่งใหม่ ๆ อีกด้วย แต่สำหรับการเริ่มต้นมันไม่ง่ายเลย จึงทำการสรุปสิ่งที่ควรจะรู้ไว้นิดหน่อย

Read More…

แนะนำ Appraise สำหรับ Visual Testing แบบอัตโนมัติ

ในการพัฒนา software นั้น เรื่อง Look and Feel เป็นสิ่งที่สำคัญมาก ๆ software มีเพียงความสามารถที่ดียังไม่พอ ต้องดูดี สวยงามและใช้งานง่ายอีกด้วย คำถามที่น่าสนใจคือ เราทำการทดสอบกันอย่างไร ? แต่อาจจะกว้างไป เอาแคบลงมาคือ เราทำการทดสอบในส่วนของการแสดงผลอย่างไรบ้าง ? ในเชิงของการทดสอบจะเรียกว่า Visual Testing

Read More…

เมื่อการทดสอบมันน่าเบื่อ ทำอย่างไรดี ?

ในการทดสอบระบบงานนั้น บ่อยครั้งจะพบว่ามันน่าเบื่อ ทั้งการเขียน bug report ทั้งการต้องทดสอบ test case เดิม ๆ ซ้ำแล้วซ้ำอีกอยู่นั่นแหละ ไหนจะต้องปากเปียกปากแฉะ กลายเป็นคนปากจัด จู้จี้ไปโดยปริยาย (แก่ก่อนวัย) มันไม่มีความท้าทายอะไรเลย ทำงานไปวัน ๆ ซึ่งมันน่าเบื่อมาก ๆ

Read More…

ทำความรู้จักกับ Android Test Orchestrator

เนื่องจากมีเหตุต้องมาใช้งาน Android Test Orchestrator เพื่อช่วยแก้ไขปัญหาและปรับปรุงการทำงานของ Instrumentation test ของ Android app ดังนั้นจึงทำการสรุปความรู้พื้นฐานและการใช้งานไว้นิดหน่อย น่าจะเป็นเครื่องมือที่ใช้กันน้อยมาก ๆ แต่มันก็มีประโยชน์นะ

Read More…

[React Testing] ว่าง ๆ มาเริ่มเขียนชุดการทดสอบสำหรับ React กัน Part 2

จาก Part ที่ 1 นั้นเริ่มด้วยการทดสอบระบบ web ด้วย library ชื่อว่า Enzyme ซึ่งจะจำลองการทำงานของ React component ขึ้นมาให้ เราได้ทำการติดตั้ง configuration ตลอดจนเริ่มเขียนชุดการทดสอบแรกไปแล้ว ใน Part 2 นี้จะเริ่มพัฒนาระบบเครื่องคิดเลขกัน โดยจะพยายามเริ่มด้วยชุดการทดสอบ หรือคิดก่อนว่าเราจะทำอะไร และ ต้องได้อะไรออกมา แน่นอนว่ายังคงใช้ Enzyme นั่นเอง มาเริ่มกันดีกว่า

Read More…

[React Testing] ว่าง ๆ มาเริ่มเขียนชุดการทดสอบสำหรับ React กัน Part 1

ในการพัฒนา software นั้น การทดสอบเป็นสิ่งที่สำคัญมาก ๆ เพื่อทำให้นักพัฒนามีความมั่นใจต่อการพัฒนา แน่นอนว่า การทดสอบเหล่านั้นจำเป็นต้องทำงานแบบอัตโนมัติอีกด้วย เมื่อมาพัฒนาระบบ web application ด้วย React แล้ว การทดสอบจึงขาดไปเสียมิได้เลย แต่พบว่าไม่ค่อยมีนักพัฒนาให้ความสำคัญสักเท่าไร หรืออาจจะอยากทำ แต่ไม่รู้ว่าจะเริ่มอย่างไร เพราะว่ามีเครื่องไม้เครื่องมือเยอะมาก ๆ ดังนั้นจึงคิดว่า น่าจะลองสรุปวิธีการของการเขียนชุดการทดสอบ สำหรับการพัฒนาระบบด้วย React ไว้หน่อย เพื่อให้เริ่มต้นได้ง่าย

Read More…

[The Clean Coder] เรื่องของ Test Strategy

จากหนังสือ The Clean Coder นั้น มีเรื่องที่น่าสนใจสำหรับ Professional developer มากมาย หนึ่งในนั้นคือ “Professional developer test their code” การทดสอบ code ที่เขียนเป็นสิ่งที่ดี แต่มันไม่ได้ง่ายแบบที่พูดนะสิ ดังนั้นต้องเขียนแบบไหน เท่าไร ถึงจะดี ก่อนอื่นต้องเริ่มด้วย Test Strategy ที่ดี มาเริ่มเรียนรู้กัน

Read More…