Page 84 - 《软件学报》2026年第1期
P. 84

吉品 等: 面向智能软件系统的测试用例生成方法综述                                                         81


                 度及环境因素     (如天气、光照、障碍物等), 且需生成能够覆盖多种现实场景的测试输入; (3) 基于点云语义的测试
                 预言构建: 由于点云数据缺乏结构化的语法规则, 测试预言的构建需结合几何信息、任务特征与环境信息, 以确保
                 自动化评估的有效性. 为应对上述挑战, 现有方法主要通过以下技术路径生成点云数据的测试用例: 基于仿真工具
                 的点云数据合成方法, 通过从虚拟环境中收集点云数据, 确保生成的测试用例涵盖了各种可能的测试场景; 或者,
                 基于现有点云数据集的方法, 通过利用已有的点云数据集, 进行数据扩展和变异                        (如基于仿射变换和环境因素的变
                 异方法), 快速生成多样化的测试用例, 以应对不同测试场景的需求和测试系统在不同实际环境中的稳健性; 最后,
                 可基于虚拟环境中获取的实例信息或蜕变测试理论, 定义蜕变关系, 以实现错误行为的自动化捕获. 接下来, 本文
                 将按照点云处理任务的分类来进一步地详细讨论分析.

                                       表 7 现有面向点云处理应用的测试用例生成方法总结

                  发表年份      文献来源              测试输入生成                            测试预言构建
                                                                  基于该点的坐标距离, 可获得距离该点的距离、被射线
                    2018      [103]  捕获游戏中的画面, 收集对应的点云数据
                                                                  集中的对象类别和实例ID等信息
                                                                  蜕变关系: 天气变换后点云的目标检测结果与原始点云
                                    (1) 雨天变换; (2) 雪天变换; (3) 雾天变换;
                    2022      [104]                               的检测结果一致; 仿射变换后点云的目标检测结果与在
                                    (4) 平移; (5) 旋转; (6) 放缩; (7) 对称
                                                                  原始结果上应用仿射算子的结果一致


                                测试挑战                      技术路径                      测试目标
                                                                               避免因点云预处理引入
                              点云数据预处理             基于仿真工具的点云数据合成                额外的误差, 从而影响
                                的可控性              基于现有点云数据集
                                                                               测试结果的可靠性
                                                                               确保变异后的点云符合实
                              点云数据变异的             基于仿射变换的点云数据变异
                                复杂性               基于环境因素的点云数据变异                际应用需求, 评估系统在
                                                                               不同应用环境下的稳健性
                                                                               确保测试用例能够自动
                              基于点云语义的             基于仿真工具的实例目标获取                化地有效捕获系统多样
                              测试预言构建              基于语义一致性的测试预言构建
                                                                               化的错误行为
                                       图 9 面向点云处理应用的测试用例生成方法研究框架

                  6.1   目标分割与检测
                    当前, 面向自动驾驶领域中基于点云的目标分割和检测任务的测试用例生成方法主要分为两类: 一是从虚拟
                 场景中收集全新的点云数据, 二是对现有的点云数据实施变异. 第                    1  种类型的方法不仅需要保证点云数据收集的
                 准确性, 还需要获取到对应目标的相关信息作为测试预言. 例如, Yue 等人                   [103] 提出的点云数据生成框架可实现从
                 计算机游戏“Grand Theft Auto V”中快速创建点云及其对应的精确点级标签, 以生成测试用例. 当游戏中的车辆在
                 虚拟三维街道上行驶时, 该框架可同步采集雷达点云数据并捕获游戏画面. 在数据采集的过程中, 该框架将虚拟激
                 光雷达扫描仪和游戏摄像机置于虚拟三维空间中的相同位置, 这种设置带来了两大优点: 1) 实现对点云数据与图
                 像数据的完整性与一致性检查; 2) 自动完成游戏摄像机与激光雷达扫描仪的配准, 实现点云与图像数据的自动化
                 组合. 该框架使用射线投射        API 来模拟虚拟雷达扫描仪发出的激光, 该            API 可以将射线起始点和结束点的三维坐
                 标作为输入, 并返回射线到达的第           1  个点的三维坐标. 该框架还可基于该点的坐标距离获取其到雷达的距离、被
                 射线命中的对象类别和实例          ID  等信息, 从而实现对收集数据的自动化注释. 该框架生成的点云数据不仅可以用来
                 系统地测试完成点云分割任务的应用, 还可以在训练或是重训练阶段用来提升应用的性能.
                    第  2  类方法与其他类型智能软件中的蜕变测试方法类似, 通常先使用符合蜕变关系要求的变换算子对点云数
                 据进行变异, 再判断变异前后的目标分割或检测结果是否满足预设蜕变关系. 例如, 用于自动驾驶汽车目标检测任
                 务的自动化测试工具 LiRTest, 定义了基于种子点云数据在不同转换算子作用下目标检测结果之间的蜕变关系, 若
                 违反这些蜕变关系, 则表明存在潜在缺陷             [104] . 在测试输入生成方面, LiRTest 实现了两大类变换算子: 天气变换与
                 仿射变换. 天气变换包括模拟雨、雪和雾等环境条件, 仿射变换则包括平移、旋转、缩放与对称操作. 在应用天气
   79   80   81   82   83   84   85   86   87   88   89