Chulalongkorn University Theses and Dissertations (Chula ETD)
วิธีการเรียงลำดับคลาสสำหรับการทดสอบแบบบูรณาการโดยใช้เทคนิคการตัดส่วนเชิงวัตถุ
Other Title (Parallel Title in Other Language of ETD)
An approach of ordering class for integration testing using object-oriented slicing technique
Year (A.D.)
2008
Document Type
Thesis
First Advisor
ธาราทิพย์ สุวรรณศาสตร์
Faculty/College
Faculty of Engineering (คณะวิศวกรรมศาสตร์)
Degree Name
วิศวกรรมศาสตรมหาบัณฑิต
Degree Level
ปริญญาโท
Degree Discipline
วิศวกรรมคอมพิวเตอร์
DOI
10.58837/CHULA.THE.2008.1407
Abstract
การทดสอบแบบบูรณาการเป็นการหาข้อผิดพลาดในการทำงานร่วมกันระหว่างส่วนประกอบของซอฟต์แวร์ ในการทดสอบแบบบูรณาการสำหรับซอฟต์แวร์เชิงวัตถุ จำเป็นต้องกำหนดลำดับคลาสที่นำมาทดสอบ แต่ปัญหาของการเรียงลำดับคลาสคือ การเรียงลำดับคลาสโดยที่ความสัมพันธ์ระหว่างคลาสมีการเรียกที่ขึ้นต่อกันแบบมีวง สำหรับวิธีการเรียงลำดับคลาสวิธีอื่นๆ จะทำการลบความสัมพันธ์ระหว่างคลาสเพื่อขจัดการเรียกที่ขึ้นต่อกันแบบมีวง โดยจะต้องสร้างสตับขึ้นเพื่อใช้ทดสอบคลาสที่ถูกลบความสัมพันธ์ งานวิจัยนี้นำเสนอวิธีการเรียงลำดับคลาสสำหรับการทดสอบแบบบูรณาการ วิธีการนี้ใช้การตัดส่วนเชิงวัตถุในการขจัดการเรียกที่ขึ้นต่อกันแบบมีวง เพื่อลดจำนวนสตับในการเรียงลำดับคลาสสำหรับทำการทดสอบ วิธีการเรียงลำดับคลาสสำหรับการทดสอบแบบบูรณาการที่เสนอในวิทยานิพนธ์นี้ประกอบด้วยขั้นตอนหลัก 3 ขั้นตอนได้แก่ ขั้นตอนการวิเคราะห์ความสัมพันธ์ระหว่างคลาส ขั้นตอนการขจัดการเรียกที่ขึ้นต่อกันแบบมีวง และขั้นตอนการเรียงลำดับคลาส โดยในขั้นตอนการวิเคราะห์ความสัมพันธ์ระหว่างคลาส วิทยานิพนธ์นี้ใช้ทาร์จันอัลกอริทึมในการหากลุ่มคลาสที่ความสัมพันธ์ระหว่างคลาสมีการเรียกที่ขึ้นต่อกันแบบมีวง จากนั้นจึงทำการแบ่งประเภทกลุ่มคลาสที่มีการเรียกที่ขึ้นต่อกันแบบมีวง สำหรับการขจัดการเรียกที่ขึ้นต่อกันแบบมีวงซึ่งเป็นขั้นตอนถัดไปนั้น ใช้การตัดส่วนเชิงวัตถุในการขจัดการเรียกที่ขึ้นต่อกันตามประเภทของกลุ่มคลาสที่ได้แบ่งประเภทไว้แล้ว เมื่อการเรียกที่ขึ้นต่อกันแบบมีวงถูกขจัดจนหมด จึงเรียงลำดับคลาสเป็นขั้นตอนสุดท้าย ในงานวิทยานิพนธ์นี้ได้พัฒนาเครื่องมือเพื่อทดสอบวิธีการที่นำเสนอ และทดลองเรียงลำดับคลาสสำหรับการทดสอบแบบบูรณาการจากโปรแกรมเชิงวัตถุ ผลที่ได้จากการทดลองกับกรณีศึกษา 3 ระบบ แสดงให้เห็นว่า วิธีการเรียงลำดับการบูรณาการคลาสโดยใช้เทคนิคการตัดส่วนเชิงวัตถุ มีการใช้สตับน้อยกว่าวิธีการเรียงลำดับคลาสวิธีอื่นๆ
Other Abstract (Other language abstract of ETD)
Integration testing is to find component faults that cause inter-component failures. Integration testing for object-oriented software needs ordering classes to be tested. However, a problem of ordering classes is the determination of cyclic dependency calls. Most approaches proposed ordering classes by removing relationships to break cycles. Removing a relationship would require a stub to be created for testing classes at the end of the relationship. This thesis presents an approach of ordering class for integration testing using object-oriented slicing technique to break cyclic dependencies. The objective is to minimize a number of test stubs in ordering classes. The proposed approach consists of three steps: analyzing relationship step, breaking cycle step, and sorting class step. In the analyzing relationship step, this research uses tarjan algorithm for detecting cycle, then classifies classes with cyclic dependencies to cycle type. Breaking cycles, which is the next step, uses object-oriented slicing to break cycles by cycle type. After no cycle remains, the final step is ordering classes. This thesis develops a tool to test this approach and, to demonstrate ordering classes for integration testing from object-oriented software. The result of our experiments with three case studies indicates that an approach for ordering class integration using object-oriented slicing technique use less test stubs than other approaches
Creative Commons License

This work is licensed under a Creative Commons Attribution-NonCommercial-No Derivative Works 4.0 International License.
Recommended Citation
เจริญไพบูลย์กิจ, จุฑารัตน์, "วิธีการเรียงลำดับคลาสสำหรับการทดสอบแบบบูรณาการโดยใช้เทคนิคการตัดส่วนเชิงวัตถุ" (2008). Chulalongkorn University Theses and Dissertations (Chula ETD). 67260.
https://digital.car.chula.ac.th/chulaetd/67260