Performance Analysis of Test Path Generation Techniques Based on Complex Activity Diagrams
DOI:
https://doi.org/10.31449/inf.v45i2.3049Abstract
Effort reduction in software testing is important to reduce the total cost of the software development project. UML activity diagram is used by the tester for test path generation. It is hard to select the appropriate test path generation technique to diminish the effort of software testing. In the experiment, we compared the efficiency of 11 commonly-used test path generation techniques with both simple activity diagrams and the constructed complex activity diagrams. The experimental results summarized in three aspects. 1) For all possible path testing, the Activity Convert Grammar was the most appropriate test path generation technique, which can generate the number of paths equivalent to the target number of all possible paths. 2) Testing all possible paths for the large or complex object-oriented method is laborious. Almost all techniques could generate test paths that cover basis path coverage. 3) To compare the efficiency of test path generation algorithms, the percentage test path deviation to the target number of all possible paths of the Activity Convert Grammar was 0% for both a Complex Concurrent Structure activity diagram and a Complex Control Structure activity diagram. We also suggested the suitable UML activity diagram for each test path generation method.References
Oluwagbemi, O., & Asmuni, H. (2015). Automatic generation of test cases from activity diagrams for UML based testing (UBT). Jurnal Teknologi (Science & Engineering), UTM University Teknologi Malaysia, 77(13), pp. 37-48. https://doi.org/10.11113/jt.v77.6358.
Paiboonkasemsut, P., & Limpiyakorn, Y. (2015). Reliability tests for process flow with fault tree analysis. 2015 2nd International Conference on Information Science and Security (ICISS), IEEE, 14-16 December, Seoul, South Korea, pp. 1-4. https://doi.org/10.1109/ICISSEC.2015.7371028.
Swain, R.K., Panthi, V., Mohapatra, D.P., & Behera, P.K. (2014). Prioritizing test scenarios from UML communication and activity diagrams. Innovations in Systems and Software Engineering, Springer Verlag, 10(3), pp. 165-180.
https://doi.org/10.1007/s11334-013-0228-5.
Yin, Y., Xu, Y., Miao, W., & Chen, Y. (2017). An automated test case generation approach based on activity diagrams of SysML. International Journal of Performability Engineering, RAMS Consultants, 13(6), pp. 922-936.
https://doi.org/10.23940/ijpe.17.06.p13.922936.
Khurana, N., Chhillar, R.S., & Chhillar, U. (2016). A novel technique for generation and optimization of test cases using use case, sequence, activity diagram and genetic algorithm. Journal of Software, Academy Publisher, 11(3), pp. 242-250.
https://doi.org/10.17706/jsw.11.3.242-250.
Jena, A.K., Swain, S.K., & Mohapatra, D.P. (2014). A novel approach for test case generation from UML activity diagram. 2014 International Conference on Issues and Challenges in Intelligent Computing Techniques (ICICT), IEEE, 7-8 February, Ghaziabad, India, pp. 621-629. https://doi.org/10.1109/ICICICT.2014.6781352.
Pechtanun, K., & Kansomkeat, S. (2012). Generation test cases from UML activity diagram based on AC grammar. 2012 International Conference on Computer and Information Science (ICCIS), IEEE, 12-14 June, Kuala Lumper, Malaysia, pp. 895-899.
https://doi.org/10.1109/ICCISci.2012.6297153.
Swain, R.K., Panthi, V., & Behera, P.K. (2013). Generation of test cases using activity diagram. International Journal of Computer Science and Informatics, IPM Publication, 3(2), pp. 1-10.
http://interscience.in/IJCSI_Vol3Iss2/1-10.pdf.
Chouhan, C., Shrivastava, V., & Sodhi, P.S. (2012). Test case generation based on activity diagram for mobile application. International Journal of Computer Applications, Foundation of Computer Science, 57(23), pp. 4-9. https://doi.org/10.5120/9436-3563.
Boghdady, P.N., Badr, N.L., Hashim, M.A., & Tolba, M.F. (2011). An enhanced test case generation technique based on activity diagrams. The 2011 International Conference on Computer Engineering & Systems, IEEE, 29 November - 1 December, Cairo, Egypt, pp. 289-294. https://doi.org/10.1109/ICCES.2011.6141058.
Nayak, A., & Samanta, D. (2011). Synthesis of test scenarios using UML activity diagram. Software and Systems Modeling, Springer Verlag, 10, pp. 63-89. https://doi.org/10.1007/s10270-009-0133-4.
Jorgensen, P.C. (2014). Software testing a craftsman’s approach. 4th ed., CRC Press, London.
Pressman, R.S. (2011). Software engineering: a practitioner’s approach. 5th ed., McGraw-Hill series in computer science, pp. 437-439.
Subashni, S., & Satheesh, K.N. (2010). Software testing using visual studio 2010. Packt Publishing, Birmingham, pp. 6-8.
Shirole, M., & Kumar, R. (2013). UML behavioral model based test case generation: a survey. ACM SIGSOFT Software Engineering Notes, Association for Computing Machinery, 38(4), pp. 1-13.
https://doi.org/10.1145/2492248.2492274.
IEEE Computer Society (2008). IEEE standard for software and system test documentation IEEE Std 829TM-2008, IEEE, pp. 1-84.
https://doi.org/10.1109/IEEESTD.2008.4578383.
Hooda, I., & Chhillar, R. (2014). A review: study of test case generation techniques. International Journal of Computer Applications (0975–8887), Foundation of Computer Science, 107(16), pp. 33-37.
https://doi.org/10.5120/18839-0375.
Rahman, Md.A., Hasan, Md.A., Shah, K., & Siddik, Md.S. (2019). Multipartite based test case prioritization using failure history. International Journal of Advanced Science and Technology, Science and Engineering Research Support Society, 129, pp. 25-42.
http://sersc.org/journals/index.php/IJAST/article/view/1353/1084.
Agarwal, B.B., Tayal, S.P., & Gupta, M. (2010). Software engineering & testing. Jones and Bartlett, Sudbury, Massachusetts, pp. 157-164.
Booch, G., Rumbaugh, J., & Jacobson, I. (2005). The unified modeling language user guide. 2nd ed., Addison Wesley Professional, pp. 311-331.
https://pdfs.semanticscholar.org/f6b0/0ae65bc03ae3e2dc1edd8d9d1af3ea96f750.pdf.
Pezze, M., & Young, M. (2008). Software testing and analysis: process, principles, and techniques. John Wiley&Sons, pp. 211-230.
https://ix.cs.uoregon.edu/~michal/book/Samples/book.pdf.
Tsui, F., Karnal, O., & Bernal, B. (2017). Essentials of software engineering. 4th ed., Jones&Bartlett Learning, Burlington, Massachusetts, pp. 170-171.
Meziane, F., & Vadera, S. (2010). Artificial intelligence applications for improved software engineering development: new prospects. Information Science Reference, Hershey, New York, pp. 248.
https://doi.org/10.4018/978-1-60566-758-4.
Mahali, P., & Acharya, A.A. (2013). Model based test case prioritization using UML activity Diagram and evolutionary algorithm. International Journal of Computer Science and Informatics, IPM Publication, 3(2), pp. 42-47.
https://pdfs.semanticscholar.org/e263/de716d26500be67881b13e33579ad5f746e4.pdf.
Khandai, S., Acharya, A.A., & Mohapatra, D.P. (2011). Prioritizing test cases using business criticality test value. International Journal of Advanced Computer Science and Applications (IJACSA), Science and Information Organization, 3(5), pp. 103-110.
https://doi.org/10.14569/IJACSA.2012.030516.
Oluwagbemi, O., & Asmuni, H. (2015). An approach for automatic generation of test cases from UML diagram. International Journal of Software Engineering and Its Applications, Science and Engineering Research Support Society, 9(8), pp. 87-106.
https://pdfs.semanticscholar.org/2d44/4279968e52e441b8b81c1d3d2505dc9ac918.pdf?_ga=2.203778320.1602077095.1579951079-1724188612.1530871129.
Khandai, M., Acharya, A.A., & Mohapatra, D.P. (2011). Test case generation for concurrent system using UML combinational diagram. International Journal of Computer Science and Information Technology, TECH SCIENCE Publisher, 2(3), pp. 1172-1182. http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.228.548&rep=rep1&type=pdf.
Downloads
Published
How to Cite
Issue
Section
License
I assign to Informatica, An International Journal of Computing and Informatics ("Journal") the copyright in the manuscript identified above and any additional material (figures, tables, illustrations, software or other information intended for publication) submitted as part of or as a supplement to the manuscript ("Paper") in all forms and media throughout the world, in all languages, for the full term of copyright, effective when and if the article is accepted for publication. This transfer includes the right to reproduce and/or to distribute the Paper to other journals or digital libraries in electronic and online forms and systems.
I understand that I retain the rights to use the pre-prints, off-prints, accepted manuscript and published journal Paper for personal use, scholarly purposes and internal institutional use.
In certain cases, I can ask for retaining the publishing rights of the Paper. The Journal can permit or deny the request for publishing rights, to which I fully agree.
I declare that the submitted Paper is original, has been written by the stated authors and has not been published elsewhere nor is currently being considered for publication by any other journal and will not be submitted for such review while under review by this Journal. The Paper contains no material that violates proprietary rights of any other person or entity. I have obtained written permission from copyright owners for any excerpts from copyrighted works that are included and have credited the sources in my article. I have informed the co-author(s) of the terms of this publishing agreement.
Copyright © Slovenian Society Informatika