CN111881032A - 一种面向自动驾驶软件系统激光雷达的分布式模糊测试方法 - Google Patents

一种面向自动驾驶软件系统激光雷达的分布式模糊测试方法 Download PDF

Info

Publication number
CN111881032A
CN111881032A CN202010714657.XA CN202010714657A CN111881032A CN 111881032 A CN111881032 A CN 111881032A CN 202010714657 A CN202010714657 A CN 202010714657A CN 111881032 A CN111881032 A CN 111881032A
Authority
CN
China
Prior art keywords
test
data
evaluation
technology
automatic driving
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010714657.XA
Other languages
English (en)
Inventor
陈振宇
张晓波
郭安
夏志龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Muzhi Technology Co ltd
Original Assignee
Shenzhen Muzhi Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Muzhi Technology Co ltd filed Critical Shenzhen Muzhi Technology Co ltd
Priority to CN202010714657.XA priority Critical patent/CN111881032A/zh
Publication of CN111881032A publication Critical patent/CN111881032A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Traffic Control Systems (AREA)

Abstract

本发明通过模糊测试技术来实施自动驾驶软件系统的自动化测试评估,主要采用了分布式点云数据生成和测试技术,特征是能够高效进行自动化测试用例生成、自动驾驶软件系统评估以及测试报告的生成。在具体流程中使用基于模糊引导的测试数据生成、分布式技术、点云数据分析、点云格式转换、数据度量、系统评估以及报告生成技术,通过分布式架构实现大规模高效测试,并基于构建蜕变关系评估模型缺陷,最终完成对自动驾驶系统的安全度评价。

Description

