Abstract
Protocols governing communication among system components evolve during design and maintenance and need to be re-tested. For faster testing turnaround time, it is important that the consistency of the testing infrastructure with the protocol be preserved across changes. In this paper, we propose a state exploration based approach to identify the impacts of protocol changes on a given set of protocol tests. Protocols are modeled as a network of communicating finite state machines exchanging messages over bounded queues. Each machine denotes the behavior of an individual protocol component (controller). A protocol test is modeled as a sequence of inputs from the environment to the protocol controllers in an execution starting from a stable protocol state. A notion of consistency of a test relative to a protocol is introduced. Conditions under which a protocol change requires changing a test to preserve the consistency of the test are identified. Changes consisting of multiple atomic updates are analyzed to remove redundancies and their impact on tests is studied. A by-product of the proposed approach is a classification of tests based on how they are impacted by protocol changes, which can help users in regression test selection.
Chapter PDF
Similar content being viewed by others
References
Bochmann, G.V., Petrenko, A.: Protocol testing: review of methods and relevance for software testing. In: ISSTA 1994: Proceedings of the 1994 ACM SIGSOFT international symposium on Software testing and analysis, pp. 109–124. ACM Press, New York (1994)
Linn, R.J., Uyar, M. (eds.): Conformance testing methodologies and architectures for OSI protocols. IEEE Computer Society Press, Los Alamitos (1995)
Lee, D., Yiannakakis, M.: Principles and methods of testing finite state machines – a survey. Proceedings of the IEEE 84(8), 1090–1123 (1996)
Duale, A.Y., Uyar, M.: A method enabling feasible conformance test sequence generation for efsm models. IEEE Trans. Comput. 53(5), 614–627 (2004)
Brand, D., Martin, A., Zafiropulo, P.: On communicating finite state machines. Journal of Associating Computing Machinery, JACM 30(2) (1983)
Peng, W., Purushothaman, S.: Data flow analyses of communicating finite state machines. In: Transactions on Programming Languagaes and Systems TOPLAS, vol. 13 (1991)
Holzmann, G.J.: Design and validation of computer protocols. Prentice-Hall, Inc, Upper Saddle River (1991)
Subramaniam, M., Chundi, P.: Preserving consistency and executability of protocols across updates. In: Davies, J., Schulte, W., Barnett, M. (eds.) ICFEM 2004. LNCS, vol. 3308. Springer, Heidelberg (2004)
Arnold, R.S.: Software Change Impact Analysis. IEEE Computer Society Press, Los Alamitos (1996)
Ryder, B.G., Tip, F.: Change impact analysis for object-oriented programs. In: Proceedings of PASTE 2001 (2001)
Rothermal, G., Harrold, M.J.: A safe, efficient regression test selection technique. ACM Transactions on Software Engineering and Methodology 6(2) (1997)
Subramaniam, M.: Preserving consistency of runtime monitors across protocol changes. In: Proc. of Tenth IEEE International Conference on Engineering of Complex Computer Systems ICECCS (2005)
Schmitt, M.: Automatic Test Generation Based on Formal Specifications. Ph.d., Georg-August-University of Goettingen (2003)
Kaufmann, M., Martin, A., Pixely, C.: Design constraints in symbolic model checking. In: Proc. of Intl. Conference on Computer-Aided Verification CAV, vol. LNCS (1998)
Shimizu, K., Dill, D.L., Hu, A.J.: Monitor-based formal specification of pci. In: Johnson, S.D., Hunt Jr., W.A. (eds.) FMCAD 2000. LNCS, vol. 1954, pp. 335–353. Springer, Heidelberg (2000)
Bunke, H.: Graph matching: Theoretical foundations, algorithms, and applications. In: Proceedings of Vision Interface 2000, Montreal, pp. 82–88 (2000)
Wang, J.T.L., Zhang, K., Chirn, G.W.: Algorithms for approximate graph matching. Information Sciences 82(1-2), 45–74 (1995)
Pap, Z., Csopaki, G., Dibuz, S.: On the theory of patching. In: Proceedings of the 3rd IEEE International Conference on Software Engineering and Formal Methods, SEFM, pp. 263–271 (2005)
Subramaniam, M., Shi, J.: Using dominators to extract protocol contexts. In: Proceedings of the 3rd IEEE International Conference on Software Engineering and Formal Methods, SEFM (2005)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 IFIP International Federation for Information Processing
About this paper
Cite this paper
Subramaniam, M., Pap, Z. (2006). Analyzing the Impact of Protocol Changes on Tests. In: Uyar, M.Ü., Duale, A.Y., Fecko, M.A. (eds) Testing of Communicating Systems. TestCom 2006. Lecture Notes in Computer Science, vol 3964. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11754008_13
Download citation
DOI: https://doi.org/10.1007/11754008_13
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-34184-0
Online ISBN: 978-3-540-34185-7
eBook Packages: Computer ScienceComputer Science (R0)