An Automated Approach of Test Case Generation for Concurrent Systems from Requirements Descriptions

Concurrent applications are frequently written, however, there are no systematic approaches for testing them from requirements descriptions. Methods for sequential applications are inadequate to validate the reliability of concurrent applications and they are expensive and time consuming. So, it is desired that test cases can be automatically generated from requirements descriptions. This paper proposes an automated approach to generate test cases for concurrent applications from requirements descriptions. The Scenario language is the representation used for these descriptions. Scenario describes specific situations of the application through a sequence of episodes, episodes execute tasks and some tasks can be executed concurrently; these descriptions reference relevant words or phrases (shared resources), the lexicon of an application. In this process, for each scenario a directed graph is derived, and this graph is represented as an UML activity diagram. Because of multiple interactions among concurrent tasks, test scenario explosion becomes a major problem. This explosion is controlled adopting the interaction sequences and exclusive paths strategies. Demonstration of the feasibility of the proposed approach is based on two case studies.

[1]  Kazuo Ushijima,et al.  Test-case generation for concurrent programs with the testing criteria using interaction sequences , 1999, Proceedings Sixth Asia Pacific Software Engineering Conference (ASPEC'99) (Cat. No.PR00509).

[2]  Rajeev Kumar,et al.  Testing for concurrency in UML diagrams , 2012, SOEN.

[3]  Alistair Cockburn,et al.  Writing Effective Use Cases , 2000 .

[4]  Hrushikesha Mohanty,et al.  Automated Scenario Generation Based on UML Activity Diagrams , 2008, 2008 International Conference on Information Technology.

[5]  Sungwon Kang,et al.  Test Cases Generation from UML Activity Diagrams , 2007 .

[6]  S. Uchitel,et al.  Monitoring and control in scenario-based requirements analysis , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[7]  Constance L. Heitmeyer Formal Methods for Specifying, Validating, and Verifying Requirements , 2007, J. Univers. Comput. Sci..

[8]  Durga Prasad Mohapatra,et al.  A novel approach of test case generation for concurrent systems using UML Sequence Diagram , 2011, 2011 3rd International Conference on Electronics Computer Technology.

[9]  Chayanika Sharma,et al.  Applying Genetic Algorithm for Prioritization of Test Case Scenarios Derived from UML Diagrams , 2014, ArXiv.

[10]  Javier J. Gutiérrez,et al.  An approach to generate test cases from use cases , 2006, ICWE '06.

[11]  Julio Cesar Sampaio do Prado Leite,et al.  A Scenario Construction Process , 2000, Requirements Engineering.

[12]  Claude Caci,et al.  Testing object-oriented systems , 2000, SOEN.

[13]  Wei Sun,et al.  BPEL4WS Unit Testing: Test Case Generation Using a Concurrent Path Analysis Approach , 2006, 2006 17th International Symposium on Software Reliability Engineering.

[14]  Sebastián Uchitel,et al.  Monitoring and control in scenario-based requirements analysis , 2005, Proceedings. 27th International Conference on Software Engineering, 2005. ICSE 2005..

[15]  Debasish Kundu,et al.  A Novel Approach to Generate Test Cases from UML Activity Diagrams , 2009, J. Object Technol..

[16]  J. Heumann Generating Test Cases From Use Cases , 2001 .

[17]  Pierre Dupont,et al.  Generating annotated behavior models from end-user scenarios , 2005, IEEE Transactions on Software Engineering.