一种面向自动驾驶软件系统激光雷达的分布式模糊测试方法
技术领域
本发明属于软件测试领域,特别是涉及到模糊测试技术。以分布式架构,针对自动驾驶软件系统激光雷达进行测试用例生成,对自动驾驶软件系统进行测试评估,同时进行监控并最终生成测试报告。
背景技术
模糊测试(Fuzzing)是目前最流行的漏洞发现技术。Fuzzing测试作为一种自动化的软件测试技术,它提供不符合人类逻辑但是被解析器接受的大量随机数据作为程序输入,以发现程序内部异常。与其他技术相比,Fuzzing易于部署,具有良好的可扩展性和适用性,并且可以在有或没有源代码的情况下执行。 此外,由于模糊测试是在实际执行过程中进行的,因此具有较高的准确性。更重要的是,Fuzzing只需要很少的目标应用程序知识,可以很容易地扩展到大规模应用程序。特别在机器学习系统中,Fuzzing能大大提高测试的效率和覆盖率。然而,模糊的随机性和盲目性导致了查找错误的低效率与资源浪费,研究者谋求(1)如何采取更好的突变策略以节约资源;(2)如何在测试中定位代码的关键位置;(3)如何以更高效的架构进行测试。
在自动驾驶系统中,目标识别、分类和决策等均是使用了机器学习CNN算法。例如,摄像头在对图像分类过程以及激光雷达对点云数据的目标检测过程中均使用的是机器学习中的神经网络算法,自主决策控制模块则很大程度上应用了机器学习的知识,并能在车辆的行驶中不断学习和强化已有的决策能力。自动驾驶作为神经网络中“性命攸关”的领域,对程序安全性提出了极高的要求,拥有覆盖面广,安全度高且高效率的测试方法是自动驾驶软件系统研究中极为重要的一环。
目前模糊测试在自动驾驶软件系统中的应用还存在诸多限制,首先传统模糊测试所使用的传统字节级别的变异技术对具有高结构化的输入类型影响较小,无法对巨大的输入域空间进行充分覆盖,另外,不同于传统软件,自动驾驶软件系统涉及到多种传感器数据的感知与分析,其不仅输入数据形式多样,而且测试所需数据量庞大,测试和评估所需时间资源较多,如何针对这些类型传感数据建立也是一套高效的自动化测试方法是很大的挑战。
因此,本项目拟研究针对自动驾驶软件系统激光雷达的分布式模糊测试技术,对自动驾驶软件系统进行自动化测试,通过分布式架构实现高效测试,最终完成对自动驾驶系统的安全度评价。
发明内容
本发明要解决的问题是:自动驾驶软件系统测试效率低下,难以进行快速的自动化迭代测试的问题。本专利的发明能够自动化进行测试用例生成、测试评估和报告生成,并通过分布式架构,以实现高效的测试迭代,解决自动驾驶软件系统测试效率低的问题。
本发明的技术方案为:一种面向自动驾驶软件系统激光雷达的分布式模糊测试方法,其特征是能够高效进行自动化测试用例生成、自动驾驶软件系统评估以及测试报告的生成。该方法包含以下三个模块。
用例生成模块:
Fuzzing测试是一个无限空间的测试,逻辑上讲可以有无限个测试用例,为了有效的测试被测对象,必须对随机用例的生成做一些限制,即在一定的范围内生成测试用例。针对自动驾驶激光雷达,我们采用规则和变异的方法来进行测试用例生成,通过构建生成规则来生成特定场景的激光雷达点云数据,例如雨、雪和雾等,再通过变异进行微调,达到更高的覆盖率。
测试评估模块:
测试评估模块主要有两部分,一个是对生成的测试用例的评估,对于生成的测试用例,需要进行质量度量,来确保生成的测试用例的高质量,通过5个方面进行评估,即完整性、准确性、时效性、有效性和一致性,对于质量不合格的测试用例,将进行剔除并记录到报告中去。另一部分是对自动驾驶软件系统的评估,本专利将质量合格的测试用例输入到被测的自动驾驶软件系统中去,来对被测系统进行测试评估,产生的测试评估结果记录到报告中,并最终提供被测试和开发人员。
监控报告模块:
自动驾驶软件系统的模糊测试必须支持执行过程中相关数据的记录,以便测试工程师复现问题,并与定义的测试用例和参数进行对比,也为研发工程师回放调试提供便利。同时,本专利提供的技术可自动生成报告,其对测试执行过程的详细描述为相关测试团队提供进一步定位问题的可行性。测试监控系统的功能是监视目标程序的运行状态是否出错,将运行状态及测试结果保存到日志中,并最终生成测试报告。
附图说明
图1 为本发明实施总流程图。
图2为测试用例生成模块流程图。
图3为测试评估模块流程图。
图4为监控报告模块流程图。
具体实施方式
以下通过特定的具体的实例说明本发明的实施方式,本领域的技术人员可由本说明书揭露的内容轻易地了解到本发明的其他优点和功效。
本发明通过模糊测试技术来实施自动驾驶软件系统的自动化测试评估,主要采用了分布式点云数据生成和测试技术,具体关键技术有分布式技术、点云数据分析、点云格式转换、数据度量、系统评估以及报告生成技术等。
1、点云数据生成
在本发明中,通过分析自动驾驶数据集以及已有论文,总结自动驾驶激光雷达受恶劣天气影响的规律,提炼出扩增规则,如雨、雪和雾等天气规则。再通过变异对扩增测试用例,在一定规则约束下基于模糊引导技术,微调产生大规模测试用例,以此实现更高的测试覆盖率。
2、点云数据度量
点云数据质量的度量流程首先确定要检测的数据质量指标和评估规则,然后编写相应的评估脚本来检测分析数据,最后计算满足各个规则的数据的百分比得分。系统的综合得分的计算可以通过把每条规则的得分计算出来,然后综合后取平均值,但更为合理的方法就是可以把每条规则的得分按照给定的权重进行评价,做出一个合理的数据质量评价等级。由用户规定每个检测规则的权重,做出一个权重方案,然后按照各个检测规则的权重进行整体的计算统计,得到一个合理的数据质量评估得分。对于自动驾驶软件系统的激光雷达点云数据质量的评估,本专利主要关注以下方面:数据完整性、数据准确性、数据有效性、数据时效性、数据一致性。
3、测试系统评估
对于测试系统的评估需要一套评估的标准,对于自动驾驶软件系统,输入的数据往往是复杂多变的,其评估的准则也难以确定。本专利通过构建评估的蜕变关系,通过对比分析生成的测试用例与源测试用例的关系,构建一系列蜕变关系,运用蜕变关系来对特定生成用例输入被测自动驾驶系统产生的结果进行评估,得到一个最终的评估结果。
4、测试实时监控
测试实时监控主要用于实时监控被测系统的状态,并将其记录到日志中去。被测系统将运行结果返回给监控模块,监控模块将运行结果与预期结果进行比较,如果运行结果与预期结果不符,将当前模糊测试用例存储到异常测试用例数据集中。无论结果如何,均将其运行结果和参数配置发送给日志系统进行处理。
5、测试报告生成
报告生成模块,主要用于将测试日志总结归纳生成报告,对测试执行过程进行详细描述,总结归纳运行结果,为测试团队提供进一步定位问题的可行性。报告内容包括但不限于测试用例总数、异常次数、异常用例占比、异常用例类型数据等。
在本专利中,我们使用点云处理库PCL对激光雷达点云数据进行处理,通过构建点云数据生成规则并利用PCL来对点云数据生成一个点云模版,每次生成对模版进行微调,可以产生大量的点云测试用例。在点云数据度量部分,我们通过提前设定的度量规则对数据进行度量,剔除质量不合格的测试用例。通过将测试用例输入被测系统进行评估,最终产生测试结果存储起来,在整个测试流程完成后自动生成测试报告,报告中详细记录了测试的成功率、失败率和各种失败异常细节。

