testing Archive

ลองใช้งาน Spring Cloud Contract (HTTP) กันหน่อย สำหรับ Contract testing

ในการทดสอบระบบงานพวก RESTful API นั้น ๆเราสามารถทดสอบได้หลายวิธี ไม่ว่าจะเป็น API testing tools เช่น Postman Unit, Integration, Component และ End-to-End testing แต่อีกตัวที่น่าสนใจคือ Contract Testingสำหรับการทดสอบการทำงานร่วมกันระหว่าง services ต่าง ๆ

Read More…

ว่าง ๆ มาทดสอบ Kubernetes ด้วย Robot framework กัน

วันนี้เห็น Library ใหม่ที่น่าสนใจสำหรับชาว Robot Frameworkมีชื่อว่า KubeLibrary ใช้สำหรับทดสอบ Kubernetes Cluster นั่นเองซึ่งสามารถทดสอบหรือตรวจสอบการทำงานของ object ต่าง ๆ ที่ deploy ไปว่าทำงานได้อย่างถูกต้อง ตามที่คาดหวังหรือไม่เป็นอีกเครื่องมือสำหรับสาย DevOps เลย

Read More…

บันทึกการใช้งาน Detox สำหรับทดสอบ app ที่พัฒนาด้วย React Native

ในการพัฒนา Mobile app ด้วย React Native นั้นปกติก็จะมีการทดสอบด้วย Jest + React Testing มาให้ด้วยเป็นการทดสอบในระดับ unit test เท่านั้นแต่ปัญหาคือ เราจะมั่นใจได้อย่างไรว่าเมื่อถูก build เป็น App แล้ว ยังสามารถทำงานได้ตามที่คาดหวังหนึ่งในวิธีการคือ การทดสอบ App แบบอัตโนมัติ

Read More…

ทำการปรับปรุงการทดสอบ ด้วยการลดการทดสอบ

คำถามที่น่าสนใจ จากทีมที่เริ่มนำแนวทางของการทดสอบแบบอัตโนมัติมาใช้งานทั้ง Unit testทั้ง API testทั้ง UI testหรือจะเป็น integration, component และ contract test ก็ตามปัญหาที่มักจะพบเจอประกอบไปด้วย ใช้เวลาในการทดสอบเยอะขึ้นเรื่อย ๆ เนื่องจากจำนวน test เยอะขึ้น มี test case จำนวนมากที่ผ่านบ้าง ไม่ผ่านบ้าง ทั้ง ๆ ที่ไม่ได้เปลี่ยนแปลงอะไร (Flaky test) เราจะแก้ไขและปรับปรุงอย่างไรดี

Read More…

น่าสนใจสำหรับ RESTler: Stateful REST API Fuzzing

อ่าน research paper ของ Microsoft เรื่อง RESTler: Stateful REST API Fuzzingเป็นเครื่องมือสำหรับการทดสอบ REST API แบบ Fuzz testing หรือ Fuzzingคือรูปแบบหนึ่งของการทดสอบแบบ blackboxโดยจะพยายามหา bug หรือ ข้อผิดพลาดจาก input ในรูปแบบต่าง ๆ อย่างอัตโนมัติ

Read More…

ลองใช้งาน Smocker สำหรับการทำ HTTP Mock Server

ในการพัฒนาระบบงาน มักจะมีการใช้งาน service อื่น ๆผ่าน HTTP protocol ด้วยเสมอเราจะเรียก service เหล่านั้นว่า dependency บ่อยครั้งที่การ integration test มักจะมีปัญหาดังนั้นจึงต้องทำการจำลอง service เหล่านั้นขึ้นมาเพื่อให้เราสามารถพัฒนาและทดสอบไปได้อย่างราบรื่นหนึ่งในเครื่องมือที่น่าสนใจและลองใช้งานหน่อยคือ Smocker

Read More…

มาลองใช้ BDD ใน Flutter กัน

ในการพัฒนา Flutter App นั้น เรื่องของการทำงานร่วมกันของคนในส่วนต่าง ๆ อย่างราบรื่น ทั้ง tech และ non-techหนึ่งในแนวทางคือ BDD (Behaviour Driven Development)ด้วยการสร้างหรือกำหนดภาษาในการทำงานร่วมกันทั้งส่วนของทีม business, product, development และ QA/Testerรูปแบบที่เรามักจะเห็นบ่อย ๆ คือ Given-When-Then

Read More…

มาใช้งาน @storybook/testing-react กัน

เมื่อกลางเดือนพฤภาคมที่ทีม StoryBook ได้ปล่อย testing-react library ออกมาเพื่อใช้สำหรับการทดสอบ react component ด้วย stories ที่เขียนใน StoryBook ได้เลยไม่ต้องไปเสียเวลาเขียน test case แยกออกจากกันด้วย Jest + React testing library หรือ Enzyme อีกต่อไปซึ่งเป็น pain point หลักของคนใช้งาน แน่นอนว่า มันไม่สนุกเลย

Read More…

Go 1.17 ทำการ run test แบบไม่เรียงลำดับ

เพิ่งเห็นว่าใน Go 1.17 ที่กำลังจะปล่อยออกมานั้นเพิ่มความสามารถในการทดสอบ คือทำการ run test แบบไม่เรียงลำดับ test case เข้ามาช่วยให้เรามั่นใจว่า แต่ละ test case ทำงานเป็นอิสระต่อกันเนื่องจากถ้าแต่ละ test case ต้องทำงานตามลำดับอาจจะส่งผลให้การทดสอบมีปัญหาขึ้นมาได้เยอะเป็นอีกความสามารถที่มีประโยชน์มาก ๆ

Read More…

ว่าด้วยเรื่องของ Widget testing ใน Flutter

สำหรับระบบงานที่พัฒนาด้วย Flutter นั้นเมื่อทำการสร้าง project ใหม่ขึ้นมาจะพบว่าจะมี folder test มาให้ด้วยเสมอพร้อม test case เริ่มต้นมาให้ แต่จากที่เห็นหลาย ๆ project ก็จะไม่มี test case อะไรเพิ่มขึ้นเลยหนักกว่านั้นทำการลบทิ้งไปอีก !! ทำไมนะ ?ทดสอบระบบงานกันแบบไหนนะ

Read More…