Abstract
Testing is one of the most important activities to ensure the quality of a software system. This paper proposes and discusses the TSL (Test Specification Language) that adopts a model-based testing approach for both human-readable and computer-executable specifications of test cases. TSL is strongly inspired on the grammar, nomenclature and writing style as defined by the RSLingo RSL, which is a rigorous requirements specification language. Both RSL and TSL are controlled natural languages that share common concepts such as data entities, use cases and state machines. However, by applying black-box functional testing design techniques, TSL includes and supports four complementary testing strategies, namely: domain analysis testing; use case tests; state machine testing; and acceptance criteria. This paper focuses on the first three testing strategies of TSL. Finally, a simple but effective case study illustrates the overall approach and supports the discussion.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Bettini, L.: Implementing Domain-Specific Languages with Xtext and Xtend. Packt Publishing Ltd., Birmingham (2016)
Ten Buuren, R.A.: Domain-Specific Language Testing Framework. Master of Science, University of Twente, Enschede (2015)
Fagan, M.E.: Advances in software inspections. In: Broy, M., Denert, E. (eds.) Pioneers and Their Contributions to Software Engineering. Springer, Heidelberg (2001). https://doi.org/10.1007/978-3-642-48354-7_14
Ferreira, D., Silva, A.R.: RSLingo: an information extraction approach toward formal requirements specifications. In: Proceedings of MoDRE 2012. IEEE CS (2012)
Ferreira, D., Silva, A.R.: RSL-PL: a linguistic pattern language for documenting software requirements. In: Proceedings of RePa 2013. IEEE CS (2013)
Ferreira, D., Silva, A.R.: RSL-IL: an interlingua for formally documenting requirements. In: Proceedings of the of Third IEEE International Workshop on Model Driven Requirements Engineering. IEEE CS (2013a)
Ibe, M.: Decomposition of test cases in model-based testing. In: CEUR Workshop Proceedings (2013)
King, T.: Functional testing with domain-specific languages (2014)
Kovitz, B.: Practical Software Requirements: Manual of Content and Style. Manning, Shelter Island (1998)
Monteiro, T., Paiva, A.C.R.: Pattern based GUI testing modeling environment. In: Sixth International Conference on Software Testing, Verification and Validation (ICST) Workshops Proceedings (2013)
Morgado, I., Paiva, A.C.R.: Mobile GUI testing. Softw. Qual. J. 26, 1–18 (2017)
Paiva, A.C.R.: Automated specification-based testing of graphical user interfaces, Ph.D. thesis, Faculty of Engineering, Porto University, Porto, Portugal (1997)
Reis, A., Silva, A.R.: XIS-Reverse: a model-driven reverse engineering approach for legacy information systems. In: Proceedings of MODELSWARD 2017. SCITEPRESS (2017)
Ribeiro, A., Silva, A.R.: XIS-mobile: a DSL for mobile applications. In: Proceedings of the 29th Annual ACM Symposium on Applied Computing (SAC) (2014)
Ribeiro, A., Silva, A.R.: Evaluation of XIS-mobile, a domain specific language for mobile application development. J. Softw. Eng. Appl. 7(11), 906–919 (2014a)
Moreira, R.M.L.M., Paiva, A.C.R., Nabuco, M., Memon, A.: Pattern-based GUI testing: bridging the gap between design and quality assurance. Softw. Test. Verif. Reliab. J. 27(3), e1629 (2017)
Savic, D., et al.: SilabMDD: a use case model driven approach. In: ICIST 2015 5th International Conference on Information Society and Technology (2015)
Silva, A.R.: Model-driven engineering: a survey supported by a unified conceptual model. Comput. Lang. Syst. Struct. 43(C), 139–155 (2015)
Silva, A.R.: SpecQua: towards a framework for requirements specifications with increased quality. In: Cordeiro, J., Hammoudi, S., Maciaszek, L., Camp, O., Filipe, J. (eds.) ICEIS 2014. LNBIP, vol. 227, pp. 265–281. Springer, Cham (2015). https://doi.org/10.1007/978-3-319-22348-3_15
Silva, A.R., et al.: A pattern language for use cases specification. In: Proceedings of EuroPLOP 2015. ACM (2015)
Silva, A.R., Saraiva, J., Ferreira, D., Silva, R., Videira, C.: Integration of RE and MDE paradigms: the ProjectIT approach and tools. IET Softw. 1(6), 294–314 (2007)
Silva, A.R., Saraiva, J., Silva, R., Martins, C.: XIS - UML profile for eXtreme modeling interactive systems. In: Proceedings of MOMPES 2007. IEEE Computer Society (2007)
Silva, A.R., Verelst, J., Mannaert, H., Ferreira, D., Huysmans, P.: Towards a system requirements specification template that minimizes combinatorial effects. In: Proceedings of QUATIC 2014 Conference. IEEE CS (2014)
Silva, A.R.: Linguistic patterns and linguistic styles for requirements specification (i): an application case with the rigorous RSL/business-level language. In: Proceedings of EuroPLOP2017. ACM (2017)
Silva, A.R.: A rigorous requirement specification language for information systems: focus on RSL’s use cases, data entities and state machines, INESC-ID Technical Report (2017)
Solis, C., Wang, X.: A study of the characteristics of behaviour driven development. In: 37th EUROMICRO Conference on Software Engineering and Advanced Applications (SEAA), pp. 383–387. IEEE (2011)
Stahl, T., Volter, M.: Model-Driven Software Development. Wiley, Hoboken (2005)
Verelst, J., Silva, A.R., Mannaert, H., Ferreira, D.A., Huysmans, P.: Identifying combinatorial effects in requirements engineering. In: Proper, H.A., Aveiro, D., Gaaloul, K. (eds.) EEWC 2013. LNBIP, vol. 146, pp. 88–102. Springer, Heidelberg (2013). https://doi.org/10.1007/978-3-642-38117-1_7
Videira, C., Silva, A.R.: Patterns and metamodel for a natural-language-based requirements specification language. In: CAiSE Short Paper Proceedings (2005)
Videira, C., Ferreira, D., Silva, A.R.: A linguistic patterns approach for requirements specification. In: Proceedings 32nd Euromicro Conference on Software Engineering and Advanced Applications, Euromicro 2006. IEEE Computer Society (2006)
Bhat, A., Quadri, S.M.K.: Equivalence class partitioning and boundary value analysis - a review. In: 2nd International Conference on Computing for Sustainable Global Development (INDIACom) (2015)
Silva, A.R., Paiva, A.C.R., Silva, V.E.R.: Towards a test specification language for information systems: focus on data entity and state machine tests. In: The 6th International Conference on Model-Driven Engineering and Software Development (2018)
Jacobson, I., et al.: Object oriented Software engineering: A Use Case Driven Approach. Addison- Wesley, Boston (1992)
Silva, A.R.: RSLingo RSL Excel Template, v4.0, October 2017. https://www.researchgate.net/publication/320256323_RSLingo_RSL_Excel_Template_v40 (2017)
Neto, A.C.D., Subramanyan, R., Vieira, M., Travassos, G.H.: A survey on model-based testing approaches: a systematic review. In: Proceedings of the 1st ACM International Workshop on Empirical Assessment of Software Engineering Languages and Technologies: Held in Conjunction with the 22nd IEEE/ACM International Conference on Automated Software Engineering (2007)
Hasling, B., Goetz. H., Beetz, K.: Model based testing of system requirements using UML use case models. In: 1st International Conference on IEEE Software Testing, Verification, and Validation (2008)
Utting, M., Pretschner, A., Legeard, B.: A taxonomy of model-based testing approaches. Softw. Test. Verif. Reliab. 22(5), 297–312 (2012)
Broy, M., Jonsson, B., Katoen, J.-P., Leucker, M., Pretschner, A. (eds.): Model-Based Testing of Reactive Systems. LNCS, vol. 3472. Springer, Heidelberg (2005). https://doi.org/10.1007/b137241
Wynne, M., Hellesoy, A., Tooke, S.: The Cucumber Book: Behaviour-Driven Development for Testers and Developers. Pragmatic Bookshelf, Raleigh (2017)
Cucumber & Gherkin. https://cucumber.io/docs/reference. Accessed March 2018
Paiva, A.C.R., Vilela, L.: Multidimensional test coverage analysis: PARADIGM-COV tool. Cluster Comput.-J. Netw. Softw. Tools Appl. 20, 633–649 (2017)
Nabuco, M., Paiva, A.C.R.: Model-based test case generation for web applications. In: Murgante, B., et al. (eds.) ICCSA 2014. LNCS, vol. 8584, pp. 248–262. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-09153-2_19
Acknowledgments
This work was partially supported by national funds under FCT project UID/CEC/50021/2019.
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2019 Springer Nature Switzerland AG
About this paper
Cite this paper
da Silva, A.R., Paiva, A.C.R., da Silva, V.E.R. (2019). A Test Specification Language for Information Systems Based on Data Entities, Use Cases and State Machines. In: Hammoudi, S., Pires, L., Selic, B. (eds) Model-Driven Engineering and Software Development. MODELSWARD 2018. Communications in Computer and Information Science, vol 991. Springer, Cham. https://doi.org/10.1007/978-3-030-11030-7_20
Download citation
DOI: https://doi.org/10.1007/978-3-030-11030-7_20
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-11029-1
Online ISBN: 978-3-030-11030-7
eBook Packages: Computer ScienceComputer Science (R0)