Claims (3)

1.一种面向自动驾驶软件系统激光雷达的分布式模糊测试方法,其特征在于,采用了分布式点云数据生成和测试技术,能够高效进行自动化测试用例生成、自动驾驶软件系统评估以及测试报告的生成,首先在用例生成模块中,采用规则提取加变异手段,生成特定场景的测试用例,接着使用模糊测试技术对于数据进行微调,生成大量测试用例以提高覆盖率,为度量相关扩增数据质量,把每条规则的得分按照给定的权重进行评价,形成合理的数据质量评价等级,由用户规定检测规则的权重,做出一个权重方案,然后按照各个检测规则的权重进行整体的计算统计,得到一个合理的数据质量评估得分,最后,通过构建蜕变关系来解决系统输出正确性问题,被测系统将运行结果返回给监控模块,监控模块将运行结果与预期结果进行比较,如果运行结果与预期结果不符,将当前模糊测试用例存储到异常测试用例数据集中。
2.根据权利要求1所述的一种面向自动驾驶软件系统激光雷达的分布式模糊测试方法,其特征在于,模糊引导的点云测试数据生成和度量方法,通过分析自动驾驶开源数据集和已有论文,提炼出自动驾驶和智能交通领域数据样本扩增规则,采用众包等技术实现分布式的规则获取,即确定特定测试场景下需要的多种状态对应数据的特征区域,通过Fuzzing方法能够在基本数据格式或场景条件制约下,实现扩增测试用例的微调扰动,从而生成更大规模的高覆盖数据集合,把每条规则的得分按照给定的权重进行评价,做出一个合理的数据质量评价等级,由用户规定每个检测规则的权重,做出一个权重方案,然后按照各个检测规则的权重进行整体的计算统计,得到一个合理的数据质量评估得分,对于自动驾驶软件系统的激光雷达点云数据质量的评估,主要关注以下方面:数据完整性、数据准确性、数据有效性、数据时效性、数据一致性,最终形成五维度量评估结果。
3.根据权利要求1所述的一种面向自动驾驶软件系统激光雷达的分布式模糊测试方法,其特征在于,构建评估的蜕变关系,通过对比分析生成的测试用例与源测试用例的关系,构建一系列蜕变关系,运用蜕变关系来对特定生成用例输入被测自动驾驶系统产生的结果进行评估,同时基于分布式的系统评估,能够在短时间内容实现关系构建,基于不同的结果反馈,优化整体评估效率,得到一个最终的评估结果。
CN202010714657.XA 2020-07-23 2020-07-23 一种面向自动驾驶软件系统激光雷达的分布式模糊测试方法 Pending CN111881032A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010714657.XA CN111881032A (zh) 2020-07-23 2020-07-23 一种面向自动驾驶软件系统激光雷达的分布式模糊测试方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010714657.XA CN111881032A (zh) 2020-07-23 2020-07-23 一种面向自动驾驶软件系统激光雷达的分布式模糊测试方法

Publications (1)

Publication Number Publication Date
CN111881032A true CN111881032A (zh) 2020-11-03

Family

ID=73156305

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010714657.XA Pending CN111881032A (zh) 2020-07-23 2020-07-23 一种面向自动驾驶软件系统激光雷达的分布式模糊测试方法

Country Status (1)

