Test case generation technique for concurrency in activity diagram

Presently, the application of Model-Based Testing (MBT) using Unified Modelling Language (UML) has attracted the attention of many practitioners to use UML diagrams for generation of test cases. By using this technique, early detection of faults can be achieved at the design phase. However, some UML...

Full description

Saved in:
Bibliographic Details
Main Authors: Abdul Rahman, Nur Syafiqah Zahirah, Abang Jawawi, Dayang Norhayati
Format: Thesis
Language:English
Published: 2018
Subjects:
Online Access:http://eprints.utm.my/id/eprint/98331/1/NurSyafiqahZahirahAbdulRahmanMSC2018.pdf.pdf
Tags: Add Tag
No Tags, Be the first to tag this record!
id my-utm-ep.98331
record_format uketd_dc
spelling my-utm-ep.983312022-12-07T07:31:33Z Test case generation technique for concurrency in activity diagram 2018 Abdul Rahman, Nur Syafiqah Zahirah Abang Jawawi, Dayang Norhayati T Technology (General) Presently, the application of Model-Based Testing (MBT) using Unified Modelling Language (UML) has attracted the attention of many practitioners to use UML diagrams for generation of test cases. By using this technique, early detection of faults can be achieved at the design phase. However, some UML diagrams have limitations in generating test cases such as the need for a loop combination fragment to describe looping, iteration process and combination fragment with the par operator to interpret concurrency activities. To overcome these issues, a feature analysis was conducted to observe the outcome of test case generation using similar cases but, by using different techniques and UML diagrams. Based on the results, a guideline for selecting UML diagrams in the generation of test cases based on the different features of software system in the cases was developed. However, system design of concurrent software is complex, leading to issues in system testing such as synchronization, non-deterministic, path explosion and deadlock. In this research, an enhancement of the generate-activity-paths algorithm as a test case generation technique was developed to solve the non-deterministic problem of concurrent system. As the test cases are generated in a random order, a prioritization technique using genetic algorithm was applied to find the critical path that must be tested first from the test paths produced. The technique was implemented on the Conference Management System case study and evaluated using cyclomatic complexity, branch coverage, mutation analysis and average percentage of fault detected (APFD) to measure the effectiveness and quality of the test cases in comparison to those using the original technique. Results indicated that the technique achieved 100% basis path and branch coverage criteria similar to the original technique. Moreover, it is also capable of revealing non-deterministic faults by injecting concurrency coverage criteria into the test paths, which was not possible using the original technique. Additionally, prioritization of test paths yielded an APFD value of 43% which is better and higher than the non-prioritized test paths (22%). This result signified that the usage of prioritization technique leads to an improve detection rate of severe faults as compared to applying random order. 2018 Thesis http://eprints.utm.my/id/eprint/98331/ http://eprints.utm.my/id/eprint/98331/1/NurSyafiqahZahirahAbdulRahmanMSC2018.pdf.pdf application/pdf en public http://dms.library.utm.my:8080/vital/access/manager/Repository/vital:144589 masters Universiti Teknologi Malaysia Faculty of Engineering - School of Computing
institution Universiti Teknologi Malaysia
collection UTM Institutional Repository
language English
topic T Technology (General)
spellingShingle T Technology (General)
Abdul Rahman, Nur Syafiqah Zahirah
Abang Jawawi, Dayang Norhayati
Test case generation technique for concurrency in activity diagram
description Presently, the application of Model-Based Testing (MBT) using Unified Modelling Language (UML) has attracted the attention of many practitioners to use UML diagrams for generation of test cases. By using this technique, early detection of faults can be achieved at the design phase. However, some UML diagrams have limitations in generating test cases such as the need for a loop combination fragment to describe looping, iteration process and combination fragment with the par operator to interpret concurrency activities. To overcome these issues, a feature analysis was conducted to observe the outcome of test case generation using similar cases but, by using different techniques and UML diagrams. Based on the results, a guideline for selecting UML diagrams in the generation of test cases based on the different features of software system in the cases was developed. However, system design of concurrent software is complex, leading to issues in system testing such as synchronization, non-deterministic, path explosion and deadlock. In this research, an enhancement of the generate-activity-paths algorithm as a test case generation technique was developed to solve the non-deterministic problem of concurrent system. As the test cases are generated in a random order, a prioritization technique using genetic algorithm was applied to find the critical path that must be tested first from the test paths produced. The technique was implemented on the Conference Management System case study and evaluated using cyclomatic complexity, branch coverage, mutation analysis and average percentage of fault detected (APFD) to measure the effectiveness and quality of the test cases in comparison to those using the original technique. Results indicated that the technique achieved 100% basis path and branch coverage criteria similar to the original technique. Moreover, it is also capable of revealing non-deterministic faults by injecting concurrency coverage criteria into the test paths, which was not possible using the original technique. Additionally, prioritization of test paths yielded an APFD value of 43% which is better and higher than the non-prioritized test paths (22%). This result signified that the usage of prioritization technique leads to an improve detection rate of severe faults as compared to applying random order.
format Thesis
qualification_level Master's degree
author Abdul Rahman, Nur Syafiqah Zahirah
Abang Jawawi, Dayang Norhayati
author_facet Abdul Rahman, Nur Syafiqah Zahirah
Abang Jawawi, Dayang Norhayati
author_sort Abdul Rahman, Nur Syafiqah Zahirah
title Test case generation technique for concurrency in activity diagram
title_short Test case generation technique for concurrency in activity diagram
title_full Test case generation technique for concurrency in activity diagram
title_fullStr Test case generation technique for concurrency in activity diagram
title_full_unstemmed Test case generation technique for concurrency in activity diagram
title_sort test case generation technique for concurrency in activity diagram
granting_institution Universiti Teknologi Malaysia
granting_department Faculty of Engineering - School of Computing
publishDate 2018
url http://eprints.utm.my/id/eprint/98331/1/NurSyafiqahZahirahAbdulRahmanMSC2018.pdf.pdf
_version_ 1776100581043077120