Quantcast
Channel: cc :: somkiat
Viewing all articles
Browse latest Browse all 1997

แบ่งกลุ่มการทดสอบด้วยขนาดดีกว่านะ  Small, Medium, Large

$
0
0

Screen Shot 2558-12-14 at 3.01.19 PM

Screen Shot 2558-12-14 at 3.01.19 PM คำถาม เราทำการเรียกชื่อของการทดสอบผ่าน User Interface (UI) ของระบบว่าอะไร ? คำตอบที่ได้มันจะหลากหลายมาก ๆ ไม่ว่าจะเป็น
  • UI test
  • End-to-End test
  • Acceptance test
  • Functional test
  • System test
  • Web test
  • Selenium test
สิ่งเหล่านี้มันทำให้เกิดความมึนงงอย่างมาก ว่าทำไมมันมีหลายคำตอบเหลือเกิน !! ปัญหาเหล่านี้ มันทำให้เกิดความเข้าใจผิด สำหรับการสื่อสารภายในทีม หรือ องค์กร ดังนั้น เราน่าจะปรับเปลี่ยนบ้างนะ ? คำถาม จะทำการทดสอบพวก Unit test, Integration test ตอนไหนบ้าง ? คำตอบที่ได้จะหลากหลายอีกแล้ว พร้อมด้วยเหตุผลต่าง ๆ นานา

จากปัญหาเหล่านี้นี่เองทาง Google Testing จึงได้เสนอว่า งั้นแบ่งกลุ่มตามการทำงานดีไหม ?

แทนที่จะแบ่งตามชื่อของชนิดการทดสอบเหมือนเดิม ซึ่งมันยากต่อการทำความเข้าใจ และ สื่อสาร ส่วนใหญ่จะใช้การตัดสินจากประสบการณ์ และ ความเคยชิน ดังนั้นเปลี่ยนมันใช้ข้อมูล และ การทำงานจริง ๆ ดีกว่า โดยทำการแบ่งกลุ่มของการทดสอบเป็น 3 กลุ่ม ดังนี้
  1. Small
  2. Medium
  3. Large
ในแต่ละกลุ่มทำการจัดแบ่งด้วยข้อมูลต่าง ๆ ซึ่งเราสามารถใช้เพื่อสรุปได้ว่า การทดสอบของเรานั้นอยู่ในกลุ่มไหน ทำให้เราเข้าใจได้ชัดเจนมากยิ่งขึ้น ทั้งรูปแบบการทดสอบ ไม่ว่าจะผ่านหรือไม่ผ่านระบบ Network ไม่ว่าจะใช้หรือไม่ใช้ Database รวมทั้งเวลาที่ใช้ในการทดสอบ ซึ่งเราสามารถเปลี่ยนให้เข้ากับระบบได้อีกด้วย แสดงดังรูป Screen Shot 2558-12-13 at 8.41.13 PM แน่นอนว่า ตารางนี้อาจจะไม่ครบทุกการทดสอบ แต่คิดว่า น่าจะครอบคลุมในการทดสอบส่วนใหญ่ของระบบต่าง ๆ ตอนนี้น่าจะทำให้เราสามารถกำหนด DEFINITION หรือ คำจำกัดความของการทดสอบได้ง่าย และ ตรงกันแล้วนะ และน่าจะช่วยปรับปรุงเรื่องการพูดคุยของคนในทีม และ องค์กรมากขึ้น !! ดังนั้น Small test น่าจะเป็นพวก Unit test เป็นการทดสอบที่ใช้เวลาน้อย ไม่ทำการใช้งานระบบ Network และ Database Medium test น่าจะเป็นพวก Integration test ทำการทดสอบภายในระบบเดียวกัน Large test น่าจะเป็นพวก End-to-End test, UI test ทำการทดสอบกับระบบภายนอก ใช้งานผ่านระบบ Network และ Database

ถามว่าแล้วมีที่ไหนแบ่งกลุ่มการทดสอบเป็นแบบนี้บ้างล่ะ ?

เท่าที่เห็น และ ใช้งานมาก็มีใน JUnit 4 ใน Android ซึ่งจะมี Annotation ให้ใช้ คือ
  • @Small
  • @Medium
  • @Large
จากการใช้งานทำให้เราสามารถแบ่งกลุ่มการทดสอบได้ชัดเจน รวมทั้งแยกทดสอบได้อีกด้วย ลองนำไปใช้งานดูครับ  

Viewing all articles
Browse latest Browse all 1997

Trending Articles