I. Introduction
In software development life cycle, software testing covers almost 40-50% of the total development cost [1]. Testing cost can be reduced largely if the errors can be filtered earlier. However, test case generation, full path coverage, test result optimization are technically difficult to maintain manually. Random test data generation is used to select random inputs for Software Under Test (SUT) [2] [3]. But the tester is unable to find most of the errors because the testing requirements are not incorporated with the data generation process. So, automation of testing is desired both to enhance the quality of testing and reduce the testing cost [4].