Abstract
This paper describes an automatic approach for selecting tests from a test suite to validate the changes made to an extended finite state machine (EFSM). EFSMs supporting variables over commonly used data types including booleans, numbers, arrays, queues, and records, and communicating with the environment using parameterized messages are considered. Changes to the EFSM add/delete/replace one or more transitions. Tests are described using a sequence of input and output messages with parameter values. We introduce a class of fully-observable tests. The description of a fully-observable test contains all the information to accurately determine the transitions executed by the test. Interaction among the EFSM transitions captured in terms of a compatibility relation is used along with a given test description to automatically identify fully-observable tests. A procedure is described for selecting a test for a given change based on accurately predicting if the test executes the change transition. We then describe how several tests can be simultaneously selected by grouping them based on overlap of their descriptions. The proposed approach has been implemented using a theorem prover and applied to several examples including protocols and web services with encouraging results.
Chapter PDF
Similar content being viewed by others
References
Brand, D., Zafiropulo, P.: On Communicating Finite State Machines. JACMÂ 30(2) (1983)
Chen, Y., Probert, R., Ural, H.: Regression test suite reduction using extended dependence analysis. In: SOQUA 2007, September 3-4 (2007)
Detlefs, D., Nelson, G., Saxe, J.B.: Simplify: A Theorem Prover for Program Checking. Journal of the ACMÂ 52(3) (2005)
Kapur, D., Zhang, H.: An Overview of Rewrite Rule Laboratory (RRL). In: Dershowitz, N. (ed.) RTA 1989. LNCS, vol. 355, pp. 559–563. Springer, Heidelberg (1989)
Korel, B., Tahat, L., Vaysburg, B.: Model Based Regression Test Reduction Using Dependency Analysis. In: Proceedings of the International Conference on Software Maintenance (ICSM 2002), October 03-06, p. 214 (2002)
Korel, B., Koutsogiannakis, G., Tahat, L.H.: Application of system models in regression test suite prioritization. In: IEEE International Conference Software Maintenance, ICSM 2008, September 28-October 4, vol. (2008)
Lee, D., Yiannakakis, M.: Principles and Methods of Testing Finite State Machines – A Survey. Proceedings of the IEEE 84(8) (1996)
Leung, H.K.N., White, L.: A Cost Model to Compare Regression Test Strategies. IEEE Conf. on Software Maintenance, ICSM (1991)
Rothermel, G., Harrold, M.J.: Analyzing Regression Test Selection Techniques. IEEE Transactions on Software Engineering (1996)
Subramaniam, M., Guo, B.: A Rewrite-based Approach for Change Impact Analysis of Communicating Systems Using a Theorem Prover, CS Dept. University of Nebraska-Omaha (cst-2008-3) Technical Report (Work in progress paper in Testcom 2008) (2008)
Subramaniam, M., Pap, Z.: Updating Tests Across Protocol Changes. In: Proc. of IFIP Conference on Testing of Communicating Systems (2006)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Subramaniam, M., Xiao, L., Guo, B., Pap, Z. (2009). An Approach for Test Selection for EFSMs Using a Theorem Prover. In: Núñez, M., Baker, P., Merayo, M.G. (eds) Testing of Software and Communication Systems. FATES TestCom 2009 2009. Lecture Notes in Computer Science, vol 5826. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-05031-2_10
Download citation
DOI: https://doi.org/10.1007/978-3-642-05031-2_10
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-05030-5
Online ISBN: 978-3-642-05031-2
eBook Packages: Computer ScienceComputer Science (R0)