CN113157551A - 一种面向ros的差分模糊测试方法 - Google Patents

一种面向ros的差分模糊测试方法 Download PDF

Info

Publication number
CN113157551A
CN113157551A CN202110048271.4A CN202110048271A CN113157551A CN 113157551 A CN113157551 A CN 113157551A CN 202110048271 A CN202110048271 A CN 202110048271A CN 113157551 A CN113157551 A CN 113157551A
Authority
CN
China
Prior art keywords
ros
module
difference
seed
differential
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.)
Granted
Application number
CN202110048271.4A
Other languages
English (en)
Other versions
CN113157551B (zh
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.)
Shanghai Industrial Control Safety Innovation Technology Co ltd
Capital Normal University
Original Assignee
Shanghai Industrial Control Safety Innovation Technology Co ltd
Capital Normal University
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 Shanghai Industrial Control Safety Innovation Technology Co ltd, Capital Normal University filed Critical Shanghai Industrial Control Safety Innovation Technology Co ltd
Priority to CN202110048271.4A priority Critical patent/CN113157551B/zh
Publication of CN113157551A publication Critical patent/CN113157551A/zh
Application granted granted Critical
Publication of CN113157551B publication Critical patent/CN113157551B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • 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/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/02Computing arrangements based on specific mathematical models using fuzzy logic

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Algebra (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Analysis (AREA)
  • Molecular Biology (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Biomedical Technology (AREA)
  • Automation & Control Theory (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种面向ROS的差分模糊测试方法,组件包括基础模块、策略处理模块、CLI接口、ROS功能包和差异计算评估模块,所述基础模块由参数输入处理组件和种子生成组件组成。该面向ROS的差分模糊测试方法,通过搭建差分模糊测试的框架,对ROS节点间通信进行模糊测试,设计了测试用例生成及差分模糊测试执行模块两个部分,通过用例的生成和差分模糊测试的执行得出差异信息并进行异常记录,且通过设计了两个评估指标来提高种子质量,同时对于ROS里面不同版本实现相同功能的其他功能包,可以使用该差分模糊测试方法来验证哪一个版本更加准确,以此提高了该算法的最终准确性。

Description

一种面向ROS的差分模糊测试方法
技术领域
本发明涉及ROS(Robot Operating System,机器人操作系统)的差分模糊测试技术领域,具体为一种面向ROS的差分模糊测试方法。
背景技术
模糊测试作为一种软件测试技术,其核心思想是自动或半自动的生成随机数据输入到一个程序中,并监视程序异常,如崩溃,断言失败,以发现可能的程序错误,比如内存泄漏。常常用于检测软件或计算机系统的安全漏洞。传统的模糊测试主要包括识别目标系统、确定输入、生成模糊数据、使用模糊数据执行测试、监控系统的行为以及记录缺陷六个核心步骤;通过使用Fuzz 技术,可以确保应用程序的健壮性和安全性,但是仅靠模糊测试无法全面了解整个安全威胁或bug,而且需要大量的时间;所以现在众多研究者将模糊测试与黑箱测试、Beta测试和其他调试方法一起使用,不仅可以提高测试的覆盖率还可以节省大量的时间。
实际上,可以影响ROS的安全性和可靠性的因素还有许多,如ROS上层集成了多个功能包,每一个功能的精准实现都直接影响着机器人的整体开发及实际应用,比如机械臂运动规划、机器人定位导航、仿真、可视化工具、坐标变换等工具包都与机器人开发的重要环节息息相关,但实际可以使用的开发版本并不是唯一的。
发明内容
本发明的目的在于提供一种面向ROS的差分模糊测试方法,以解决上述背景技术中提出影响ROS安全性和可靠性的因素过多的问题。
为实现上述目的,本发明提供如下技术方案:一种面向ROS的差分模糊测试方法,组件包括基础模块、策略处理模块、CLI接口、ROS功能包和差异计算评估模块,所述基础模块由参数输入处理组件和种子生成组件组成,所述策略处理模块整体为策略字典模块,所述种子生成组件内部插入序列标签,通过以下步骤得到该面向ROS的差分模糊测试方法:
步骤一:根据命令行输入指定参数,进行初步种子处理;
步骤二:将种子处理结果的相应策略,返回给基础模块进行测试用例生成;
步骤三:提供相同环境,执行测试用例,通过差异计算评估模块得到差异信息并对信息进行评估;
步骤四:差异信息根据设定好的评估指标,进行计算并比较执行后的输出结果;
步骤五:为了提高种子质量,结合数据的可靠性与实用性,基于此制定了数据优化和差值合理两个指标;
优选的,所述步骤一中由输入到种子的处理分为以下两个部分:基础模块的输入是由CLI接口传递来的界面参数;对输入进行初步处理后形成字典文件传递给策略处理模块。
优选的,所述步骤二中将种子处理结果的相应策略返回给基础模块进行测试用例生成,策略处理模块使用多个简单策略如数组、时间戳、字符串等以及组合复杂策略来指导种子生成过程,并将相应策略返回给基础模块进行种子生成。
优选的,所述基础模块对输入进行初步处理形成字典文件,具体为基础模块的输入是由CLI接口传递来的界面参数,输出是测试用例,生成的测试用例已经经种子生成环节进行了序列标识;每一组种子都获取了唯一的序列标号,以便于后续步骤的回溯和分析。
优选的,所述步骤三提供相同环境,执行测试用例,得到差异信息,具体为首先该模块为ROS节点的运行建立通信机制并提供统一环境;从测试用例生成模块接收测试用例后,ROS节点将依照建立的通信机制完成通信,运行结束得到相应的差异信息。
优选的,所述步骤四差异信息根据设定好的评估指标进行计算并比较执行后的输出结果,具体为将差异信息根据设定好的评估指标进行计算并比较执行后的输出结果,符合评估结果的种子将被保留。
优选的,所述差异计算评估模块所得出结果的种子将被保留,之后将该部分高质量的种子通过序列标识回溯到种子文件继续根据对应策略生成测试用例完成测试过程;当最终执行输出出现不一致时,差异计算评估模块将记录异常,将手动进行异常原因的分析最后得出报告。
优选的,所述步骤为了提高种子质量,结合数据的可靠性与实用性,基于此制定了数据优化和差值合理两个指标,数据优化指标的制定即为测试模块去除不符合实际应用的数据,如nan、inf、-inf等过大或过小的数据,保留对有意义的实验数据,以此达到数据优化的目的。差值合理考虑到不同程序对数据精度的处理可能存在差异,对于经过差分模糊测试得出的数据差值进行对比,设计条件判断语句,如差异过小则忽略不计,即两者差值在10-5以内的数据,将被认为不是异常数据;若达到一定差异值则该部分用例符合该评估指标。
本发明的有益效果是:该面向ROS的差分模糊测试方法,通过搭建差分模糊测试的框架,对ROS节点间通信进行模糊测试,设计了测试用例生成及差分模糊测试执行模块两个部分,通过用例的生成和差分模糊测试的执行得出差异信息并进行异常记录,且通过设计了两个评估指标来提高种子质量,同时对于ros里面不同版本实现相同功能的其他功能包,可以使用该差分模糊测试方法来验证哪一个版本更加准确,以此提高了该算法的最终准确性。
附图说明:
图1:面向ROS的差分模糊测试方法设计图;
图2:输入数据处理算法设计图;
图3:种子生成算法设计图;
图4:被测模型图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1-4,本发明提供一种技术方案:一种面向ROS的差分模糊测试方法,组件包括基础模块、策略处理模块、CLI接口、ROS功能包和差异计算评估模块,所述基础模块由参数输入处理组件和种子生成组件组成,所述策略处理模块整体为策略字典模块,所述种子生成组件内部插入序列标签,通过以下步骤得到该面向ROS的差分模糊测试方法:
步骤一:根据命令行输入指定参数,进行初步种子处理;
步骤二:将种子处理结果的相应策略,返回给基础模块进行测试用例生成;
步骤三:提供相同环境,执行测试用例,通过差异计算评估模块得到差异信息并对信息进行评估;
步骤四:差异信息根据设定好的评估指标,进行计算并比较执行后的输出结果;
其中,为了提高种子质量,结合数据的可靠性与实用性,基于此制定了数据优化和差值合理两个指标;其中两个指标的标准分别如下:
数据优化:测试用例生成模块可以根据测试需求,即ROS中的所有消息类型依照策略生成尽可能多的数据对应文件作为测试用例;该部分文件的生成多数不考虑数据在实际开发应用过程中的合理性;数据优化指标的制定即为测试模块祛除不符合实际应用的数据,如nan、inf、-inf等过大或过小的数据,保留有意义的实验数据以此达到数据优化的目的。实现过程中,在差异信息比较时插入条件判断,符合该条件的用例才有可能成为能被保留下的高质量用例。
差值合理:不同程序对数据精度的处理可能存在差异,为了避免这种差异对结果的影响,通过设定差值合理指标;对于经过差分模糊测试得出的数据差值进行对比,设计条件判断语句,如差异过小则忽略不计,即两者差值在10-5以内的数据,认为不是异常数据;若达到一定差异值则该部分用例符合该评估指标;
进一步的,所述步骤一中由输入到种子的处理分为以下两个部分:基础模块的输入是由CLI接口传递来的界面参数;对输入进行初步处理后形成字典文件传递给策略处理模块。
进一步的,所述步骤二中将种子处理结果的相应策略返回给基础模块进行测试用例生成,策略处理模块使用多个简单策略如数组、时间戳、字符串等以及组合复杂策略来指导种子生成过程,并将相应策略返回给基础模块进行种子生成。
进一步的,所述基础模块对输入进行初步处理形成字典文件,具体为基础模块的输入是由CLI接口传递来的界面参数,输出是测试用例,生成的测试用例已经经种子生成环节进行了序列标识;每一组种子都获取了唯一的序列标号,以便于后续步骤的回溯和分析。
进一步的,所述步骤三提供相同环境,执行测试用例,得到差异信息,具体为首先该模块为ROS节点的运行建立通信机制并提供统一环境;从测试用例生成模块接收测试用例后,ROS节点将依照建立的通信机制完成通信,运行结束得到相应的差异信息。
进一步的,所述步骤四差异信息根据设定好的评估指标进行计算并比较执行后的输出结果,具体为将差异信息根据设定好的评估指标进行计算并比较执行后的输出结果,符合评估结果的种子将被保留。
进一步的,所述差异计算评估模块所得出结果的种子将被保留,之后将该部分高质量的种子通过序列标识回溯到种子文件继续根据对应策略生成测试用例完成测试过程;当最终执行输出出现不一致时,差异计算评估模块将记录异常,将手动进行异常原因的分析最后得出报告。
优选的,所述步骤为了提高种子质量,结合数据的可靠性与实用性,基于此制定了数据优化和差值合理两个指标,数据优化指标的制定即为测试模块去除不符合实际应用的数据,如nan、inf、-inf等过大或过小的数据,保留对有意义的实验数据,以此达到数据优化的目的。差值合理考虑到不同程序对数据精度的处理可能存在差异,对于经过差分模糊测试得出的数据差值进行对比,设计条件判断语句,如差异过小则忽略不计,即两者差值在10-5以内的数据,将被认为不是异常数据;若达到一定差异值则该部分用例符合该评估指标。
基于ROS1的系统架构,提出了一种面向ROS的差分模糊测试方法,主要对应用层中各节点进行测试;本节将介绍该方法具体的工作流程。被测模块主要是对于机器人开发环节有重要意义的各版本功能包;差分模糊测试的概念较为简单,主要是将差分测试的框架与模糊测试的流程结合在一起,即连续提供无效、意外或随机数据作为具有多个相同功能的多个程序的输入,监视这些程序来捕捉执行结果间尽可能多的“不一致行为”,这样可能会在程序中发现错误;该方法的概述在图1中给出。它主要由两个部分组成,即测试用例的生成模块和差分模糊测试执行模块。参数由CLI接口输入进入用例生成模块,该模块主要负责对输入数据的处理和种子生成,模糊器根据不同的输入提供相应的策略指导,生成所需的测试用例文件;测试用例生成后进入执行模块进行测试;执行模块的设计与ROS架构中的中间层相结合,首先为节点间建立话题通信机制,使话题在节点间相互传递;其次,该模块还负责差异信息的比较以及差分测试的执行,对于测试执行后产生的信息,对其进行评估筛选,保留下的种子再次按策略生成测试文件,进而提高种子质量;
基础模块是整个模糊过程的初始模块,负责完成对输入的处理及最终用例的生成,主要由输入处理和种子变生成两部分组成;
输入处理分为文件加载及字典转化两个步骤;CLI接口作为输入接口主要负责接收由界面传来的参数,并将参数传递给基础模块,实际上该部分参数被传递给了输入处理过程;通过设计了如图2所示数据处理算法,该过程首先通过加载消息类型导入ROS的消息文件,即ROS中常见的.msg文件,该类型文件是描述ROS消息字段的文件,其本质上是简单的文本格式的文件,文件中声明了ROS消息的各个域,可以用来生成基于不同编程语言的承载消息的源代码。接下来创建字典存储函数,将上一步加载进来的参数保存为类型字典;即可以存储消息类型的基本属性,如类型是否复杂、是否有父模块、是否是数组类型,如果是,数组大小、数据阈值范围等信息;
种子生成主要是目标文件按策略处理模块返回的策略进行生成,最终产生测试用例的过程。如图3中算法2所示,种子生成过程首先创建策略映射函数,将上一模块返回的ROS消息字段映射到策略处理模块,与其一一对应,并按定义好的具体策略指导生成,生成过程结束将产生下一测试阶段所需要的测试用例。模糊实现过程中通过@given()装饰测试用例,调用 map_ros_types()函数生成随机的测试用例,在@setting()装饰器中通过max_examples用来控制随机数的个数;除此之外,完整的测试用例生成之前,应该为文件中的每组数据使用全局变量的方式添加唯一的序列标识,以方便后续过程的种子分析及回溯;
策略处理模块基于Python中hypothesis策略库的st模块定义了多个简单策略,如数组、时间戳、字符串等以及组合复杂策略来指导种子生成过程,如定义_Time策略可以指导time类型的种子生成,st.text策略可以指导字符串类型的种子生成等;
策略处理模块是来自基础模块提供的字典,字典中包含需要变异的消息类型的名称、类型等字段,策略模块将已定义好的策略函数与消息类型进行一一对应,最终将具体策略返回给基础模块由种子生成过程。对应表格如表1 所示。其中复杂消息类型较为特殊,在该模块中将其策略定义为组合策略,即当遇到复杂的消息类型时,将其对应消息加载函数ros_type_to_dict(),将其加载为字典;再根据字典内的类型属性分别进行简单的策略对应,最终组合在一起并返回一个与复杂消息类型相对应的组合策略;
表1策略对应表
Figure RE-GDA0003087469100000081
差分模糊测试执行模块主要是基于模糊循环以及差分框架的具体执行,分为差分模糊测试与结果比较分析两个部分;首先,差分模糊测试执行模块为ROS节点建立话题通信机制;接着,以上模块生成的测试用例作为被测部分的输入执行差分测试并得出差异信息;然后对所得信息按设定好的评估指标进行评估,符合评估指标的种子将被保留进行模糊循环;最后手动分析异常原因得出结论报告,该模块的实现主要在于通信机制的建立及评估指标的制定,在本方法中为节点建立话题通信机制,设计了两个评估指标;
数据优化指标的制定即为测试模块祛除不符合实际应用的数据,如nan、 inf、-inf等过大、过小或无法表示的数据,保留对实际应用有意义的实验数据,以此达到数据优化的目的。i是预先定义的全局变量,用来为每组用例做序列标识;当一轮测试用例生成后,全局变量i将按顺序对每组用例进行”打标”;对于生成的测试数据中过大过小或不可描述的数据,使用python中math模块的函数math.isnan及math.isinf来进行判断;若为该种类型的数据,将执行i-1 过程,即删除该组序列标识,此时的“标记”将直接赋予下一组符合条件的种子。
不同程序对数据精度的处理可能存在差异,为了避免这种差异对实验结果的影响,设定差值合理指标;对于经过差分模糊测试得出的数据差值进行对比,如差异过小则忽略不计,即根据浮点型数据特征,对于两者差值在10-5以内的数据,认为不是异常数据,差值在阈值范围内的种子并不能真正触发出不一致结果,因此对于这部分数据不必进行手动原因分析,种子也无需保留;
该方法应用到的ROS核心算法库(TF TF2),它们是具有相同的功能,但是版本不同,具体如下:
ROS是一个分布式框架,为用户提供多进程之间的通信服务,ROS的运行依赖于节点的运行与节点间的通信;ROS的分布式通信机制主要包括话题通信机制、服务通信机制以及参数管理机制,本方法中为其建立话题通信机制,主要包括话题发布者、话题订阅者及节点管理器三个角色;节点管理器充当中介角色,管理了所有发布者和订阅者,它们通信前都要把自己的地址、发布或订阅的话题注册到节点管理器当中;发布者节点负责发布话题,订阅者负责订阅话题,二者通信前把自己的地址、发布或订阅的话题注册到节点管理器当中,当发布的话题和订阅的话题能够匹配到时,双方即可进行通信连接;
使用TF功能主要包括广播和监听两个环节:广播过程可以向系统中广播参考系之间的坐标变换关系监听过程则接收并缓存系统中发布的所有参考系变换,并从中查询所需要的参考系变换,因此所建立被测模型如图4所示;
在该模型中首先创建实现TF、TF2广播功能的广播节点1tf_broadcast和广播节点2tf2_broadcast,在两个广播节点中定义相同的变换规则,如设置相同的平移距离和相等的欧拉角旋转角度并完成广播;同时创建一个监听节点 tf_listener可以实现TF与TF2的监听功能,节点同时接收来自两个广播节点广播的消息话题并完成相应的坐标转换;因此,确定被测模块的输入数据为空间坐标系下任意坐标值,具体实验流程如下:
确定测试目标,生成测试用例
基于上述分析及模型的建立,对TF和TF2使用面向ROS的差分模糊测试方法;第一步执行测试用例生成模块,确定生成PointStamped类型消息数据作为测试用例;CLI接口接收参数并传递给基础模块的输入处理,该模块对于输入进行文件加载及按复杂的消息类型的格式完成字典存储;接下来策略处理模块根据类型字典在策略字典中为其匹配对应策略并反馈回上一模块;最后按对应策略完成种子生成,产生json文件格式的测试用例将被传递给下一模块;
建立通信机制,实现差分测试
下一步为执行模块,首先为被测模块建立话题通信机制,使各个节点可以实现通信;被测模块不断接收测试用例作为输入,监听环节获取广播的变换规则进行坐标转化,不断得出两组转化后的坐标结果。将每组数据进行差异信息结算并进入评估环节,对于不符合评估结果的数据不予保留,对于符合评估指标的数据进行保留并根据种子序列标识回溯到种子文件并将其保存到上一模块的字典中,进而根据保留的高质量种子阈值更新字典内的阈值,继续种子生成环节以生成更多高质量种子,最后结合记录的差异信息,手动分析输出不一致的原因。
最后应当说明的是,以上内容仅用以说明本发明的技术方案,而非对本发明保护范围的限制,本领域的普通技术人员对本发明的技术方案进行的简单修该或者等同替换,均不脱离本发明技术方案的实质和范围。

Claims (10)

1.一种面向ROS的差分模糊测试方法,其特征在于,所需组件包括基础模块、策略处理模块、CLI接口、ROS功能包和差异计算评估模块,所述基础模块包括参数输入处理组件和种子生成组件,所述差分模糊测试方法包括以下步骤:
S1,根据命令行输入指定参数,进行初步种子处理;
S2,将种子处理结果的相应策略,返回给基础模块进行测试用例生成;
S3,提供相同环境,通过不同版本的同一ROS功能包对所生成的测试用例进行测试,对测试输出结果通过差异计算评估模块计算得到差异信息;
S4,根据设定的评估指标对所述差异信息进行计算并比较执行后的输出结果;其中,所述评估指标包括数据优化指标和差值合理指标。
2.根据权利要求1所述的一种面向ROS的差分模糊测试方法,其特征在于:所述步骤S1中由输入到种子的处理分为以下两个部分:基础模块的输入是由CLI接口传递来的界面参数;对输入进行初步处理后形成字典文件传递给策略处理模块。
3.根据权利要求1所述的一种面向ROS的差分模糊测试方法,其特征在于:所述步骤S2中将种子处理结果的相应策略返回给基础模块进行测试用例生成,策略处理模块使用预先设置的策略来指导种子生成过程,并将相应策略返回给基础模块进行种子生成,其中,所述预先设置的策略包括基于数组、时间戳、字符串中的至少一种生成的策略。
4.根据权利要求1所述的一种面向ROS的差分模糊测试方法,其特征在于:所述基础模块对输入进行初步处理形成字典文件,具体为基础模块的输入是由CLI接口传递来的界面参数,输出是测试用例,生成的测试用例已经经种子生成环节进行了序列标识,其中,在种子生成环节对每一组种子进行序列标识,每一组种子对应唯一的序列标号。
5.根据权利要求1所述的一种面向ROS的差分模糊测试方法,其特征在于:所述步骤S3中提供相同环境,执行测试用例,得到差异信息,具体为:首先该模块为ROS节点的运行建立通信机制并提供统一环境;从测试用例生成模块接收测试用例后,ROS节点将依照建立的通信机制完成通信,运行结束得到相应的差异信息。
6.根据权利要求1所述的一种面向ROS的差分模糊测试方法,其特征在于:所述步骤S4中差异信息根据设定的评估指标进行计算并比较执行后的输出结果,具体为:将差异信息根据设定的评估指标进行计算并比较执行后的输出结果,符合评估结果的种子将被保留。
7.根据权利要求1所述的一种面向ROS的差分模糊测试方法,其特征在于:所述差异计算评估模块所得出的符合评估结果的种子将被保留,之后将该部分高质量的种子通过序列标识回溯到种子文件继续根据对应策略生成测试用例,完成测试过程;其中,当最终执行输出出现不一致时,差异计算评估模块将记录异常信息,并将异常信息提供给用户手动进行异常原因的分析。
8.根据权利要求1所述的一种面向ROS的差分模糊测试方法,其特征在于:所述数据优化指标用于剔除设定类型数据中过大或过小的数据。
9.根据权利要求1所述的一种面向ROS的差分模糊测试方法,其特征在于:所述差值合理指标用于对经过差分模糊测试得出的数据差值进行对比,将数据差值超过设定阈值范围的数据作为异常信息。
10.根据权利要求9所述的一种面向ROS的差分模糊测试方法,其特征在于:所述差值合理指标通过设计条件判断语句来实现。
CN202110048271.4A 2021-01-14 2021-01-14 一种面向ros的差分模糊测试方法 Active CN113157551B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110048271.4A CN113157551B (zh) 2021-01-14 2021-01-14 一种面向ros的差分模糊测试方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110048271.4A CN113157551B (zh) 2021-01-14 2021-01-14 一种面向ros的差分模糊测试方法

Publications (2)

Publication Number Publication Date
CN113157551A true CN113157551A (zh) 2021-07-23
CN113157551B CN113157551B (zh) 2022-09-09

Family

ID=76878535

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110048271.4A Active CN113157551B (zh) 2021-01-14 2021-01-14 一种面向ros的差分模糊测试方法

Country Status (1)

Country Link
CN (1) CN113157551B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115242461A (zh) * 2022-06-30 2022-10-25 中国人民解放军63891部队 一种机器人操作系统ros安全测试系统及方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103699475A (zh) * 2012-09-27 2014-04-02 西门子公司 对模糊测试中的测试用例进行优化的方法,装置和系统
CN110399300A (zh) * 2019-07-22 2019-11-01 南京大学 一种基于动态类型感知的Python软件模糊测试方法
CN111124926A (zh) * 2019-12-25 2020-05-08 支付宝(杭州)信息技术有限公司 模糊测试方法、装置、电子设备及存储介质
US20200210326A1 (en) * 2019-01-02 2020-07-02 International Business Machines Corporation Resources usage for fuzz testing applications
CN111881039A (zh) * 2020-07-24 2020-11-03 广州大学 模糊测试的种子处理、模糊测试方法、系统和存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103699475A (zh) * 2012-09-27 2014-04-02 西门子公司 对模糊测试中的测试用例进行优化的方法,装置和系统
US20200210326A1 (en) * 2019-01-02 2020-07-02 International Business Machines Corporation Resources usage for fuzz testing applications
CN110399300A (zh) * 2019-07-22 2019-11-01 南京大学 一种基于动态类型感知的Python软件模糊测试方法
CN111124926A (zh) * 2019-12-25 2020-05-08 支付宝(杭州)信息技术有限公司 模糊测试方法、装置、电子设备及存储介质
CN111881039A (zh) * 2020-07-24 2020-11-03 广州大学 模糊测试的种子处理、模糊测试方法、系统和存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
王颖 等: "面向ROS的差分模糊测试方法", 《软件学报》 *
邹燕燕 等: "变异策略感知的并行模糊测试研究", 《信息安全学报》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115242461A (zh) * 2022-06-30 2022-10-25 中国人民解放军63891部队 一种机器人操作系统ros安全测试系统及方法
CN115242461B (zh) * 2022-06-30 2023-08-25 中国人民解放军63891部队 一种机器人操作系统ros安全测试系统及方法

Also Published As

Publication number Publication date
CN113157551B (zh) 2022-09-09

Similar Documents

Publication Publication Date Title
CN109522228B (zh) 接口自动化测试数据构造方法、装置、平台及存储介质
CN103678110A (zh) 提供修改相关信息的方法和装置
CN111382070A (zh) 兼容性测试方法、装置、存储介质和计算机设备
CN111522728A (zh) 自动化测试用例的生成方法、电子设备及可读存储介质
CN112433944A (zh) 业务测试方法、装置、计算机设备和存储介质
CN113157551B (zh) 一种面向ros的差分模糊测试方法
CN112380120B (zh) 单元测试代码结构自动解析与路径分析方法
CN113220588A (zh) 一种数据处理的自动化测试方法、装置、设备及存储介质
CN116090380B (zh) 数字集成电路验证的自动化方法及装置、存储介质和终端
CN115794639A (zh) 基于流程的可视化测试及可视化仿真模拟测试系统和方法
CN109508204B (zh) 一种前端代码质量检测方法及装置
CN111427582A (zh) Rtl代码的管理方法、装置、设备及计算机可读存储介质
CN114115843A (zh) 一种指标数据的低代码生产方法及其可视化数据处理系统
JP7190246B2 (ja) ソフトウェア不具合予測装置
CN113505283A (zh) 一种测试数据的筛选方法及系统
CN113568662B (zh) 一种基于调用关系的代码变更影响范围分析方法及系统
CN117234765B (zh) 一种国产操作系统内核性能下降补丁自动二分定位方法
CN113570333B (zh) 一种适用于集成的流程设计方法
Bicevskis et al. Data quality model-based testing of information systems
CN114448851B (zh) 一种数据自动化测试方法及系统
CN114531335B (zh) 一种管理信息库数据检测的方法、设备及装置
CN114462339B (zh) 用于回归测试的参数调优、文件建立方法及其装置
CN113254328B (zh) 白盒测试方法、系统、移动终端及存储介质
CN109800155B (zh) 一种基于Probe的QTE联锁应用软件测试方法及装置
CN117520136A (zh) 应用程序的功能测试方法、装置、设备及可读存储介质

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
GR01 Patent grant
GR01 Patent grant