Abstract

PL/SQL is the most common language for ORACLE database application. It allows the developer to create stored program units (Procedures, Functions, and Packages) to improve software reusability and hide the complexity of the execution of a specific operation behind a name. Also, it acts as an interface between SQL database and DEVELOPER. Therefore, it is important to test these modules that consist of procedures and functions. In this paper, a new genetic algorithm (GA), as search technique, is used in order to find the required test data according to branch criteria to test stored PL/SQL program units. The experimental results show that this was not fully achieved, such that the test target in some branches is not reached and the coverage percentage is 98%. A problem rises when target branch is depending on data retrieved from tables; in this case, GA is not able to generate test cases for this branch.

Highlights

  • PL/SQL is an imperative third generation language (3GL) that was designed for the processing of SQL commands

  • We found that a 100% of condition-decision coverage is impossible to reach in some test programs because there are conditions that cannot be true or false in certain situations

  • A weakness of genetic algorithm (GA) could be observed in the generation of test cases to cover branch, especially when there is a strong dependency in data retrieved from table, such that a specific order is required

Read more

Summary

Introduction

PL/SQL is an imperative third generation language (3GL) that was designed for the processing of SQL commands. ORACLE database can be accessed by calling PL/SQL named block that include functions and procedures. They must be executed properly in order to guarantee a reliable and confidence database system [1]. Dynamic testing techniques execute the program under test on test input data and observe the results. Search-based software testing is an example of dynamic method used to generate test set that can be successfully applied in structural testing. In this paper we apply the GA as a search technique to find test data to test named block in ORACLE; IF-statement and Whilestatement and their combinations are considered [6].

Background and Related Work
Random Test Data Generation
Hill Climbing
Simulated Annealing
The Principles of Genetic Algorithms
Jordan University Hospital Computer System
Branch Cost Functions
Hardware and Software Environment
Experimental Results and Discussions
Conclusions and Future Work
Full Text
Paper version not known

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.