Abstract
We revisit model-based testing for labelled transition systems in the context of specifications that may contain divergent behaviour, i.e., infinite paths of internal computations. The standard approach based on the theory of input-output conformance, known as the ioco-framework, cannot deal with divergences directly, as it restricts specifications to strongly convergent transition systems. Using the model of Quiescent Input Output Transition Systems (QIOTSs), we can handle divergence successfully in the context of quiescence. Quiescence is a fundamental notion that represents the situation that a system is not capable of producing any output, if no prior input is provided, representing lack of productive progress. The correct treatment of this situation is the cornerstone of the success of testing in the context of systems that are input-enabled, i.e., systems that accept all input actions in any state. Our revised treatment of quiescence also allows it to be preserved under determinization of a QIOTS. This last feature allows us to reformulate the standard ioco-based testing theory and algorithms in terms of classical trace-based automata theory, including finite state divergent computations.
This research has been partially funded by NWO under grants 612.063.817 (SYRUP), Dn 63-257 (ROCKS) and 12238 (ArRangeer), and by the EU under grant 318490 (SENSATION).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
If \(L^{\mathrm {I}}\mathrel {\cup }L_{\delta }^\mathrm{O}\) is finite, we can replace this requirement by asking that t is finite.
- 2.
Technically, parallel composition was only defined for QIOTSs, and test cases are no QIOTSs. However, the idea can easily be lifted. Moreover, the actual formal definition of the execution of a test case below circumvents this issue by directly defining the results of the parallel composition.
References
Tretmans, J.: Test generation with inputs outputs and repetitive quiescence. Softw. – Concepts Tools 17(3), 103–120 (1996)
Stokkink, W.G.J., Timmer, M., Stoelinga, M.I.A.: Divergent quiescent transition systems. In: Veanes, M., Viganò, L. (eds.) TAP 2013. LNCS, vol. 7942, pp. 214–231. Springer, Heidelberg (2013). doi:10.1007/978-3-642-38916-0_13
Lynch, N.A., Tuttle, M.R.: An introduction to input/output automata. CWI Q. 2, 219–246 (1989)
Milner, R.: Communication and Concurrency. Prentice Hall, Upper Saddle River (1989)
Timmer, M., Brinksma, E., Stoelinga, M.I.A.: Model-based testing. In: Software and Systems Safety: Specification and Verification. NATO Science for Peace and Security Series D, vol. 30, pp. 1–32. IOS Press, Amsterdam (2011)
Vaandrager, F.W.: On the relationship between process algebra and input/output automata (extended abstract). In: Proceedings of the 6th Annual Symposium on Logic in Computer Science (LICS), pp. 387–398. IEEE Computer Society (1991)
Tretmans, J.: Test generation with inputs, outputs, and quiescence. In: Margaria, T., Steffen, B. (eds.) TACAS 1996. LNCS, vol. 1055, pp. 127–146. Springer, Heidelberg (1996). doi:10.1007/3-540-61042-1_42
Tretmans, J.: Model based testing with labelled transition systems. In: Hierons, R.M., Bowen, J.P., Harman, M. (eds.) Formal Methods and Testing. LNCS, vol. 4949, pp. 1–38. Springer, Heidelberg (2008). doi:10.1007/978-3-540-78917-8_1
Jard, C., Jéron, T.: TGV: theory, principles and algorithms. Int. J. Softw. Tools Technol. Transf. 7(4), 297–315 (2005)
Lynch, N.A., Tuttle, M.R.: Hierarchical correctness proofs for distributed algorithms. In: Proceedings of the 6th Annual ACM Symposium on Principles of Distributed Computing (PODC), pp. 137–151. ACM (1987)
De Nicola, R., Segala, R.: A process algebraic view of input/output automata. Theor. Comput. Sci. 138, 391–423 (1995)
Tarjan, R.E.: Depth-first search and linear graph algorithms (working paper). In: Proceedings of the 12th Annual Symposium on Switching and Automata Theory (SWAT), pp. 114–121. IEEE Computer Society (1971)
Stoelinga, M., Timmer, M.: Interpreting a successful testing process: risk and actual coverage. In: Proceedings of the 3rd IEEE International Symposium on Theoretical Aspects of Software Engineering (TASE), pp. 251–258. IEEE Computer Society (2009)
Stokkink, W.G.J., Timmer, M., Stoelinga, M.I.A.: Talking quiescence: a rigorous theory that supports parallel composition, action hiding and determinisation. In: Proceedings of the 7th Workshop on Model-Based Testing (MBT). EPTCS, vol. 80, pp. 73–87 (2012)
Stokkink, W.G.J., Timmer, M., Stoelinga, M.I.A.: Talking quiescence: a rigorous theory that supports parallel composition, action hiding and determinisation (extended version). Technical report TR-CTIT-12-05, University of Twente (2012)
Stokkink, G.: Quiescent transition systems. Master’s thesis, University of Twente (2012)
Acknowledgements
We would like to thank the reviewers for their thorough comments that really helped improve this paper. We thank Gerjan Stokkink for his large contributions to work that provides important ingredients for this paper [2, 14,15,16].
Since this paper is a part of the Festschrift at the occasion of the 60th birthday of Kim Guldstrand Larsen, we like to thank Kim for the many exciting and fruitful discussions we have had, and still have, over all these years in project meetings, at conferences and many other occasions—Kim was never quiescent.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2017 Springer International Publishing AG
About this chapter
Cite this chapter
Brinksma, E., Stoelinga, M.I.A., Timmer, M. (2017). Testing Divergent Transition Systems. In: Aceto, L., Bacci, G., Bacci, G., Ingólfsdóttir, A., Legay, A., Mardare, R. (eds) Models, Algorithms, Logics and Tools. Lecture Notes in Computer Science(), vol 10460. Springer, Cham. https://doi.org/10.1007/978-3-319-63121-9_17
Download citation
DOI: https://doi.org/10.1007/978-3-319-63121-9_17
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-63120-2
Online ISBN: 978-3-319-63121-9
eBook Packages: Computer ScienceComputer Science (R0)