Sai Chaithra Allala
Sai Chaithra Allala received her Master’s degree from Florida International University in Computer Science and is currently pursuing a Ph.D. in Computer Science. Her research areas of interest include software engineering, software Testing and computer science education. Currently the focus of her research is using model-driven engineering and natural language processing to automate the generation of test cases from user requirements.
Testing continues to be the main approach to ensuring software quality during development. Although there have been many attempts to automate the generation of test cases from user requirements (formal or informal), creating test cases continues to be mainly a manual process. However, many studies have shown that automating the generation of test cases from requirements can substantially reduce costs and improve the efficiency of the testing process. Test automation has also proven to show positive effects on software quality. With the advances in Model-driven Software Engineering (MDSE), Artificial Intelligence (AI), and Natural Language Processing (NLP), the possibility of further automating the generation of test cases from requirements is increasing.
We present an automated test case generation approach that uses a model-to-model (M2M) transformation that converts user requirements into test cases with the support of a knowledge base and NLP. The key to this transformation process is defining meta-models for user requirements (use cases and user stories) and test cases. The proposed M2M transformation is composed of three phases. Phase 1 includes creating Enhanced User Requirement Models (EURMs) from user requirements using NLP analysis and an application-specific data model. Phase 2 involves transforming EURMs to Abstract test Cases (ATCs) using the transformation rules defined between EUR and user requirements meta-models. Phase 3 consists of generating concrete test cases from ATCs and an application-specific data model instance. To validate each phase of the transformation process, case studies were conducted using a tool developed to evaluate the feasibility and accuracy of converting user requirements to test cases.