Chulalongkorn University Theses and Dissertations (Chula ETD)

เครื่องมือตรวจสอบความครอบคลุมการทดสอบแบบบูรณาการของซอฟต์แวร์เชิงวัตถุ

Other Title (Parallel Title in Other Language of ETD)

A TOOL FOR CHECKING INTEGRATION TESTING COVERAGE OF OBJECT-ORIENTED SOFTWARE

Year (A.D.)

2013

Document Type

Thesis

First Advisor

ธาราทิพย์ สุวรรณศาสตร์

Faculty/College

Faculty of Engineering (คณะวิศวกรรมศาสตร์)

Degree Name

วิทยาศาสตรมหาบัณฑิต

Degree Level

ปริญญาโท

Degree Discipline

วิศวกรรมซอฟต์แวร์

DOI

10.58837/CHULA.THE.2013.1061

Abstract

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

Other Abstract (Other language abstract of ETD)

One of main points of software testing is test coverage which has to be covered because defects may exist in uncover parts and appear when users try to use them. Nowadays the object-oriented software is more interesting, which the test method differs from the conventional software, so some of available techniques and tools cannot be applied to object-oriented software. The important testing process of object-oriented software is integration testing which has to be covered. However, there are no tools for checking the integration testing coverage of object-oriented software. In addition, there are no tools which generate additional test cases in case of the existing test cases cannot cover the code. We implement the tool for checking integration testing coverage of object-oriented software. The tool instruments tested source code to check whether the tested parts are executed or not and check which classes or methods are executed. After that the tool outputs the coverage result which is percentage of covered class and percentage of covered method. Moreover, the tool generates additional test cases from sequence diagrams and use case descriptions in case there are uncover classes or methods in order to increase the integration testing coverage of object-oriented software. After that, we test this tool with 13 systems. The tool can check the integration testing coverage correctly and it can generate additional test cases.

Share

COinS