Abstract
The aim of software testing is to execute the software code and identify the presence of bugs in the code, unreachable code and detect software failures, so that the defects could be discovered and corrected before the product is released to the end users. Testing process becomes very tedious if the program contains thousands or millions of lines. This tedious work can be handled better, by breaking the software into appropriate modules, and then test each module by the application of unit testing; so as to ensure functional requirements of each module. During testing, automatic generation of dd-graph helps in minimizing computation time and provides an easy way to detect software failures and bugs in a code during execution. The size of the code for a real time application is generally large and dd-graph generation and maneuverability are tedious. Also, identification of unreachable or uncovered porion in the path is practically difficult. The present investigation focuses to display decisions or p-uses in the software code through adjacency matrix under C++ programming language. The proposed approach is expected to be very useful for computer science engineers and software developers.
Similar content being viewed by others
References
Adjacency list generation. [Online]. Available: https://www.sanfoundry.com/c-program-represent-graph-adjacency-list/. Accessed 12 Dec 2018
Aruna M, China Venkateswarlu S, Sree Lakshmi A, Suma Latha P (2011) Automated tool to generate optimized control flow graph for C language. Softw Eng Technol 3:6
Boopathi M, Sujatha R, Senthil Kumar C, Narasimman S, Rajan A (2017) Markov approach for quantifying the software code coverage using genetic algorithm in software testing. Int J Bioinspir Comput 14(1):27–45
Boopathi M, Sujatha R, Senthil Kumar C, Narasimman S (2017) Quantification of software code coverage using artificial bee colony optimization based on Markov approach. Arab J Sci Eng 42(8):3503–3519
Convert edge list to adjacency matrix. [Online]. Available: https://in.mathworks.com/matlabcentral/answers/231627-convert-edge-list-to-adjacency-matrix. Accessed 12 Aug 2018
DD path testing case of a triangle. [Online]. Available: https://www.softwaretestinggenius.com/tutorial-7-dd-path-testing-case-of-a-triangle/. Accessed 15 May 2019
Generate adjacency matrix of undirected graph. [Online]. Available: https://stackoverflow.com/questions/33150887/generate-adjacency-matrix-of-undirected-graph. Accessed 12 Aug 2018
Generation of a weighted directed graphs. [Online]. Available: https://in.mathworks.com/help/matlab/ref/graph.adjacency.html. Accessed 20 Jan 2019
Graph and its representations. [Online]. Available: http://www.geeksforgeeks.org/graph-and-its-representations/.html. Accessed 22 June 2019
Jatana N (2020) Suri B Particle swarm and genetic algorithm applied to mutation testing for test data generation: a comparative evaluation. J King Saud Univ Comput Inf Sci 32(4):514–521
Jun Y, Zhang J (2008) An efficient method to generate feasible paths for basis path testing. Inf Proces Lett 107:87–92
Kaliraj S, Bharathi A (2019) Path testing based reliability analysis framework of component based software system. Measurement 144:20–32
Khamis AM, Girgis MR, Ghiduk AS (2007) Automatic software test data generation for spanning sets coverage using genetic algorithms. Comput Inform 26:383–401
Khan R, Srivastava AK (2019) Automatic software testing framework for all def-use with genetic algorithm. Int J Innov Technol Explor Eng (IJITEE) 8:8
Matlab Biograph. [Online]. Available: http://in.mathworks.com/help/bioinfo/ref/biograph.html. Accessed 22 Aug 2018
Mishra DB, Mishra R, Das KN, Acharya AA (2019) Test case generation and optimization for critical path testing using genetic algorithm. In: Soft computing for problem solving advances in intelligent systems and computing, part of the advances in intelligent systems and computing book series, vol 817. Springer, Singapore, pp 67–80
Saadatjoo MA, Babamir SM (2019) Test-data generation directed by program path coverage through imperialist competitive algorithm. Sci Comput Progr 184:1–19
Srivastava AK, Khan R, Jain S (2019) A tool for generation of automatic control flow graph in unit testing of python programs. Int J Eng Adv Technol (IJEAT) 8(5):1178–1184
Tanwer S, Kumar D (2010) Automatic test case generation of C program using CFG. IJCSI Int J Comput Sci Issues 7(4):27–31
Varshney S, Mehrotra M (2016) Search-based test data generator for data flow dependencies using dominance concepts, branch distance and elitism. Arab J Sci Eng 41(3):853–881
Acknowledgements
The authors thank Atomic Energy Regulatory Board India Project No.: AERB/CSRP/53/06/2013 for providing financial assistance to carry out this work. The authors thank SSN management, Principal for support.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
About this article
Cite this article
Boopathi, M., Sujatha, R. & Senthil Kumar, C. A tool for automatic generation of dd-graph using adjacency matrix for software testing. Life Cycle Reliab Saf Eng 9, 379–387 (2020). https://doi.org/10.1007/s41872-020-00140-1
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s41872-020-00140-1