Abstract
Model Driven Engineering is extending its reach beyond the generation of code from Platform Independent Models (PIMs), to all the phases of the software life-cycle. This paper presents an approach to exploit PIMs to ease regression testing, whereby developers can record and replay testing sessions and investigate testing failures on the application model, thanks to traceability links automatically inserted in the generated code. The core of the approach is a modified version of the model transformation for code generation, obtained by applying a Higher Order Transformation (HOT), that is a transformation that takes in input a transformation (the original code generator) and produces another transformation (the augmented code generator). The HOT weaves into the code generator additional rules producing traceability clues that help developers link any error to the model features likely to cause it.
Chapter PDF
References
MoDisco home page, http://www.eclipse.org/gmt/modisco/
QVT 1.0., http://www.omg.org/spec/QVT/1.0/
WebRatio, http://www.webratio.com
Abrahao, S., Pastor, O.: Measuring the functional size of web applications. Int. J. Web Eng. Technol. 1(1), 5–16 (2003)
Abrahão, S.M., Mendes, E., Gómez, J., Insfrán, E.: A model-driven measurement procedure for sizing web applications: Design, automation and validation. In: MoDELS, pp. 467–481 (2007)
Agrawal, A., Karsai, G., Shi, F.: Graph transformations on domain-specific models. Technical report, ISIS (November 2003)
Baerisch, S.: Model-driven test-case construction. In: ESEC-FSE Companion 2007: 6th Joint Meeting on European SE Conf. and the ACM SIGSOFT Symp. on the Foundations of SE, pp. 587–590. ACM, New York (2007)
Barbero, M., Del Fabro, M.D., Bézivin, J.: Traceability and provenance issues in global model management. In: 3rd ECMDA-Traceability Workshop (2007)
Baresi, L., Fraternali, P., Tisi, M., Morasca, S.: Towards model-driven testing of a web application generator. In: Lowe, D.G., Gaedke, M. (eds.) ICWE 2005. LNCS, vol. 3579, pp. 75–86. Springer, Heidelberg (2005)
Bézivin, J., Jouault, F., Touzet, D.: An introduction to the ATLAS model management architecture. Research Report LINA(05-01) (2005)
Briand, L., Labiche, Y., Soccar, G.: Automating impact analysis and regression test selection based on uml designs. In: IEEE International Conference on Software Maintenance, p. 252 (2002)
Canoo. Canoo Web Test (2008), http://webtest.canoo.com
Ceri, S., Fraternali, P., Bongio, A., Brambilla, M., Comai, S., Matera, M.: Designing Data-Intensive Web Applications. Morgan Kaufmann, USA (2002)
Czarnecki, K., Helsen, S.: Classification of model transformation approaches. In: OOPSLA 2003 Workshop on Generative Techniques in the Context of MDA (2003)
Dick, J., Faivre, A.: Automating the generation and sequencing of test cases from Model-Based specifications. In: Larsen, P.G., Woodcock, J.C.P. (eds.) FME 1993. LNCS, vol. 670, pp. 268–284. Springer, Heidelberg (1993)
Del Fabro, M.D., Bézivin, J., Jouault, F., Breton, E., Gueltas, G.: Amw: a generic model weaver. In: 1ére Journée sur l’Ingénierie Dirigée par les Modèles (IDM 2005) (2005)
GMT Project. Amw use case - traceability (February 2008), http://www.eclipse.org/gmt/amw/usecases/traceability
Hartman, A., Nagin, K.: The AGEDIS tools for model based testing. SIGSOFT Softw. Eng. Notes 29(4), 129–132 (2004)
HTMLUnit Team. HTMLUnit (2008), http://htmlunit.sourceforge.net/
Jouault, F.: Loosely coupled traceability for atl. In: European Conference on Model Driven Architecture (ECMDA), workshop on traceability (2005)
JWebUnit Team. JWebUnit (2008), http://jwebunit.sourceforge.net/
Lawley, M., Steel, J.: Practical declarative model transformation with tefkat. In: Bruel, J.-M. (ed.) MoDELS 2005. LNCS, vol. 3844, pp. 139–150. Springer, Heidelberg (2006)
Li, N., Ma, Q.-q., Wu, J., Jin, M.-z., Liu, C.: A framework of model-driven web application testing. In: COMPSAC 2006, Washington, DC, USA, pp. 157–162. IEEE Computer Society, Los Alamitos (2006)
Naslavsky, L., Richardson, D.J.: Using traceability to support model-based regression testing. In: ASE 2007, pp. 567–570. ACM, New York (2007)
Nebut, C., Fleurey, F., Le Traon, Y., Jezequel, J.: Automatic test generation: A use case driven approach. IEEE Transactions on SE 32(3), 155, 140 (2006)
Pretschner, A.: Model-based testing in practice. In: Fitzgerald, J.S., Hayes, I.J., Tarlecki, A. (eds.) FM 2005. LNCS, vol. 3582, pp. 537–541. Springer, Heidelberg (2005)
Rothermel, G., Harrold, M.J.: Analyzing regression test selection techniques. IEEE Transactions on Software Engineering 22(8), 529–551 (1996)
Saad, M.A., Kamenzky, N., Schiller, J.: Visual scatterUnit: A visual model-driven testing framework of wireless sensor networks applications. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 751–765. Springer, Heidelberg (2008)
Selenium Project. Seleniumhq (2008), http://seleniumhq.org/
Vinay Srini. Testgen4web (2008), http://developer.spikesource.com/blogs/vsrini/2008/06/testgen4web_update_10_1.html
Stahl, T., Voelter, M., Czarnecki, K.: Model-Driven Software Development: Technology, Engineering, Management. John Wiley & Sons, Chichester (2006)
The Apache Jakarta Project. Cactus (2008), http://jakarta.apache.org/cactus
Varró, D., Varró, G., Pataricza, A.: Designing the automatic transformation of visual languages. Sci. Comput. Program. 44(2), 205–227 (2002)
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
Fraternali, P., Tisi, M. (2009). A Higher Order Generative Framework for Weaving Traceability Links into a Code Generator for Web Application Testing. In: Gaedke, M., Grossniklaus, M., Díaz, O. (eds) Web Engineering. ICWE 2009. Lecture Notes in Computer Science, vol 5648. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-02818-2_28
Download citation
DOI: https://doi.org/10.1007/978-3-642-02818-2_28
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-02817-5
Online ISBN: 978-3-642-02818-2
eBook Packages: Computer ScienceComputer Science (R0)