Country Link
CN (1) CN111881032A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116503830A (zh) * 2023-06-25 2023-07-28 小米汽车科技有限公司 目标检测算法的测试方法、装置及服务器

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105843744A (zh) * 2016-04-22 2016-08-10 中国矿业大学 用于并行程序蜕变测试的蜕变关系优先级排序方法
US20170132117A1 (en) * 2015-11-06 2017-05-11 Ford Global Technologies, Llc Method and device for generating test cases for autonomous vehicles
CN109948683A (zh) * 2019-03-12 2019-06-28 百度在线网络技术(北京)有限公司 点云数据的难易度划分方法、装置及其相关设备
CN110688311A (zh) * 2019-09-25 2020-01-14 武汉光庭信息技术股份有限公司 一种面向自动驾驶典型场景的测试用例管理方法和装置
CN110716529A (zh) * 2019-09-25 2020-01-21 武汉光庭信息技术股份有限公司 一种自动驾驶测试用例自动生成方法和装置
US20200200896A1 (en) * 2018-01-12 2020-06-25 Tiejun Shan System and Method of Utilizing a LIDAR Digital Map to Improve Automatic Driving

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170132117A1 (en) * 2015-11-06 2017-05-11 Ford Global Technologies, Llc Method and device for generating test cases for autonomous vehicles
CN105843744A (zh) * 2016-04-22 2016-08-10 中国矿业大学 用于并行程序蜕变测试的蜕变关系优先级排序方法
US20200200896A1 (en) * 2018-01-12 2020-06-25 Tiejun Shan System and Method of Utilizing a LIDAR Digital Map to Improve Automatic Driving
CN109948683A (zh) * 2019-03-12 2019-06-28 百度在线网络技术(北京)有限公司 点云数据的难易度划分方法、装置及其相关设备
CN110688311A (zh) * 2019-09-25 2020-01-14 武汉光庭信息技术股份有限公司 一种面向自动驾驶典型场景的测试用例管理方法和装置
CN110716529A (zh) * 2019-09-25 2020-01-21 武汉光庭信息技术股份有限公司 一种自动驾驶测试用例自动生成方法和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
闫施违: "一种自动驾驶系统测试用例生成技术的实证研究", 《中国优秀硕士学位论文全文数据库 (工程科技Ⅱ辑)》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116503830A (zh) * 2023-06-25 2023-07-28 小米汽车科技有限公司 目标检测算法的测试方法、装置及服务器
CN116503830B (zh) * 2023-06-25 2023-10-13 小米汽车科技有限公司 目标检测算法的测试方法、装置及服务器

Similar Documents

Publication Publication Date Title
US20200374720A1 (en) Method for Detecting Abnormal Data in Sensor Network
CN103324937B (zh) 标注目标的方法和装置
CN111753985B (zh) 基于神经元覆盖率的图像深度学习模型测试方法与装置
CN111144609A (zh) 一种锅炉废气排放预测模型建立方法、预测方法及装置
CN103630244A (zh) 电力系统设备故障诊断方法及系统
CN116401532B (zh) 一种电力系统受扰后频率失稳识别方法及系统
CN116432123A (zh) 一种基于cart决策树算法的电能表故障预警方法
CN111881032A (zh) 一种面向自动驾驶软件系统激光雷达的分布式模糊测试方法
CN116991738A (zh) 一种计算机软件测试系统、方法、计算机设备及存储介质
CN114240003A (zh) 一种新能源出力预测方法、系统、存储介质及设备
CN113593605A (zh) 一种基于深度神经网络的工业音频故障监测系统和方法
CN112463852A (zh) 一种基于机器学习的单个指标异常点自动判断系统
Elgamal et al. Seamless Machine Learning Models to Detect Faulty Solar Panels
CN114841266A (zh) 一种小样本下基于三元组原型网络的电压暂降识别方法
CN115563885A (zh) 一种风电厂储能电池能量转换系统
Wang et al. Substation switching device identification method based on deep learning
Su et al. New Particle Formation Events Detection with Deep Learning
CN117875421B (zh) 基于深度学习的光伏阵列故障诊断方法及系统
Wu et al. A satellite fault diagnosis method based on focus loss function and balance factor
Pei et al. Research on Real-time State Identification Model of Electricity-heat System Considering Unbalanced Data
Yu et al. A novel object recognition method for photovoltaic (PV) panel occlusion based on deep learning
CN115065556B (zh) 一种基于图对比学习的日志恶意行为检测方法及系统
Zhang Research on Computer Software Engineering Project Automation Management based on Data Mining and Fuzzy Clustering
CN118070202A (zh) 一种基于人工智能的工业数据质量治理系统
Xue et al. Application of Adaboost Algorithm on Automatic Detection of Electrical Equipment Operation Status

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20201103

RJ01 Rejection of invention patent application after publication