The necessity of Unit Testing cannot be denied in catching bugs at the lowest level of software development with low cost of fixing bugs. It is difficult and costly to detect a bug at a later stage of development in a large module of software. Since there are many individual units (functions) in a software program, manual unit testing needs a lot of effort and time. A huge amount of time and human effort can be saved if unit testing is automated. There are 3 basic needs of unit testing i.e. identifying the inputs to a function, detecting runtime errors and detecting logical errors. Concolic Testing is used to identify the inputs to function and detecting the runtime errors. Mutation Testing is used to detect the logical errors. The identified inputs to a function are called as Test Cases. Mutation testing can verify the test cases to see if there is a need of having more test cases for a function. Our software uses both Concolic and Mutation testing and can automate the unit testing process of Java code to a great extent. The output of the work is JUnit where user can make his own assertions for every auto-generated test cases.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.