Page 121 - 《软件学报》2025年第5期
P. 121
郝蕊 等: 基于事件标记的多粒度结合安卓测试序列约减 2021
以上结果说明了两个粒度的约减分别起到了粗略筛选与精细缩减的作用, 前期约减首先去除大部分对触发程
序崩溃不起作用事件, 而后期约减则可进一步精简序列, 但又不会花费很长时间, 这也验证了 TREC 多粒度结合的
约减机制的有效性.
4.4.5 研究问题 5: 环路约减效果分析
在此研究问题中, 我们对 TREC 算法在两个粒度上的环路约减效果进行分析, 具体包括了环路间约减及环路
内约减. 表 4 给出了具体结果, 在控件粒度和页面布局粒度上分别统计了当前粒度状态跳转图上的环路数量 (第 2、
8 列) 及环路深度 (第 3、9 列), 以及分别在环路间约减及环路内约减上算法执行的轮次数目 (第 4、6、10、
12 列) 及约减后的序列长度 (第 5、7、11、13 列). 轮次数目代表了算法可以在多少次搜索、验证后完成路径约
减, 是 TREC 算法效率高低的直接体现. 特别的, 表 4 的环路数量为最长环路的数量, 此外, 环路深度并非为所有环
路的深度, 而是 TREC 方法最终搜索出来的路径中的环路深度.
表 4 TREC 中环路间约减与环路内约减模块效果分析表
控件粒度 页面布局粒度
ID 环路 环路 环路间约减 环路内约减 环路 环路 环路间约减 环路内约减
数量 深度 轮次 长度 轮次 长度 数量 深度 轮次 长度 轮次 长度
1 13 0 4 12 (87.76%) 0 12 (0) 3 0 10 12 (0) 0 12 (0)
2 9 0 4 13 (86.73%) 0 13 (0) 4 1 9 12 (7.69%) 5 12 (0)
3 12 2 3 15 (89.36%) 3 12 (20.00%) 3 0 7 12 (0) 0 12 (0)
4 48 1 3 12 (88.68%) 2 12 (0) 3 0 6 12 (0) 0 12 (0)
5 3 0 4 12 (81.25%) 0 12 (0) 3 0 6 12 (0) 0 12 (0)
6 7 1 5 12 (88.46%) 2 12 (0) 3 0 6 12 (0) 0 12 (0)
7 17 1 3 14 (90.41%) 2 14 (0) 3 0 6 14 (0) 0 14 (0)
8 10 1 3 12 (88.12%) 2 12 (0) 3 0 8 12 (0) 0 12 (0)
9 7 2 3 4 (94.52%) 2 3 (25.00%) 1 0 1 3 (0) 0 3 (0)
10 4 0 8 9 (78.05%) 0 9 (0) 3 0 3 8 (11.11%) 0 8 (0)
11 3 0 2 3 (93.88%) 0 3 (0) 0 0 0 3 (0) 0 3 (0)
12 2 0 2 3 (93.75%) 0 3 (0) 0 0 0 3 (0) 0 3 (0)
13 4 0 2 3 (95.71%) 0 3 (0) 0 0 0 3 (0) 0 3 (0)
14 4 0 2 3 (95.59%) 0 3 (0) 0 0 0 3 (0) 0 3 (0)
15 5 7 3 17 (80.46%) 9 12 (29.41%) 2 2 1 12 (0) 2 12 (0)
16 4 2 2 12 (81.82%) 1 11 (8.33%) 4 2 3 7 (36.36%) 1 6 (14.29%)
17 3 3 46 25 (75.00%) 2 8 (68.00%) 3 2 3 7 (12.50%) 2 5 (28.57%)
18 4 0 1 5 (91.80%) 0 5 (0) 0 0 2 5 (0) 0 5 (0)
19 3 0 1 5 (90.38%) 0 5 (0) 0 0 2 5 (0) 0 5 (0)
20 1 0 1 5 (90.00%) 0 5 (0) 0 0 1 5 (0) 0 5 (0)
21 2 0 1 5 (91.80%) 0 5 (0) 0 0 2 5 (0) 0 5 (0)
22 2 0 1 5 (93.98%) 0 5 (0) 0 0 1 5 (0) 0 5 (0)
23 2 0 2 8 (87.30%) 0 8 (0) 3 2 3 6 (25.00%) 5 5 (16.67%)
24 2 0 4 9 (81.63%) 0 9 (0) 0 0 0 9 (0) 0 9 (0)
25 2 0 3 9 (85.94%) 0 9 (0) 0 0 0 9 (0) 0 9 (0)
26 7 0 3 11 (82.81%) 0 11 (0) 0 0 0 11 (0) 0 11 (0)
27 2 0 4 9 (88.61%) 0 9 (0) 0 0 0 9 (0) 0 9 (0)
28 2 0 4 9 (86.96%) 0 9 (0) 0 0 0 9 (0) 0 9 (0)
29 2 0 4 11 (80.36%) 0 11 (0) 0 0 0 11 (0) 0 11 (0)
30 2 0 4 9 (86.36%) 0 9 (0) 0 0 0 9 (0) 0 9 (0)
31 2 0 20 9 (88.00%) 0 9 (0) 2 0 3 9 (0) 0 9 (0)
32 12 5 5 15 (83.33%) 7 9 (40.00%) 2 0 3 9 (0) 0 9 (0)
33 2 0 3 17 (74.24%) 0 17 (0) 5 2 12 15 (11.76%) 5 14 (6.67%)
34 8 3 14 23 (69.74%) 3 16 (30.43%) 4 1 9 14 (12.50%) 2 14 (0)
35 3 0 5 31 (70.75%) 0 31 (0) 6 1 7 17 (45.16%) 9 17 (0)