Abstract

ABSTRACT Software testing plays a crucial role in software development life cycle. Without testing, quality of software product is questionable. Mutation testing, widely accepted fault based testing technique. Aspect Oriented Programming is a new methodology that introduces the concept of modularization. AspectJ is an aspect oriented programming language that provides the concept of pointcut and advice. With new features, AOP introduces new faults that can be easily handled by mutation testing. In this paper, we evaluate the available AspectJ based mutation testing tools and identify the basic requirements that must be satisfied by any developed tool. research plans. Keyword Mutation testing, Automated Mutation Testing tool, Fault based mutation testing tool, Mutation testing tool for AspectJ, AOP based Mutation testing tool. 1. INTRODUCTION Software testing is the activity of establishing confidence that a system does what it is supposed to do and does not what it is not supposed to do. Since it is impossible to build an error-free system, testing a system is an essential process in software development. Thus, a great deal of research on software testing has been carried out for many years [2,4]. Traditionally, software systems have been developed in a procedural environment and then in object oriented environment. Recently, a new approach to system decomposition has become popular called aspect-oriented programming (AOP), which makes it possible to clearly express programs involving such aspects, including appropriate isolation, composition and reuse of the aspect code [5,12]. The advent of object-oriented methodologies pulled the state of the system into individual objects, where it could be made private and controlled through access methods and logic [31]. This leads to the current situation: Developers are still having difficulty fully expressing a problem into a completely modular and encapsulated model. Although breaking a problem into objects makes sense, some pieces of functionality must be made available across objects. Aspect-oriented programming (AOP) is one of the most promising solutions to the problem of creating clean, well-encapsulated objects without extraneous functionality. The purpose of this work is to attempt to evaluate advantages and limitations of the current AspectJ based mutation testing tools. In this paper, we will find out the basic requirements to develop a mutation testing tool for AspectJ based systems. In this paper, we will compare the available AspectJ based mutation testing tools on the basis of requirements and identify the limitations. The structure of the paper is as follows. Section 2 describes the mutation testing process. Section 3 describes the current aspect oriented mutation testing tools. Section 4 describes the basic requirements to develop a mutation testing tool. Finally, section 5 makes a conclusion on the requirements on the basis of current aspect oriented mutation testing tools and proposes future

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call