Abstract
Structural coverage criteria are employed in testing according to the criticality of the application domain. Modified Condition/Decision Coverage (MC/DC) comes highly recommended by multiple standards, including, ISO 26262 and DO-178C in the automotive and avionics industries respectively. Yet, it is time and effort consuming to construct and maintain test suites that achieve high coverage percentages of MC/DC. Search based approaches were used to automate this task due to the problem complexity. Our results show that the generated test data could be minimized while maintaining the same coverage by considering that a certain test datum can satisfy multiple MC/DC test targets. This improves the maintainability of the generated test suite and saves the resources required to define their expected outputs and any part of the testing process that is repeated per test case.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
A decision is composed of one or multiple conditions connected by logical operators (And, Or, Not).
- 2.
A condition is an expression containing a relational operator.
- 3.
Each test case in the MC/DC set is targeted individually by GA, hence called “test case target”.
- 4.
Predicates that consist of relational expressions connected with logical operators.
References
Myers, G.J., Badgett, T., Sandler, C.: The Art of Software Testing, 3rd edn. Wiley, Hoboken (2012)
ISO 26262: Functional safety for road vehicles (2011)
DO-178C: Software Considerations in Airborne Systems and Equipment Certification. RTCA (2012)
Yang, Q., Li J.J., Weiss, D.: A survey of coverage based testing tools. In: International Workshop on Automation of Software Test, Shanghai, China (2006)
Maragathavalli, P., Anusha, M., Geethamalini, P., Priyadharsini, S.: Automatic test-data generation for modified condition/decision coverage using genetic algorithm. Int. J. Eng. Sci. Technol. 3(2), 1311–1318 (2011)
Sarabi, M.: Evaluation of Structural Testing Effectiveness in Industrial Model-Driven Software Development. Malardalen University, Sweden (2012)
Chilenski, J.J., Miller, S.P.: Applicability of modified condition/decision coverage to software testing. Softw. Eng. J. 9(5), 193–200 (1994)
Pezze, M., Young, M.: Software Testing and Analysis: Process, Principles and Techniques. Wiley, Hoboken (2007)
Tracey, N., Clark, J., Mander, K., McDermid, J.: An automated framework for structural test-data generation. In: International Conference on Automated Software Engineering, pp. 285–288. IEEE Computer Society Press, Hawaii (1998)
Maragathavalli, P.: Search-based software test data generation using evolutionary computation. Int. J. Comput. Sci. Inf. Technol. 3(1), 213–233 (2011)
Godefroid, P., Klarlund, N., Sen, K.: DART: directed automated random testing. In: PLDI, pp. 213–223 (2005)
Sen, K., Marinov, D., Agha, G.: CUTE: a concolic unit testing engine for C. In: ESEC/FSE, pp. 263–272 (2005)
Tillmann, N., de Halleux, J.: Pex–white box test generation for .NET. In: Beckert, B., Hähnle, R. (eds.) TAP 2008. LNCS, vol. 4966, pp. 134–153. Springer, Heidelberg (2008)
King, J.: Symbolic execution and program testing. Commun. ACM 19(7), 385–394 (1976)
Seo, H.: A survey on dynamic symbolic execution for automatic test generation (2014). http://www.slideshare.net/hunkim/pqe-ver2-1. Accessed 18 April 2015
Dorigo, M., Blum, C.: Ant colony optimization theory: a survey. Theoret. Comput. Sci. 344, 243–278 (2005)
Eglese, R.W.: Simulated annealing: a tool for operational research. Eur. J. Oper. Res. 46, 271–281 (1990)
Bai, Q.: Analysis of particle swarm optimization algorithm. Comput. Inf. Sci. 3(1), 180–184 (2010)
Melanie, M.: An Introduction to Genetic Algorithms. MIT Press, Cambridge (1999)
Awedikian, Z., Ayari, K., Antoniol, G.: MCDC automatic test input generation. In: 11th Annual Genetic and Evolutionary Computation Conference, GECCO 2009, pp. 1657–1664 (2009)
McMinn, P., Holcombe, M.: Evolutionary testing using an extended chaining approach. Evol. Comput. 14(1), 41–64 (2006)
Bottaci, L.: A Genetic Algorithm Fitness Function for Mutation Testing (2001)
Bottaci, L.: Predicate expression cost functions to guide evolutionary search for test data. In: Cantú-Paz, E., Foster, J.A., Deb, K., Davis, L., Roy, R., O’Reilly, U.-M., Beyer, H.-G., Kendall, G., et al. (eds.) GECCO 2003. LNCS, vol. 2724. Springer, Heidelberg (2003)
AForge.Net Library, v.2.2.5 (2013). http://www.aforgenet.com/framework/. Accessed 18 April 2015
Wegener, J., Baresel, A., Sthamer, H.: Evolutionary test environment for automatic structural testing. Inf. Softw. Technol. 43(14), 841–854 (2001)
Poulding S., Vos Tanja E.J.: Sixth international workshop in search-based software testing: workshop summary. In: IEEE 6th International Conference on Software Testing, Verification and Validation Workshops (2013)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2015 Springer International Publishing Switzerland
About this paper
Cite this paper
El-Sayed, G., Salama, C., Wahba, A. (2015). Optimization of Generated Test Data for MC/DC. In: Fujita, H., Guizzi, G. (eds) Intelligent Software Methodologies, Tools and Techniques. SoMeT 2015. Communications in Computer and Information Science, vol 532. Springer, Cham. https://doi.org/10.1007/978-3-319-22689-7_12
Download citation
DOI: https://doi.org/10.1007/978-3-319-22689-7_12
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-22688-0
Online ISBN: 978-3-319-22689-7
eBook Packages: Computer ScienceComputer Science (R0)