Generation and Prioritization of Test Scenarios for Object-Oriented Software using UML State Machines

Panthi, Vikas (2017) Generation and Prioritization of Test Scenarios for Object-Oriented Software using UML State Machines. PhD thesis.

[img]PDF ((Full text is restricted up-to 15.09.2020))
Restricted to Repository staff only

3734Kb

Abstract

This thesis presents our work concerning test scenario generation for object-oriented software using Behavioral Model State Machine Diagram. This diagram is used for representing the features or behaviour object-oriented systems, and can be used as a basis for generating test scenarios. We have also prioritized the generated test scenarios using swarm intelligence algorithms such as Ant colony optimization algorithm and Fire fly optimization algorithm. We have also extended our propose approach to generate test scenarios for dynamic web applications. In order to generate test scenarios for object-oriented software. We considered UML 2.0 State Machine Diagram (SMD). This diagram represents the behavioral of an object-oriented System. We have considered Composite states in the state machine diagram, which shows the complexity of the software. In order to generate test scenarios for object-oriented software, we propose an algorithm named SMTSG (State Machine based Test Sequence Generation) algorithm. We have considered nine types of faults in the System Under Test (SUT). After generating the test scenarios, we prioritize them according to their fault detection capability. For prioritization, we execute the test scenarios and detect the faults. This study focuses on analyzing each test scenario with regard to the number of faults detected in state machine diagram. If a test scenario detects more number of faults, then we give it first priority. Accordingly, we prioritize all the generated test scenarios. Finally, we apply Average Percentage of Faults Detected (APFD) metric for evaluating the efficiency of the prioritized test scenarios. Next, we extend our work for generating feasible test scenarios using State Machine Diagram. In this work, we propose an intermediate graph called CCFG (Composite Control Flow Graph). First, we convert the SMD into CCFG for fetching all the information of SMD and transformed CCFG. There may exist many loops in CCFG. Due to the presence of loops many infeasible paths may exist in CCFG. So, we remove all the loops. For this, we propose an intermediate graph called Feasible Control Flow Graph (FCFG). We propose an algorithm named TSGDBFS (Test Scenario Generation using DFS and BFS) for generating feasible test scenarios. This algorithm is a combination of BFS and DFS. We apply TSGDBFS algorithm on FCFS for generating feasible test scenarios. Then, we apply our proposed algorithm TSPACO (Test Scenarios Prioritization using Ant Colony Optimization) for prioritizing the generated test scenarios. TSPACO (Test Scenarios Prioritization using Ant Colony Optimization) algorithm generates weight values for every test scenario. According to the weight values, we prioritize the test scenarios. Finally, we apply APFD metric for evaluating the efficiency of the prioritized test scenarios. Further, we propose an approach for generation and prioritization of test scenarios using firefly optimization algorithm. In this approach, we propose an algorithm called SMToTSG (State Machine To Test Scenarios Generation). This approach also generates feasible test scenarios, but detects one extra fault than the previous approaches. Then, we apply firefly optimization algorithm for prioritizing the generated test scenarios. The generated test scenarios are active and efficient to test the quality of object-oriented software. Finally, we apply APFD metric to determine the effectiveness of the prioritized test scenarios. Finally, we propose an approach to test object-oriented web applications. In this approach, we generate test scenarios for Dynamic Web Applications (DWA). In this approach, we have considered JSP (Java Server Pages) for generating test scenarios for server side approaches. First, we fetch the implicit class object from Java Server Pages (JSP). Then, we use implicit class objects for constructing an intermediate graph called JFG (JSP Flow Graph). Next, we generate test scenarios using our proposed algorithm named JTSG (JSP to Test Scenarios Generation) on intermediate graph JFG. Finally, we construct test cases for all the generated test scenarios.

Item Type:Thesis (PhD)
Uncontrolled Keywords:Test Scenario; Model Based Testing; Fault Model; State based Coverage Criterion; Ant Colony Optimization; Firefly Optimization Algorithm; Dynamic Web Application Testing; Implicit class object; Test Cases.
Subjects:Engineering and Technology > Computer and Information Science > Data Mining
Engineering and Technology > Computer and Information Science > Information Security
Divisions: Engineering and Technology > Department of Computer Science
ID Code:9396
Deposited By:IR Staff BPCL
Deposited On:11 Sep 2018 11:08
Last Modified:11 Sep 2018 11:08
Supervisor(s):Mohapatra, Durga Prasad

Repository Staff Only: item control page