| With the increasement of software scale and complexity, software testing plays a more important role in cost control and software reliability, and hence gains more and more attention. Effectiveness of test cases and oracle problem are two major issues in software testing.Among the methods of generating appropriate test cases, Random Testing is the simplest one. Test cases are generated randomly from the input domain. Hence it has been widely used in software testing.However, it has poor effectiveness.Recently, Adaptive Random Testing (ART) proposed by T.Y.Chen is a significant improvement of random testing. Of all the implementations of ART, FSCS algorithm is the most classic one.However, "Boundary Effect" has a bad influence on the effectiveness of FSCS,particularly when the input domain is high-dimensional.As a result, we propose Circling FSCS algorithm to solve "Boundary Effect" and improves the efficiency of FSCS.In software testing, testers are always unable to determine the correctness of program outputs, which is called oracle problem. Metamorphic testing (MT) is proposed by T.Y.Chen to resolve the problem. MT tests a program by checking the relations among series of test cases'outputs.Among the factors that affect MT results, Original test cases and metamorphic relations are two very important ones. In this paper we use Circling FSCS algorithm as initial case generation strategies to select more typical test cases, and provide a testing tool (AMT) to combine different metamorphic relations.It turns out to be that MT performs better.Although MT has been widely used in software testing due to the simplicity and practicality, it still needs proper tools.Based on the above ideas, we build a tool called AMT (Auto-MT), which facilitates MT and improves testing efficiency. It generates test cases based on Adaptive Random testing and supports compound metamorphic relations.Moreover, it is an open system which also provides an interface to add new original test case generation strategies. |