Infeasible path detection and code pattern mining

The quality of automated software testing is severely hampered by the presence of infeasible paths. These paths would cause a testing tool to consume an infinite amount of resource on trying to reach areas which are impossible to get to. Current methods of detecting infeasible paths take a long time...

Full description

Saved in:
Bibliographic Details
Main Author: Lee, Elgin Wei Sheng
Other Authors: Yeo Chai Kiat
Format: Final Year Project
Language:English
Published: 2019
Subjects:
Online Access:http://hdl.handle.net/10356/77245
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Nanyang Technological University
Language: English
id sg-ntu-dr.10356-77245
record_format dspace
spelling sg-ntu-dr.10356-772452023-03-03T20:23:58Z Infeasible path detection and code pattern mining Lee, Elgin Wei Sheng Yeo Chai Kiat School of Computer Science and Engineering DRNTU::Engineering::Computer science and engineering::Software::Programming techniques The quality of automated software testing is severely hampered by the presence of infeasible paths. These paths would cause a testing tool to consume an infinite amount of resource on trying to reach areas which are impossible to get to. Current methods of detecting infeasible paths take a long time and require an immense amount of computing resource. Mainly due to the fact that SAT remains an NP-complete problem[1][2]. The purpose of this research would be to employ a novel method of detecting recurring code patterns among infeasible paths. This technique leverages on the observation that infeasible paths in a similar class would exhibit similar characteristics.This would allow reuse of code patterns and an increase of efficiency in detection. This research produces a tool, JSolve, which is able to mine infeasible code patterns and reuse code patterns for future detection. Ultimately, the tool would get smarter as it detects more infeasible paths and improves itselfover time. A preliminary comparison with industry tools shows an improvement in detection time and reduction of computing resources required. Bachelor of Engineering (Computer Science) 2019-05-21T14:10:03Z 2019-05-21T14:10:03Z 2019 Final Year Project (FYP) http://hdl.handle.net/10356/77245 en Nanyang Technological University 67 p. application/pdf
institution Nanyang Technological University
building NTU Library
continent Asia
country Singapore
Singapore
content_provider NTU Library
collection DR-NTU
language English
topic DRNTU::Engineering::Computer science and engineering::Software::Programming techniques
spellingShingle DRNTU::Engineering::Computer science and engineering::Software::Programming techniques
Lee, Elgin Wei Sheng
Infeasible path detection and code pattern mining
description The quality of automated software testing is severely hampered by the presence of infeasible paths. These paths would cause a testing tool to consume an infinite amount of resource on trying to reach areas which are impossible to get to. Current methods of detecting infeasible paths take a long time and require an immense amount of computing resource. Mainly due to the fact that SAT remains an NP-complete problem[1][2]. The purpose of this research would be to employ a novel method of detecting recurring code patterns among infeasible paths. This technique leverages on the observation that infeasible paths in a similar class would exhibit similar characteristics.This would allow reuse of code patterns and an increase of efficiency in detection. This research produces a tool, JSolve, which is able to mine infeasible code patterns and reuse code patterns for future detection. Ultimately, the tool would get smarter as it detects more infeasible paths and improves itselfover time. A preliminary comparison with industry tools shows an improvement in detection time and reduction of computing resources required.
author2 Yeo Chai Kiat
author_facet Yeo Chai Kiat
Lee, Elgin Wei Sheng
format Final Year Project
author Lee, Elgin Wei Sheng
author_sort Lee, Elgin Wei Sheng
title Infeasible path detection and code pattern mining
title_short Infeasible path detection and code pattern mining
title_full Infeasible path detection and code pattern mining
title_fullStr Infeasible path detection and code pattern mining
title_full_unstemmed Infeasible path detection and code pattern mining
title_sort infeasible path detection and code pattern mining
publishDate 2019
url http://hdl.handle.net/10356/77245
_version_ 1759856624671916032