บทความด้านการทดสอบซอฟต์แวร์

ความรู้เบื้องต้นเกี่ยวกับ การทดสอบอัตโนมัติ

การทดสอบอัตโนมัติถูกนำมาใช้เพื่อช่วยลดความผิดพลาดในการทำงานของนักทดสอบที่อาจเกิดความล้าขึ้นเนื่องจากมีจำนวนการทดสอบที่เกิดขึ้นซ้ำ ๆ เป็นระยะเวลายาวนานติดต่อกัน ในทางปฏิบัติแล้วการทดสอบอัตโนมัติเป็นการประมวลผลโปรแกรมภายใต้การทดสอบด้วยคอมพิวเตอร์นั่นเอง เป้าหมายหลักของการทดสอบแบบอัตโนมัติคือความพยายามในการลดเวลาและจำนวนการทดสอบด้วยมือที่มีการติดต่อกันระหว่างนักทดสอบและโปรแกรม ซึ่งในกรณีนี้หากฟังก์ชันการทำงานของโปรแกรมถูกเลือกทดสอบอย่างรอบคอบผลลัพธ์จากการทดสอบสามารถนำมาใช้เป็นเครื่องยืนยันถึงความถูกต้องของโปรแกรมได้เป็นอย่างดี

ในปัจจุบันการทดสอบแบบอัตโนมัติได้รับความนิยมในการใช้งานมากขึ้น ๆ ทั้งนี้เนื่องจากการประมวลผลการทดสอบใช้เวลาน้อยกว่าการทดสอบด้วยมือ แม้ว่าเวลาในการประมวลผลสคริปต์จะเท่ากันก็ตาม แต่เวลาในการจัดการและแปลผลลัพธ์จะใช้เวลาน้อยกว่า นอกจากนั้นแล้วการทดสอบแบบอัตโนมัติเป็นกระบวนการที่ต้องการทำงานซ้ำ ๆ ดังนั้นจึงเหมาะสมอย่างยิ่งในกรณีที่ต้องการรันการทดสอบหลาย ๆ ครั้ง เมื่อเปรียบเทียบกับการทดสอบด้วยมือนักทดสอบอาจเกิดความเบื่อหน่ายและอ่อนล้าจากการทดสอบแบบเดิม ๆ ซ้ำแล้วซ้ำอีก ซึ่งอาจส่งผลให้เกิดความผิดพลาดในการทดสอบขึ้นได้ แต่ในทางตรงกันข้ามการทดสอบแบบอัตโนมัติจะได้ผลลัพธ์ในแต่ละครั้งที่ไม่มีการเปลี่ยนแปลงไม่ว่าจะเป็นการทดสอบจำนวนกี่ครั้งก็ตาม สำหรับข้อบกพร่องที่ถูกค้นพบและมีการแก้ไขเรียบร้อยแล้ว การทดสอบแบบอัตโนมัติสามารถเพิ่มการตรวจสอบสำหรับข้อบกพร่องเหล่านั้นเพื่อให้แน่ใจว่าข้อบกพร่องนั้น ๆ จะไม่กลับมาปรากฏอยู่ภายในโปรแกรมอีกต่อไป ซึ่งในกรณีนี้จะช่วยเพิ่มความสมบูรณ์ให้กับการทดสอบมากยิ่งขึ้น

ขั้นตอนการทำงานของเครื่องมือทดสอบแบบอัตโนมัติที่ถือว่ายุ่งยากที่สุดคือการแปลงขั้นตอนการทำงานด้วยมือให้เป็นขั้นตอนที่เครื่องมือทดสอบแบบอัตโนมัติสามารถทำงานแทนได้ ขั้นตอนดังกล่าวจำเป็นต้องเลียนแบบการทำงานด้วยมือไว้ก่อน จากนั้นจึงแปลงเป็นภาษาสคริปต์หรือโปรแกรมที่เครื่องมือทดสอบแบบอัตโนมัติสามารถนำโปรแกรมดังกล่าวมาใช้ในการรันการทดสอบในภายหลังได้ นอกจากนั้นยังสามารถแก้ไขเพิ่มเติมส่วนที่เป็นโปรแกรมดังกล่าวเพื่อให้เหมาะสมกับการทดสอบที่ต้องการได้ ดังนั้นขั้นตอนนี้จึงจำเป็นต้องใช้เทคนิคต่าง ๆ เข้าช่วยในการสร้างขั้นตอนทดสอบแบบอัตโนมัติดังกล่าว ซึ่งเทคนิคที่ได้รับความนิยมในการใช้งานดังกล่าวมีดังต่อไปนี้

  • เทคนิคการทดสอบอัตโนมัติแบบ Record/Playback
  • เทคนิคการทดสอบอัตโนมัติแบบ Data-Driven
  • เครื่องดื่ม น้ำชา เทคนิคการทดสอบอัตโนมัติแบบ Keyword-Driven หรือ Table-Driven Testing

Insert title here