Page 176 - 《软件学报》2026年第5期
P. 176

钱忠胜 等: 面向两阶段分组的测试用例优先级排序方法                                                      2055


                 文方法迭代次数划定       (即, 减少迭代次数) 的有效性; ③ Ours-3 变体方法不采用         TP-Additional 策略, 而采用  Additional
                 策略对粗粒度分组后的关键用例排序, 并减少迭代次数, 主要阐明本文方法提出的                           TP-Additional 策略的合理性;
                 ④ Ours-4  变体方法仅保留粗粒度用例分组模块, 并采用            Additional 策略, 此变体主要说明本文方法的粗粒度用例
                 分组模块与其他构件组合的效果如何; ⑤ Ours-5           变体方法仅在采用       Additional 策略排序时通过减少迭代次数提高
                 排序性能, 不对用例集进行粗粒度分组也不采用               TP-Additional 策略, 此变体主要阐述对迭代次数划定与其他构件
                 组合的有效性; ⑥ Ours-6   变体方法仅使用       TP-Additional 策略排序, 不进行粗粒度用例分组也不减少迭代次数, 此
                 变体主要阐述     TP-Additional 策略与其他构件组合的有效性. 各方法的构件组成情况如表                5  所示.

                                                 表 5 变体方法组件构成情况

                                                                  细粒度用例分组排序
                            变体方法       粗粒度用例分组
                                                      迭代次数划定       TP-Additional策略  Additional策略
                             Ours-1         ×             ○              ○              ×
                             Ours-2         ○             ×              ○              ×
                             Ours-3         ○             ○              ×              ○
                             Ours-4         ○             ×              ×              ○
                             Ours-5         ×             ○              ×              ○
                             Ours-6         ×             ×              ○              ×
                              Ours          ○             ○              ○              ×
                          注: ① “×”表示相应方法不包含该构件, “○”表示相应方法包含该构件; ② Additional策略并非本文方法
                          构件, 在表中列出意在表明, 当变体方法中未采用本文提出的TP-Additional策略排序时, 使用Additional
                          策略替代以指导排序

                    在  6  种不同规模数据集上进行消融实验, 并使用            APFD  和  TETC  作为评价指标, 以验证本文方法各构件对排
                 序性能的影响. 结果如表       6  所示.

                                                   表 6 消融实验结果对比

                                                                    变体名称
                   评价指标        数据集
                                         Ours-1    Ours-2   Ours-3   Ours-4    Ours-5   Ours-6    Ours
                                Flex     0.964 8   0.969 8  0.950 6  0.950 6   0.950 6  0.957 4  0.969 8
                               Tcas      0.941 2   0.963 3  0.922 4  0.922 4   0.921 6  0.935 1  0.963 3
                              Schedule2  0.935 4   0.947 7  0.918 7  0.918 7   0.918 7  0.926 9  0.947 7
                    APFD
                               Jsoup     0.946 1   0.958 8  0.932 8  0.932 8   0.932 8  0.945 9  0.958 6
                             Jacksoncore  0.948 5  0.953 2  0.923 7  0.923 7   0.923 7  0.937 6  0.953 2
                             Camel-core  0.961 3   0.964 5  0.954 4  0.954 4   0.954 4  0.959 0  0.964 5
                                Flex     0.106 4   0.093 6  0.088 1  0.094 4   0.098 2  0.138 7  0.086 2
                               Tcas      0.138 1   0.123 6  0.115 3  0.124 5   0.126 2  0.142 1  0.113 2
                              Schedule2  0.108 2   0.077 9  0.077 2  0.086 7   0.086 3  0.113 2  0.076 4
                   TETC (s)
                               Jsoup     0.232 4   0.206 4  0.206 2  0.209 3   0.212 2  0.276 8  0.205 8
                             Jacksoncore  0.286 5  0.253 6  0.243 6  0.256 3   0.254 1  0.335 2  0.242 2
                             Camel-core  21.223 8  18.277 5  17.428 1  22.764 2  23.674 3  25.761 4  15.769 3
                 注: 本文方法TPG-TCP的数据加粗标示, 为便于比较, 利用下划线突显变体方法中表现最佳的数据

                    图  2  是表  6  结果的更直观表示, 图    2(a)–(f) 分别表示  TPG-TCP  相比于各变体方法在数据集          Flex、Tcas、
                 Schedule2、Jsoup、Jacksoncore 与  Camel-core 上的性能比较情况.
                    由表  6  和图  2  可看出, 粗粒度用例分组构件对实验结果的影响最为显著, 未使用粗粒度用例分组的变体方法
                 Ours-1  在  APFD  与  TETC  这  2  个指标上的表现不如使用粗粒度用例分组的本文方法           Ours 以及其他变体方法; 迭
                 代次数划定构件会导致实验结果产生明显变化; TP-Additional 策略构件对各方法性能影响较大.
                    1) 粗粒度用例分组构件对方法效果的整体影响最大 (变体方法                    Ours-1). 为高效捕获并利用用例间的潜在关
                 系, TPG-TCP  在进行正式排序前考虑对用例进行粗粒度用例分组, 以减少后期排序中对覆盖信息的冗余访问以及
   171   172   173   174   175   176   177   178   179   180   181