Coverage Criteria for UML State Chart Diagram in Model-based Testing
Keywords:Coverage Criteria, Test Case Generation, UML State Chart Diagram,
AbstractSoftware testing is a necessary and essential part of the software quality process and plays a major role in detecting errors in systems. To improve the effectiveness of test case generation during software testing, and with the growing adoption of UML by software developers and researchers, many studies have focused on the automation of test case generation from UML diagrams. One of these diagrams is the UML state chart diagram. These test cases are generally generated to achieve certain coverage criteria. However, combinations of multiple criteria are required to achieve better coverage. Different studies use various number and type of coverage criteria in their methods and approaches. This paper reviews previous studies to present the most practical coverage criteria combinations for UML state chart diagram, including all-states, all-transitions, all-transition-pairs and all-loop-free-paths coverage. A special calculation is necessary to determine the coverage percentage of the proposed coverage criteria. This paper presents a calculation method to achieve this goal with an example is applied to a UML state chart diagram. This finding would be beneficial in the area of automatic test case generating for model-based testing and especially in the UML state chart diagram.
V. Panthi and D. P. Mohapatra, "Automatic test case generation using sequence diagram," in Proceedings of International Conference on Advances in Computing, 2012, pp. 277-284.
Y. D. Salman and N. L. Hashim, "An Improved Method Of Obtaining Basic Path Testing For Test Case Based On UML State Chart," Science International, vol. 26, 2014.
N. Pahwa and K. Solanki, "UML based Test Case Generation Methods: A Review," International Journal of Computer Applications, vol. 95, pp. 1-6, 2014.
U. S. Kumaran, S. A. Kumar, and K. V. Kumar, "An Approach to Automatic Generation of Test Cases Based on Use Cases in the Requirements Phase " International Journal on Computer Science and Engineering, vol. 3, pp. 102-113, 2011.
D. M. Rafi, K. R. K. Moses, K. Petersen, and M. V. Mäntylä, "Benefits and limitations of automated software testing: Systematic literature review and practitioner survey," in Proceedings of the 7th International Workshop on Automation of Software Test, 2012, pp. 36-42.
V. Chimisliu and F. Wotawa, "Improving test case generation from UML statecharts by using control, data and communication dependencies," in Quality Software (QSIC), 2013 13th International Conference on, 2013, pp. 125-134.
L. Li, T. He, and J. Wu, "Automatic Test Generation from UML Statechart Diagram Based on Euler circuit," International Journal of Digital Content Technology & its Applications, vol. 6, 2012.
V. Santiago, N. L. Vijaykumar, D. Guimarães, A. S. Amaral, and É. Ferreira, "An environment for automated test case generation from statechart-based and finite state machine-based behavioral models," in Software Testing Verification and Validation Workshop, 2008. ICSTW'08. IEEE International Conference on, 2008, pp. 63-72.
V. Santiago, A. S. M. do Amaral, N. Vijaykumar, M. F. Mattiello-Francisco, E. Martins, and O. C. Lopes, "A practical approach for automated test case generation using statecharts," in Computer Software and Applications Conference, 2006. COMPSAC'06. 30th Annual International, 2006, pp. 183-188.
R. K. Swain, P. K. Behera, and D. P. Mohapatra, "Minimal TestCase Generation for Object-Oriented Software with State Charts," arXiv preprint arXiv:1208.2265, 2012.
D. Patnaik, A. A. Acharya, and D. P. Mohapatra, "Generating testcases for concurrent systems using UML state chart diagram," in Information Technology and Mobile Communication, ed: Springer, 2011, pp. 100-105.
Y. D. Salman and N. L. Hashim, "Automatic Test Case Generation from UML State Chart Diagram: A Survey," in Advanced Computer and Communication Engineering Technology, ed: Springer, 2016, pp. 123-134.
X. Fan, F. Yang, W. Zheng, and Q. Liang, "Test Data Generation with A Hybrid Genetic Tabu Search Algorithm for Decision Coverage Criteria," 2015.
E. Jee, D. Shin, S. Cha, J. S. Lee, and D. H. Bae, "Automated test case generation for FBD programs implementing reactor protection system software," Software Testing, Verification and Reliability, vol. 24, pp. 608-628, 2014.
X. Devroey, G. Perrouin, A. Legay, M. Cordy, P.-Y. Schobbens, and P. Heymans, "Coverage criteria for behavioural testing of software product lines," in International Symposium On Leveraging Applications of Formal Methods, Verification and Validation, 2014, pp. 336-350.
J. M. Rojas, J. Campos, M. Vivanti, G. Fraser, and A. Arcuri, "Combining multiple coverage criteria in search-based unit test generation," in International Symposium on Search Based Software Engineering, 2015, pp. 93-108.
A. Goodubaigari, "A Software Test Data Generation Tool for Unit Testing Of C++ Programs Using Control Flow Graph," IJECS, pp. 2388-2392, 2013.
R. Mall, Fundamentals of software engineering. New delhi: PHI Learning Pvt. Ltd, 2009.
A. A. Saifan and W. B. Mustafa, "Using Formal Methods for Test Case Generation According to Transition-Based Coverage Criteria," Jordanian Journal of Computers and Information Technology, vol. 1, pp. 15-30, 2015.
H. S. Hong and H. Ural, "Using model checking for reducing the cost of test generation," in International Workshop on Formal Approaches to Software Testing, 2004, pp. 110-124.
M. Shirole and R. Kumar, "UML Behavioral Model Based Test Case Generation: A Survey," ACM SIGSOFT Software Engineering Notes, vol. 38, pp. 1-13, 2013.
S. Weißleder and D. Sokenou, "ParTeG-A Model-Based Testing Tool," Softwaretechnik-Trends, vol. 30, 2010.
M. Utting and B. Legeard, Practical model-based testing: a tools approach: Morgan Kaufmann, 2010.
H. Li and C. P. Lam, "An ant colony optimization approach to test sequence generation for state-based software testing," in Quality Software, 2005.(QSIC 2005). Fifth International Conference 2005, pp. 255-262.
R. K. Swain, V. Panthi, P. Behera, and D. Mohapatra, "Automatic Test case Generation From UML State Chart Diagram," International Journal of Computer Applications, pp. 26-36, 2012.
V. Chimisliu and F. Wotawa, "Model based test case generation for distributed embedded systems," in Industrial Technology (ICIT), 2012 IEEE International Conference on, 2012, pp. 656-661.
R. K. Swain, P. K. Behera, and D. P. Mohapatra, "Generation and Optimization of Test cases for Object-Oriented Software Using State Chart Diagram," arXiv preprint arXiv:1206.0373, 2012.
M. Shirole, A. Suthar, and R. Kumar, "Generation of improved test cases from UML state diagram using genetic algorithm," in Proceedings of the 4th India Software Engineering Conference, 2011, pp. 125-134.
N. Kosindrdecha and J. Daengdej, "A test generation method based on state diagram," JATIT, pp. 28-44, 2010.
S. Kansomkeat and W. Rivepiboon, "Automated generating test case using UML statechart diagrams," in Proceedings of the 2003 annual research conference of the South African institute of computer scientists and information technologists on Enablement through technology, 2003, pp. 296-300.
J. Al Dallal and P. Sorenson, "Generating class based test cases for interface classes of object-oriented black box frameworks," Transactions on Engineering, Computing and Technology, vol. 16, pp. 90-95, 2006.
V. Chimisliu and F. Wotawa, "Using dependency relations to improve test case generation from UML statecharts," in Computer Software and Applications Conference Workshops (COMPSACW), 2013 IEEE 37th Annual, 2013, pp. 71-76.
S. K. Swain, D. P. Mohapatra, and R. Mall, "Test Case Generation Based on State and Activity Models," Journal of Object Technology, vol. 9, pp. 1-27, 2010.
J. Offutt, S. Liu, A. Abdurazik, and P. Ammann, "Generating test data from state‐based specifications," Software Testing, Verification and Reliability, vol. 13, pp. 25-53, 2003.
S. Ali, L. C. Briand, M. J.-u. Rehman, H. Asghar, M. Z. Z. Iqbal, and A. Nadeem, "A state-based approach to integration testing based on UML models," Information and Software Technology, vol. 49, pp. 1087–1106, 2007.
J. Hartmann, C. Imoberdorf, and M. Meisinger, "UML-based integration testing," in ACM SIGSOFT Software Engineering Notes, 2000, pp. 60-70.
R. Blanco, J. Fanjul, and J. Tuya, "Test case generation for transition-pair coverage using Scatter Search," International Journal of Software Engineering and Its Applications, vol. 4, pp. 37-56, 2010.
L. C. Briand, Y. Labiche, and J. Cui, "Automated support for deriving test requirements from UML statecharts," Software & Systems Modeling, vol. 4, pp. 399–423, 2005.
L. L. Muniz, U. S. Netto, and P. H. M. Maia, "TCG-a model-based testing tool for functional and statistical testing," in ICEIS (2), 2015, pp. 404-411.
M. Utting and B. Legeard, Practical model-based testing: a tools approach. san francisco: Morgan Kaufmann, 2007.
P. Murthy, P. Anitha, M. Mahesh, and R. Subramanyan, "Test ready UML statechart models," in Proceedings of the 2006 international workshop on Scenarios and state machines: models, algorithms, and tools, 2006, pp. 75-81.
M. A. Ali, K. Shaik, and S. Kumar, "Test case generation using UML state diagram and OCL expression," International Journal of Computer Applications, vol. 95, 2014.
S. Ali, L. C. Briand, H. Hemmati, and R. K. Panesar-Walawege, "A systematic review of the application and empirical investigation of search-based test case generation," IEEE Transactions on Software Engineering, vol. 36, pp. 742-762, 2010.
O. Oluwagbemi and H. Asmuni, "Automatic Generation of Test Cases from Activity Diagrams for UML Based Testing (UBT)," Jurnal Teknologi, vol. 77, 2015.
A. Paul and O. Jeff, Introduction to Software Testing. New York, NY, USA: Cambridge University Press, 2008.
How to Cite
TRANSFER OF COPYRIGHT AGREEMENT
The manuscript is herewith submitted for publication in the Journal of Telecommunication, Electronic and Computer Engineering (JTEC). It has not been published before, and it is not under consideration for publication in any other journals. It contains no material that is scandalous, obscene, libelous or otherwise contrary to law. When the manuscript is accepted for publication, I, as the author, hereby agree to transfer to JTEC, all rights including those pertaining to electronic forms and transmissions, under existing copyright laws, except for the following, which the author(s) specifically retain(s):
- All proprietary right other than copyright, such as patent rights
- The right to make further copies of all or part of the published article for my use in classroom teaching
- The right to reuse all or part of this manuscript in a compilation of my own works or in a textbook of which I am the author; and
- The right to make copies of the published work for internal distribution within the institution that employs me
I agree that copies made under these circumstances will continue to carry the copyright notice that appears in the original published work. I agree to inform my co-authors, if any, of the above terms. I certify that I have obtained written permission for the use of text, tables, and/or illustrations from any copyrighted source(s), and I agree to supply such written permission(s) to JTEC upon request.