1.一种基于输入域错误定位的极小故障定位方法,其特征在于包含以下步骤:步骤1:生成并分析输入集,对其分类,形成失效的测试用例和通过的测试用例,包括:步骤1-1:通过现有工具生成τ-维组合覆盖表作为待测软件SUT的测试用例集T;
步骤1-2:测试包含T的SUT,判断T中测试用例是否为失效测试用例;
步骤1-2-1:如判断为是,将失效测试用例放入T1中;
步骤1-2-2:如判断为否,将通过测试用例放入T2中;
步骤1-3:生成子模式;
步骤1-3-1:将T1的所有子模式放入ScheSet(T1)中;
步骤1-3-2:将T2的所有子模式放入ScheSet(T2)中;
步骤1-4:生成初始结果SuspSet(0)=ScheSet(T1)-ScheSet(T2);
步骤2:通过迭代交互故障定位方法得到故障定位结果,获得未经过约简的极小故障模式集,包括:步骤2-1:判断上一次循环结果SuspSet(i-1)是否达到合适集合大小或者是否同SuspSet(i-2)的集合大小相同;
步骤2-1-1:如判断为是,退出循环,返回SuspSet(i),跳转到步骤2-3,继续分析;
步骤2-1-2:如判断为否,进行下一步生成附加测试用例工作;
步骤2-2:生成附加测试用例,为每次循环生成T1中的每个失效测试用例的变异强度为i的附加测试用例集AT(i);
步骤2-3:将AT(i)分为失效测试用例集AT(i)1和通过测试用例集AT(i)2;
步骤2-4:生成循环结果SuspSet(i)=SuspSet(i-1)-ScheSet(AT(i)2),跳转到步骤2-
1,继续分析;
步骤3:对得到的未经过约简的极小故障模式进行约简,减少冗余性,得到更为精简的极小故障模式集,包括:步骤3-1:将每个极小故障模式依照现有的极小故障模式集进行父子模式关系的排序,判断当前极小故障模式是否拥有子模式;
步骤3-2:如判断为是,删除父模式,保留子模式,跳转到步骤3-1,继续分析;
步骤3-3:如判断为否,保留当前故障模式作为极小故障模式,停止程序。