摘要:测试用例优先级排序方法TCP在缓解测试开销方面备受关注. 基于不同优先级策略的贪心算法是TCP中常用的方法. 然而, 现有基于贪心算法的TCP技术多使用单一的排序策略, 且每轮迭代排序过程一次性考虑全部测试用例, 而未关注用例间的关系, 导致在覆盖信息和排序方面的处理上耗时过长, 极大降低排序效率. 同时, 在单一的排序策略中, Additional策略得到广泛研究, 但其受随机因素影响较大, 当出现平局时, 通常会随机选择待排用例, 影响排序的有效性. 基于此, 提出一种面向两阶段分组的测试用例优先级排序方法TPG-TCP. 第1阶段进行粗粒度测试用例分组, 通过挖掘用例间的隐藏关系, 将它们分为关键用例组和普通用例组, 为下一阶段采用多样性策略排序做准备, 以提高排序效率. 第2阶段进行细粒度测试用例分组排序, 根据迭代次数将关键用例分组, 为减少Additional策略中随机因素的干扰, 提出基于用例潜力度的TP-Additional策略对一部分关键用例排序, 同时采用简单高效的Total策略对普通用例与另一部分关键用例排序, 将排序结果追加至TP-Additional策略的排序结果中, 在排序有效性提升的同时也提高了效率. 通过与8种相关方法在6个数据集上的对比结果发现, 所提方法是高效且可行的, 在APFD与TETC指标上分别平均提升约1.29%和9.54%.