Abstract
In many domains, such as avionics, oil and gas, and maritime, a common practice is to derive and execute test cases manually from requirements, where both requirements and test cases are specified in natural language (NL) by domain experts. The manual execution of test cases is largely dependent on the domain experts who wrote the test cases. The process of manual writing of requirements and test cases introduces ambiguity in their description and, in addition, test cases may not be effective since they may not be derived by systematically applying coverage criteria. In this paper, we report on a systematic approach to support automatic derivation of manually executable test cases from use cases. Both use cases and test cases are specified in restricted NLs along with carefully-defined templates implemented in a tool. We evaluate our approach with four case studies (in total having 30 use cases and 579 steps from flows of events), two of which are industrial case studies from the oil/gas and avionics domains. Results show that our tool was able to correctly process all the case studies and systematically (by following carefully-defined structure coverage criteria) generate 30 TCSs and 389 test cases. Moreover, our approach allows defining different test coverage criteria on requirements other than the one already implemented in our tool.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Yue, T., Briand, L.C., Labiche, Y.: Facilitating the Transition from Use Case Models to Analysis Models: Approach and Experiments. ACM Trans. Softw. Eng. Methodol. 22 (1), Article 5 (2011)
Zhang, M., Yue, T., Ali, S.: A Keyword and Restricted NL Based TCS Language for Au-tomated Testing. Simula Research Laboratory, Norway, Technical Report (2014-01)
Yue, T., Briand, L., Labiche, Y.: Automatically Deriving a UML Analysis Model from a Use Case Model. Simula Research Laboratory, Norway, Technical Report (2013)
Zhang, G., Yue, T., Wu, J., Ali, S.: Zen-RUCM: A Tool for Supporting a Comprehensive and Extensible Use Case Modeling Framework. In: Liu, Y., et al. (eds.) Demos/Posters/ StudentResearch@MoDELS. CEUR-WS, vol. 1113, pp. 41–45 (2013)
Bruegge, B., Dutoit, A.H.: Object-Oriented Software Engineering Using UML, Patterns and Java. Prentice Hall (2004)
Bittner, K.: Use Case Modeling. Addison-Wesley, Boston (2002)
Reid, S.: Software and systems engineering Software testing Part 1: Concepts and definitions. ISO/IEC/IEEE 29119-1, pp. 1–64 (2013)
Myers, G.J., Sandler, C., Badgett, T.: The art of software testing. John Wiley & Sons (2011)
Binder, R.: Testing object-oriented systems: models, patterns, and tools. Addison-Wesley Professional (2000)
Gomaa, H.: Designing Concurrent, Distributed, and Real-Time Applications with UML. In: 23rd International Conference on Software Engineering, pp. 737–738. IEEE CS (2001)
Briand, L., Falessi, D., Nejati, S., Sabetzadeh, M., Yue, T.: Traceability and SysML De-sign Slices to Support Safety Inspections: A Controlled Experiment. ACM Trans. Softw. Eng. Methodol. 23 (1), Article 9 (2014)
Capozucca, A., et al.: Requirements Definition Document for a Software Product Line of Car Crash Management Systems. ReMoDD (2011), http://bit.ly/1jUkIhN
Zhang, G., Yue, T., Ali, S.: Modeling Crisis Management System with the Restricted Use Case Modeling Approach. In: Moreira, A., et al. (eds.) CMA@MODELS. CEUR-WS, vol. 1079, paper 2 (2013)
Ali, S., Hemmati, H.: Model-based Testing of Video Conferencing Systems: Challenges, Lessons Learnt, and Results. In: IEEE International Conference on Software Testing, Veri-fication, and Validation (ICST), pp. 353–362. IEEE CS (2014)
Barros, F.A., Neves, L., Hori, E., Torres, D.: The ucsCNL: A Controlled Natural Language for Use Case Specifications. In: SEKE, pp. 250–253 (2011)
Badri, M., Badri, L., Naha, M.: A use case driven testing process: Towards a formal approach based on UML collaboration diagrams. In: Petrenko, A., Ulrich, A. (eds.) FATES 2003. LNCS, vol. 2931, pp. 223–235. Springer, Heidelberg (2004)
Nebut, C., Fleurey, F., Le Traon, Y., Jézéquel, J.M.: Requirements by contracts allow au-tomated system testing. In: ISSRE 2003, pp. 85–96. IEEE CS (2003)
Ryser, J., Glinz, M.: A scenario-based approach to validating and testing software systems using statecharts. In: Proc. 12th International Conference on Software and Systems Engineering and their Applications (1999)
Tahat, L.H., Vaysburg, B., Korel, B., Bader, A.J.: Requirement-based automated black-box test generation. In: COMPSAC 2001, pp. 489–495. IEEE CS (2001)
Algayres, B., Lejeuhe, Y., Hugonnet, F.: GOAL: Observing SDL Behavior with Object Code. In: Braek, R., Sarma, A. (eds.) SDL 1995 with MSC in CASE, pp. 26–29. Elsevier (1995)
Bochmann, G., Petrenko, A., Bellal, O., Maguiraga, S.: Automating the process of test derivation from SDL specifications. In: Cavalli, A., Sarma, A. (eds.) SDL 1997: Time for Test-ing: SDL, MSC and Trends, pp. 261–276. Elsevier (1997)
Brömstrup, L., Hogrefe, D.: TESDL: Experience with generating test cases from SDL specifications. In: Linn, R.J., Uyar, Ü. (eds.) Conformance Testing Methodologies and Architectures for OSI Protocols, pp. 455–467. IEEE CS (1995)
Dssouli, R., Saleh, K., Aboulhamid, E., Bourhfir, C.: Test development for communication protocols: towards automation. Computer Networks 31(17), 1835–1872 (1999)
Tang, J., Cao, X., Ma, A.: Towards adaptive framework of keyword driven automation testing. In: Automation and Logistics, ICAL 2008, pp. 1631–1636. IEEE CS (2008)
Hametner, R., Winkler, D., Zoitl, A.: Agile testing concepts based on keyword-driven test-ing for industrial automation systems. In: IECON 2012, pp. 3727–3732. IEEE CS (2012)
Chelimsky, D., et al.: The RSpec book: Behaviour driven development with RSpec, Cu-cumber, and friends. Pragmatic Bookshelf (2010)
Beck, K.: Test-driven development: by example. Addison-Wesley Professional (2003)
North, D.: What’s in a story (2009), http://dannorth.net/whatsin-a-story
North, D.: Introducing BDD. Better Software (2006)
Cucumber, http://cukes.info/
FitNesse, http://fitnesse.org/FitNesse
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2014 Springer International Publishing Switzerland
About this paper
Cite this paper
Zhang, M., Yue, T., Ali, S., Zhang, H., Wu, J. (2014). A Systematic Approach to Automatically Derive Test Cases from Use Cases Specified in Restricted Natural Languages. In: Amyot, D., Fonseca i Casas, P., Mussbacher, G. (eds) System Analysis and Modeling: Models and Reusability. SAM 2014. Lecture Notes in Computer Science, vol 8769. Springer, Cham. https://doi.org/10.1007/978-3-319-11743-0_10
Download citation
DOI: https://doi.org/10.1007/978-3-319-11743-0_10
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-11742-3
Online ISBN: 978-3-319-11743-0
eBook Packages: Computer ScienceComputer Science (R0)