Generating and Analyzing Test cases from Software Requirements using NLP and Hadoop
Pages : 3934-3937
Download PDF
Abstract
Software testing is the most critical step of software development since it ensures that the system under developments free of errors and unprecedented faults and matches the expectation and requirements elicited from users and stakeholders. However, the process of testing is currently a manual process and is thus prone to mistakes by human testers and time-consuming and arduous. This paper proposes the automation of the task of generating test cases from software requirements written in natural language. This solves the problems of human errors and requirement of manual effort in ensuring coverage of requirements specified during requirements elicitation. It also enables test cases to be generated early on in the software development lifecycle based on requirements documents. The method we propose involves taking software requirements expressed in natural language as input and processing them using natural language processing techniques such as POS tagging and parsing. These NLP constructs are used to represent the requirements in the form of tree structures, which are used to generate knowledge graphs that depict the essential flow of the system. These paths can be traversed using methods such as boundary value analysis, etc. to obtain a suite of test cases.
Keywords: Natural Language Processing, Knowledge representation, Hadoop, Software testing, Software engineering, Test cases.
Article published in International Journal of Current Engineering and Technology, Vol.4, No.6 (Dec-2014)