Automated test data generation has become a hot point in the research of software tests, and lots of useful models and methods have been proposed by researchers, but the performances of these existing schemes are not very satisfactory. So, it is very important to study how to design new automated methods with high performances for test data generation. Based on selective redundancy, a new automated test data generation algorithm is proposed, which firstly adopts methods such as linear approximation and minimization of branch functions to find out all feasible paths and automatically generate original test data suite for partly feasible paths and then subjoins test data based on selective redundancy for predicates and sub-path pairs that have not been covered by the original test data suite when test data suite cannot be obtained by using linear approximation and minimization of branch function methods. This new algorithm, combined with predicate slice and DUC expression of functions, can determine whether the sub-path is feasible from the source point. It can also effectively decrease the adverse influence of infeasible path on the algorithm performance. Algorithm analysis and experiment results show that the new algorithm can reduce the size of test data suite effectively and improve the test performance.