Abstract
In model-driven development, testers are often focusing on functional model-level testing, enabling verification of design models against their specifications. In addition, in safety-critical software development, testers are required to show that tests cover the structure of the implementation. Testing cost and time savings could be achieved if the process of deriving test cases for logic coverage is automated and provided test cases are ready to be executed. The logic coverage artifacts, i.e., predicates and clauses, are required for different logic coverage, e.g., MC/DC. One way of dealing with test case generation for ensuring logic coverage is to approach it as a model-checking problem, such that model-checking tools automatically create test cases. We show how logic coverage criteria can be formalized and used by a model-checker to provide test cases for ensuring coverage on safety-critical software described in the Function Block Diagram programming language. Based on our experiments, this approach, supported by a tool chain, is an applicable and useful way of generating test cases for covering Function Block Diagrams.
Chapter PDF
Similar content being viewed by others
Keywords
References
Alur, R.: Timed Automata. In: Halbwachs, N., Peled, D.A. (eds.) CAV 1999. LNCS, vol. 1633, pp. 8–22. Springer, Heidelberg (1999)
Alur, R., Dill, D.: Automata for Modeling Real-time Systems. In: Automata, Languages and Programming, pp. 322–335 (1990)
Ammann, P., Black, P.E., Ding, W.: Model Checkers in Software Testing. In: NIST-IR 6777, National Institute of Standards and Technology Report (2002)
Ammann, P., Offutt, J.: Introduction to Software Testing. Cambridge University Press
Ammann, P., Offutt, J., Huang, H.: Coverage Criteria for Logical Expressions. In: 14th International Symposium on Software Reliability Engineering, pp. 99–107. IEEE (2003)
Baresi, L., Mauri, M., Monti, A., Pezze, M.: PLCTools: Design, Formal Validation, and Code Generation for Programmable Controllers. In: IEEE International Conference on Systems, Man, and Cybernetics, vol. 4, pp. 2437–2442. IEEE (2000)
Black, P.: Modeling and Marshaling: Making Tests from Model Checker Counter-examples. In: Proceedings of the 19th Digital Avionics Systems Conference, vol. 1, pp. 1B3–1. IEEE (2000)
da Silva, L.D., de Assis Barbosa, L.P., Gorgônio, K., Perkusich, A., Lima, A.M.N.: On the Automatic Generation of Timed Automata Models from Function Block Diagrams for Safety Instrumented Systems. In: 34th Annual Conference of IEEE Industrial Electronics, pp. 291–296. IEEE (2008)
Doganay, K., Bohlin, M., Sellin, O.: Search Based Testing of Embedded Systems Implemented in IEC 61131-3: An Industrial Case Study. In: International Conference on Software Testing, Verification and Validation Workshops. IEEE (March 2013)
Enoiu, E.P., Doganay, K., Bohlin, M., Sundmark, D., Pettersson, P.: MOS: An Integrated Model-based and Search-based Testing Tool for Function Block Diagrams. In: International Conference on Software Engineering Workshops. IEEE (May 2013)
Enoiu, E.P., Sundmark, D., Pettersson, P.: Model-based Test Suite Generation for Function Block Diagrams using the UPPAAL Model Checker. In: International Conference on Software Testing, Verification and Validation Workshops. IEEE (April 2013)
Fraser, G., Wotawa, F., Ammann, P.E.: Testing with Model Checkers: a Survey. Journal on Software Testing, Verification and Reliability 19, 215–261 (2009)
Hessel, A., Larsen, K.G., Mikucionis, M., Nielsen, B., Pettersson, P., Skou, A.: Testing Real-time Systems using UPPAAL. In: Hierons, R.M., Bowen, J.P., Harman, M. (eds.) FORTEST. LNCS, vol. 4949, pp. 77–117. Springer, Heidelberg (2008)
Hessel, A., Larsen, K.G., Nielsen, B., Pettersson, P., Skou, A.: Time-Optimal Real-Time Test Case Generation Using UPPAAL. In: Petrenko, A., Ulrich, A. (eds.) FATES 2003. LNCS, vol. 2931, pp. 114–130. Springer, Heidelberg (2004)
Hong, H.S., Lee, I., Sokolsky, O., Ural, H.: A Temporal Logic-Based Theory of Test Coverage and Generation. In: Katoen, J.-P., Stevens, P. (eds.) TACAS 2002. LNCS, vol. 2280, pp. 327–341. Springer, Heidelberg (2002)
Jee, E., Kim, S., Cha, S., Lee, I.: Automated Test Coverage Measurement for Reactor Protection System Software Implemented in Function Block Diagram. In: Schoitsch, E. (ed.) SAFECOMP 2010. LNCS, vol. 6351, pp. 223–236. Springer, Heidelberg (2010)
Lakehal, A., Parissis, I.: Lustructu: A Tool for the Automatic Coverage Assessment of Lustre Programs. In: International Symposium on Software Reliability Engineering, p. 10. IEEE (2005)
Öhman, M., Johansson, S., Årzén, K.E.: Implementation Aspects of the PLC standard IEC 1131-3. Journal on Control Engineering Practice 6, 547–555 (1998)
Rayadurgam, S., Heimdahl, M.P.E.: Generating MC/DC Adequate Test Sequences Through Model Checking. In: NASA Goddard Software Engineering Workshop Proceedings, pp. 91–96. IEEE (2003)
Rayadurgam, S., Heimdahl, M.P.E.: Coverage Based Test-Case Generation using Model Checkers. In: International Conference and Workshop on the Engineering of Computer Based Systems, pp. 83–91. IEEE (2001)
Richter, S., Wittig, J.U.: Verification and Validation Process for Safety IC Systems. Nuclear Plant Journal 21, 36 (2003)
Soliman, D., Thramboulidis, K., Frey, G.: Function Block Diagram to UPPAAL Timed Automata Transformation Based on Formal Models. Information Control Problems in Manufacturing 14(1), 1653–1659 (2012)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2013 IFIP International Federation for Information Processing
About this paper
Cite this paper
Enoiu, E.P., Sundmark, D., Pettersson, P. (2013). Using Logic Coverage to Improve Testing Function Block Diagrams. In: Yenigün, H., Yilmaz, C., Ulrich, A. (eds) Testing Software and Systems. ICTSS 2013. Lecture Notes in Computer Science, vol 8254. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-41707-8_1
Download citation
DOI: https://doi.org/10.1007/978-3-642-41707-8_1
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-41706-1
Online ISBN: 978-3-642-41707-8
eBook Packages: Computer ScienceComputer Science (R0)