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

เทคนิคการทดสอบอัตโนมัติแบบ Keyword Driven Testing

ในช่วงเวลาเดียวกับที่เทคนิคแบบ Data Driven ได้ถูกนำมาใช้เพื่อแก้ไขปัญหาของปริมาณข้อมูลที่ใช้ในการทดสอบเป็นหลักได้มีการนำแนวคิดที่เรียกว่า Modularization มาใช้เพื่อเพิ่มประสิทธิภาพในการทดสอบ ซึ่งเทคนิคดังกล่าวเรียกว่า Keyword-driven หรืออาจถูกเรียกว่า Table Driven ซึ่งเป็นเทคนิคในการทดสอบแบบอัตโนมัติที่มีการแยกส่วนของการโปรแกรมออกจากสคริปต์สำหรับทดสอบ โดยสคริปต์ที่ใช้ในการทดสอบสามารถพัฒนาขึ้นโดยอาศัยความรู้ทางด้านโปรแกรมเข้าช่วย ผลลัพธ์ที่ได้จึงทำให้การบำรุงรักษาทำได้โดยการแก้ไขพียงเล็กน้อย แม้ว่าโปรแกรมที่ถูกทดสอบจะมีการเปลี่ยนแปลงอย่างมากก็ตาม เทคนิคแบบนี้ต้องการพัฒนา คีย์เวิร์ดที่เป็นอิสระจากเครื่องมือในการทดสอบที่ใช้ในการประมวลผล และสคริปต์ที่ประกอบด้วยโค้ดที่ใช้ในการขับเคลื่อนการทดสอบผ่านข้อมูลและโปรแกรม เทคนิคแบบนี้จะมีลักษณะคล้ายกับ กรณีทดสอบของการทดสอบด้วยมือ โดยฟังก์ชันการทำงานของโปรแกรมที่ถูกทดสอบจะถูกบันทึกไว้ภายในตารางเช่นเดียวกับคำสั่งทีละขั้นสำหรับแต่ละการทดสอบ ซึ่งวิธีการนี้จะเป็นกระบวนการทั้งหมดของ Data Driven ซึ่งรวมไปถึงฟังก์ชันการทำงานทั้งหมดนั่นเอง

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



รูป แสดงลำดับการทำงานของเทคนิคแบบ Keyword Driven Testing


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

Keyword

เป็นคำศัพท์ที่ใช้สำหรับอธิบายการทำงานในส่วนที่มีการติดต่อกับผู้ใช้

Actions

เป็นการกระทำเกิดขึ้นของ Keyword

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



รูป แสดงการกำหนดคีย์เวิร์ดจนถึงการเรียกใช้คีย์เวิร์ดฟังก์ชัน

Insert title here