CN117827621A - 一种嵌入式软件自动化测试平台系统及方法 - Google Patents

一种嵌入式软件自动化测试平台系统及方法 Download PDF

Info

Publication number
CN117827621A
CN117827621A CN202410250924.0A CN202410250924A CN117827621A CN 117827621 A CN117827621 A CN 117827621A CN 202410250924 A CN202410250924 A CN 202410250924A CN 117827621 A CN117827621 A CN 117827621A
Authority
CN
China
Prior art keywords
time
value
data
evaluation
embedded software
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
CN202410250924.0A
Other languages
English (en)
Other versions
CN117827621B (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.)
Taian Beihang Science Park Information Technology Co ltd
Original Assignee
Taian Beihang Science Park Information 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 Taian Beihang Science Park Information Technology Co ltd filed Critical Taian Beihang Science Park Information Technology Co ltd
Priority to CN202410250924.0A priority Critical patent/CN117827621B/zh
Publication of CN117827621A publication Critical patent/CN117827621A/zh
Application granted granted Critical
Publication of CN117827621B publication Critical patent/CN117827621B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及软件测试技术领域,本发明公开了一种嵌入式软件自动化测试平台系统及方法;包括基于机器学习模型预测出实时的响应时间值和实时的处理数据量,判定是否生成时间差值和数据量差值,基于时间差值和数据量差值,生成质量评估指数,判定是否构建检验评测环,构建检验评测环对嵌入式软件进行评测,生成测试评估等级,并生成测试评估提示;相对于现有技术,可以在时间差值和数据量差值的基础上,构建检验评测环,对嵌入式软件的综合数据进行二次全面的评测,从而对嵌入式软件的实际运行出现的异常现象进行精准的识别与评估,避免了一次测试可能导致的错误误报现象,提高了嵌入式软件的测试精准度。

Description

一种嵌入式软件自动化测试平台系统及方法
技术领域
本发明涉及软件测试技术领域,更具体地说,本发明涉及一种嵌入式软件自动化测试平台系统及方法。
背景技术
嵌入式软件是嵌入在硬件中的操作系统和开发工具软件,是计算机软件的一种,也是嵌入式系统的重要组成部分,随着硬件元器件快速的发展,也使得嵌入式软件的功能更加强大和复杂,为了获取嵌入式软件更加真实的运行状态情况,需要对嵌入式软件进行自动化测试。
申请公开号为CN105988924A的中国专利公开了一种非侵入式嵌入式软件图形用户界面自动化测试方法,其通过视频采集来收集嵌入式软件的视频输出,通过图像比对来判断视频输出的变化,采用图像特征识别技术来识别相关的图像信息,利用输出图像进行信息识别,不会干扰系统的运行,从而实现非侵入式的对测试执行结果判断;
现有技术存在以下不足:
现有的自动化测试系统在对嵌入式软件进行测试时,通过对嵌入式软件的自身运行数据进行分析测试,可以提供单一层面的嵌入式软件运行效率的测试结果,但是对于测试结果缺少二次验证和评估的措施,从而使得测试结果容易出现错误误报的现象,加剧了嵌入式软件的测试不确定性,降低了嵌入式软件的测试精确度。
鉴于此,本发明提出一种嵌入式软件自动化测试平台系统及方法以解决上述问题。
发明内容
为了克服现有技术的上述缺陷,为实现上述目的,本发明提供如下技术方案:一种嵌入式软件自动化测试平台系统,包括:
第一数据采集模块,采集嵌入式软件的历史时间数据,历史时间数据包括综合时间参数和响应时间值;
第一模型预测模块,基于历史时间数据,训练预测出响应时间值的第一机器学习模型,并预测出实时的响应时间值;
第二数据采集模块,采集嵌入式软件的历史数量数据,历史数量数据包括综合数量参数和处理数据量;
第二模型预测模块,基于历史数量数据,训练预测出处理数据量的第二机器学习模型,并预测出实时的处理数据量;
差值生成模块,基于实时的响应时间值,判定是否生成时间差值,基于实时的处理数据量,判定是否生成数据量差值;
评测判定模块,基于时间差值和数据量差值,生成质量评估指数,基于质量评估指数,判定是否构建检验评测环;
核验校对模块,构建检验评测环对嵌入式软件进行评测,基于评测结果,生成测试评估等级,基于测试评估等级,生成测试评估提示。
进一步的,综合时间参数包括处理周期值和网络延迟值;
处理周期值的获取方法包括:
通过时间戳获取数据从输入端传输到CPU的传输时间,以及数据从CPU传输到输出端的传输时间,分别记为输入时间值和输出时间值;
通过时间戳获取个数据进入CPU的时刻值和/>个数据导出CPU的时刻值;
个数据导出CPU的时刻值分别与/>个数据进入CPU的时刻值差值比较,获得/>个子时间值;
子时间值的表达式为:
式中,为第/>个子时间值,/>为第/>个数据导出CPU的时刻值,/>为第/>个数据进入CPU的时刻值;
个子时间值中以间隔两个子时间值为标准,筛选出/>个目标子时间值,/>小于/>,并将/>个目标子时间值累加后求平均,获得/>个处理时间值;
处理时间值的表达式为:
式中,为处理时间值,/>为第/>个目标子时间值;
将处理时间值、输入时间值和输出时间值相加后,获得处理周期值;
处理周期值的表达式为:
式中,为处理周期值,/>为输入时间值,/>为输出时间值。
进一步的,网络延迟值的获取方法包括:
在嵌入式软件的系统上打开一个命令提示符,并在命令提示符中输入ping命令,ping命令的后面备注上目标主机的IP地址或域名;
设置ping命令中的ICMP Echo请求;
发送个ICMP Echo请求,并接收/>个ICMP Echo请求的往返时间;
观察ping命令的输出结果,获得个ICMP Echo请求的延迟时间值;
去掉ICMP Echo请求的延迟时间值的最大值和最小值,将余下的个ICMP Echo请求的延迟时间值累加后求平均,获得网络延迟值;
网络延迟值的表达式为:
式中,为网络延迟值,/>为第/>个ICMP Echo请求的延迟时间值。
进一步的,预测出响应时间值的第一机器学习模型的训练方法包括:
将采集到的历史时间数据转换为对应的一组第一特征向量;
将每组第一特征向量作为所述第一机器学习模型的输入,所述第一机器学习模型以每组综合时间参数对应的响应时间值作为输出,以每组综合时间参数实际对应的响应时间值作为预测目标,以最小化所述综合时间参数的预测误差之和作为训练目标,对第一机器学习模型进行训练,直至预测误差之和达到收敛时停止训练。
进一步的,综合数量参数包括数据处理速率和数据复杂度;
数据处理速率的获取方法包括:
向嵌入式软件输入相同预设数量的个目标数据;
经过预设时间后,从嵌入式软件筛选出第一待处理数据,并统计第一待处理数据中个目标数据的剩余数量,获得/>个一次剩余值;
个目标数据的预设数量与/>个一次剩余值一一对比,获得/>个目标数据的一次处理量;
目标数据的一次处理量的表达式为:
式中,为第/>个目标数据的一次处理量,/>为第/>个目标数据的预设数量,/>为第/>个一次剩余值;
向嵌入式软件输入与个目标数据的一次处理量等值的/>个目标数据,直至/>个目标数据的数量均达到预设数量;
经过预设时间后,从嵌入式软件筛选出第二待处理数据,并统计第二待处理数据中个目标数据的剩余数量,获得/>个二次剩余值;
个目标数据的预设数量与/>个二次剩余值一一对比,获得/>个目标数据的二次处理量;
目标数据的二次处理量的表达式为:
式中,为第/>个目标数据的二次处理量,/>为第/>个二次剩余值;
将数值大小相同的目标数据的一次处理量与目标数据的二次处理量记为有效处理量,获得个有效处理量,/>小于/>
个有效处理量分别与预设时间对比,获得/>个子速率;
子速率的表达式为:
式中,为第/>个子速率,/>为第/>个有效处理量,/>为预设时间;
个子速率累加后求平均,获得数据处理速率;
数据处理速率的表达式为:
式中,为数据处理速率,/>为第/>个子速率。
进一步的,预测出处理数据量的第二机器学习模型的训练方法包括:
将采集到的历史数量数据转换为对应的一组第二特征向量;
将每组第二特征向量作为所述第二机器学习模型的输入,所述第二机器学习模型以每组综合数量参数对应的处理数据量作为输出,以每组综合数量参数实际对应的处理数据量作为预测目标,以最小化所述综合数量参数的预测误差之和作为训练目标,对第二机器学习模型进行训练,直至预测误差之和达到收敛时停止训练。
进一步的,是否生成时间差值的判定方法包括:
将实时的响应时间值与预测的响应时间值差值比较;
当实时的响应时间值小于等于预测的响应时间值时,判定不生成时间差值;
当实时的响应时间值大于预测的响应时间值时,判定生成时间差值;
时间差值的表达式为:
式中,为时间差值,/>为实时的响应时间值,/>为预测的响应时间值;
是否生成数据量差值的判定方法包括:
将实时的处理数据值与预测的处理数据值差值比较;
当实时的处理数据值大于等于预测的处理数据值时,判定不生成时间差值;
当实时的处理数据值小于预测的处理数据值时,判定生成数据量差值;
数据量差值的表达式为:
式中,为数据量差值,/>为预测的处理数据值,/>为实时的处理数据值。
进一步的,质量评估指数的表达式为:
式中,为质量评估指数,/>为自然常数;
是否构建检验评测环的判定方法包括:
将质量评估指数与预设的质量评估阈值/>差值比较,/>大于0;
大于等于/>时,判定构建检验评测环;
小于/>时,判定不构建检验评测环;
检验评测环的构建方法包括:
建立一个具有四层包裹结构的空白环,空白环由内向外依次标记为内环、中一环、中二环和外环;
通过嵌入式软件的系统参数配置分别获取处理周期值的标准值、网络延迟值的标准值、数据处理速率的标准值和数据复杂度的标准值;
将处理周期值的标准值、网络延迟值的标准值、数据处理速率的标准值和数据复杂度的标准值分别导入内环、中一环、中二环和外环内进行填充;
在被填充的内环、中一环、中二环和外环内分别标记上对应的标准评测值,构建成检验评测环。
进一步的,测试评估等级包括一级评估等级、二级评估等级和三级评估等级;
一级评估等级、二级评估等级和三级评估等级的生成方法包括:
将实时的处理周期值、网络延迟值、数据处理速率和数据复杂度分别与内环的标准评测值、中一环的标准评测值、中二环的标准评测值和外环的标准评测值比较;
统计出现实时的处理周期值大于内环的标准评测值、实时的网络延迟值大于中一环的标准评测值、实时的数据处理速率小于中二环的标准评测值和实时的数据复杂度大于外环的标准评测值的现象的个数,个数记为
为1时,生成一级评估等级;
为2时,生成二级评估等级;
为3或4时,生成三级评估等级;
测试评估提示包括常规预警提示、轻微预警提示和紧急预警提示;
常规预警提示、轻微预警提示和紧急预警提示的生成方法包括:
当测试评估等级为一级评估等级时,生成常规预警提示;
当测试评估等级为二级评估等级时,生成轻微预警提示;
测试评估等级为三级评估等级时,生成紧急预警提示。
一种嵌入式软件自动化测试平台方法,基于所述的一种嵌入式软件自动化测试平台系统实现,包括:
S1:采集嵌入式软件的历史时间数据,历史时间数据包括综合时间参数和响应时间值;
S2:基于历史时间数据,训练预测出响应时间值的第一机器学习模型,并预测出实时的响应时间值;
S3:采集嵌入式软件的历史数量数据,历史数量数据包括综合数量参数和处理数据量;
S4:基于历史数量数据,训练预测出处理数据量的第二机器学习模型,并预测出实时的处理数据量;
S5:基于实时的响应时间值,判定是否生成时间差值;基于实时的处理数据量,判定是否生成数据量差值;
S6:基于时间差值和数据量差值,生成质量评估指数,基于质量评估指数,判定是否构建检验评测环;
S7:构建检验评测环对嵌入式软件进行评测,基于评测结果,生成测试评估等级,基于测试评估等级,生成测试评估提示。
本发明一种嵌入式软件自动化测试平台系统及方法的技术效果和优点:
本发明通过采集嵌入式软件的历史时间数据,历史时间数据包括综合时间参数和响应时间值,训练预测出响应时间值的第一机器学习模型,并基于训练完成的第一机器学习模型预测出实时的响应时间值,采集嵌入式软件的历史数量数据,历史数量数据包括综合数量参数和处理数据量,训练预测出处理数据量的第二机器学习模型,并基于训练完成的第二机器学习模型预测出实时的处理数据量,将预测的响应时间值和处理数据量分别与实时的响应时间值和处理数据量比较,判定是否生成时间差值和数据量差值,基于时间差值和数据量差值,生成质量评估指数,判定是否构建检验评测环,构建检验评测环对嵌入式软件进行评测,基于评测结果,生成测试评估等级,并生成测试评估提示;相对于现有技术,可以结合两个机器学习模型获取时间差值和数据量差值,对嵌入式软件进行一次测试,并在时间差值和数据量差值的基础上,构建检验评测环,对嵌入式软件的综合数据进行二次全面的评测,从而对嵌入式软件的实际运行出现的异常现象进行精准的识别与评估,避免了一次测试可能导致的错误误报现象,提高了嵌入式软件的测试精准度。
附图说明
图1为本发明实施例1提供的一种嵌入式软件自动化测试平台系统的示意图;
图2为本发明实施例2提供的一种嵌入式软件自动化测试平台方法的流程示意图;
图3为本发明实施例1提供的检验评测环的示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1:请参阅图1所示,本实施例所述一种嵌入式软件自动化测试平台系统,包括:
第一数据采集模块,在实验环境下,采集嵌入式软件的历史时间数据,历史时间数据包括综合时间参数和响应时间值;
实验环境是指嵌入式系统内的嵌入式软件的响应时间值不存在变长或变短的无异常环境;
综合时间参数是在嵌入式系统中会影响嵌入式软件对数据处理响应时间的综合参数,通过采集综合时间参数,可以对嵌入式软件的数据处理时间信息进行准确的了解,从而对嵌入式软件的运行效率进行评测;
综合时间参数包括处理周期值和网络延迟值;
处理周期值是指嵌入式软件从接收、处理到输出数据的整个周期所占用的时间,当处理周期值越大时,说明嵌入式软件对数据处理的时间会越长,则嵌入式软件的运行效率越低;
处理周期值的获取方法包括:
通过时间戳获取数据从输入端传输到CPU的传输时间,以及数据从CPU传输到输出端的传输时间,分别记为输入时间值和输出时间值;
通过时间戳获取个数据进入CPU的时刻值和/>个数据导出CPU的时刻值;
个数据导出CPU的时刻值分别与/>个数据进入CPU的时刻值差值比较,获得/>个子时间值;
子时间值的表达式为:
式中,为第/>个子时间值,/>为第/>个数据导出CPU的时刻值,/>为第/>个数据进入CPU的时刻值;
个子时间值中以间隔两个子时间值为标准,筛选出/>个目标子时间值,/>小于/>,并将/>个目标子时间值累加后求平均,获得/>个处理时间值;以间隔两个子时间值为标准的方式,可以从/>个子时间值中筛选出相互独立且不存在时间上前后关联的目标子时间值,从而避免了相邻子时间值存在前后粘连现象而导致处理时间值的计算结果不准确,也降低了数据计算量;
处理时间值的表达式为:
式中,为处理时间值,/>为第/>个目标子时间值;
将处理时间值、输入时间值和输出时间值相加后,获得处理周期值;
处理周期值的表达式为:
式中,为处理周期值,/>为输入时间值,/>为输出时间值;
网络延迟值是指嵌入式系统中的嵌入式软件对数据处理时的延迟程度的数值体现,当嵌入式软件在长时间大负荷运行后,会出现疲劳或拥堵的现象,导致出现数据处理延迟现象,当网络延迟值越大,说明嵌入式软件的延迟拥堵程度越严重,则嵌入式软件的运行效率越低;
网络延迟值的获取方法包括:
在嵌入式软件的系统上打开一个命令提示符,并在命令提示符中输入ping命令,ping命令的后面备注上目标主机的IP地址或域名;
设置ping命令中的ICMP Echo请求;常用的选择包括指定发送的请求次数、指定每个请求的超时时间和指定发送请求之间的时间间隔,示例性的,-n5表示发送5个ICMP Echo请求,-w1000表示每个请求的超时时间为1秒,-i1表示发送请求之间的时间间隔为1秒;
发送个ICMP Echo请求,并接收/>个ICMP Echo请求的往返时间;
观察ping命令的输出结果,获得个ICMP Echo请求的延迟时间值;
去掉ICMP Echo请求的延迟时间值的最大值和最小值,将余下的个ICMP Echo请求的延迟时间值累加后求平均,获得网络延迟值;
网络延迟值的表达式为:
式中,为网络延迟值,/>为第/>个ICMP Echo请求的延迟时间值;
响应时间值是指嵌入式软件从接收到数据到执行数据对应的指令时所占用的时间,在嵌入式软件没有发生疲劳或满负荷运行的理想情况下,实际的响应时间值会无限接近于嵌入式软件标准的响应时间值,当响应时间值越大时,说明嵌入式软件的运行效率越低;响应时间值通过嵌入式系统内的计时器监测获取;
第一模型预测模块,基于历史时间数据,训练预测出响应时间值的第一机器学习模型,并基于训练完成的第一机器学习模型预测出实时的响应时间值;
预测出响应时间值的第一机器学习模型的训练方法包括:
将采集到的历史时间数据转换为对应的一组第一特征向量;
将每组第一特征向量作为所述第一机器学习模型的输入,所述第一机器学习模型以每组综合时间参数对应的响应时间值作为输出,以每组综合时间参数实际对应的响应时间值作为预测目标,以最小化所述综合时间参数的预测误差之和作为训练目标,对第一机器学习模型进行训练,直至预测误差之和达到收敛时停止训练;
示例性的,第一神经网络模型是CNN神经网络模型或AlexNet中的任意一个;
通过上述综合时间参数的获取方法,采集实时的综合时间参数,并基于训练完成的第一机器学习模型预测出实时的响应时间值,从而获得当前嵌入式系统中嵌入式软件的实时运行情况;
第二数据采集模块,在实验环境下,采集嵌入式软件的历史数量数据,历史数量数据包括综合数量参数和处理数据量;
实验环境是指嵌入式系统内的嵌入式软件的处理数据量不存在减少或增多的无异常环境;
综合数量参数是指嵌入式系统的嵌入式软件单位时间内能够处理数据量的多少,通过采集综合数量参数,可以对嵌入式软件对数据处理量的情况进行准确的了解,从而对嵌入式软件的运行效率进行评测;
综合数量参数包括数据处理速率和数据复杂度;
数据处理速率是指嵌入式软件在单位时间内处理数据的快慢程度,当数据处理速率越大时,说明嵌入式软件处理数据的速度越快,则嵌入式软件的运行效率越高;
数据处理速率的获取方法包括:
向嵌入式软件输入相同预设数量的个目标数据;预设数量是目标数据用于获取数据处理速率的测试数值,通过预设数量可以将目标数据的数量进行限制,从而便于后续的使用需求,预设数量的具体值根据实际情况选择,并不唯一;
经过预设时间后,从嵌入式软件筛选出第一待处理数据,并统计第一待处理数据中个目标数据的剩余数量,获得/>个一次剩余值;预设时间是指目标数据能够进行一定数量处理的时间值,通过预设时间可以保证一定量的目标数据被处理,从而为后续的数值比较提供基础,预设时间的具体值通过采集历史大量的目标数据被处理时对应的时间后,通过系数优化后得到的;
个目标数据的预设数量与/>个一次剩余值一一对比,获得/>个目标数据的一次处理量;
目标数据的一次处理量的表达式为:
式中,为第/>个目标数据的一次处理量,/>为第/>个目标数据的预设数量,/>为第/>个一次剩余值;
向嵌入式软件输入与个目标数据的一次处理量等值的/>个目标数据,直至/>个目标数据的数量均达到预设数量;
经过预设时间后,从嵌入式软件筛选出第二待处理数据,并统计第二待处理数据中个目标数据的剩余数量,获得/>个二次剩余值;
个目标数据的预设数量与/>个二次剩余值一一对比,获得/>个目标数据的二次处理量;
目标数据的二次处理量的表达式为:
式中,为第/>个目标数据的二次处理量,/>为第/>个二次剩余值;
将数值大小相同的目标数据的一次处理量与目标数据的二次处理量记为有效处理量,获得个有效处理量,/>小于/>
个有效处理量分别与预设时间对比,获得/>个子速率;
子速率的表达式为:
式中,为第/>个子速率,/>为第/>个有效处理量,/>为预设时间;
个子速率累加后求平均,获得数据处理速率;
数据处理速率的表达式为:
式中,为数据处理速率,/>为第/>个子速率;
数据复杂度是指嵌入式软件中数据格式和类型的繁杂程度,当数据格式和类型的繁杂程度越大时,说明数据格式和类型越多,数据复杂率越大,则嵌入式软件的运行效率会越低;数据复杂率通过数据库读取数据的文件格式和数据的编码格式来识别获取;
处理数据量是指嵌入式软件在单位时间内能够处理的数据的总量值,在嵌入式软件没有发生疲劳或满负荷运行的理想情况下,实际的处理数据量会无限接近于嵌入式系统标准的处理数据量,当处理数据量越大时,说明嵌入式软件的运行效率越高;处理数据量通过数据处理器监测获取;
第二模型预测模块,基于历史数量数据,训练预测出处理数据量的第二机器学习模型,并基于训练完成的第二机器学习模型预测出实时的处理数据量;
预测出处理数据量的第二机器学习模型的训练方法包括:
将采集到的历史数量数据转换为对应的一组第二特征向量;
将每组第二特征向量作为所述第二机器学习模型的输入,所述第二机器学习模型以每组综合数量参数对应的处理数据量作为输出,以每组综合数量参数实际对应的处理数据量作为预测目标,以最小化所述综合数量参数的预测误差之和作为训练目标,对第二机器学习模型进行训练,直至预测误差之和达到收敛时停止训练;
示例性的,第一神经网络模型是CNN神经网络模型或AlexNet中的任意一个;
预测误差的计算公式为:
式中,为预测误差,/>为特征向量的组号;/>为第/>组特征向量所对应的预测的状态值,/>为第/>组训练数据所对应的实际的状态值;
在第一机器学习模型中,特征向量为综合时间参数,状态值为响应时间值;在第二机器学习模型中,特征向量为综合数量参数,状态值为处理数据量;
第一机器学习模型和第二机器学习模型的其他模型参数,目标损失值、优化算法、训练集测试集验证集比例以及损失函数的优化等均通过实际的工程实现,不断地进行实验调优后获得;
通过上述综合数量参数的获取方法,采集实时的综合数量参数,并基于训练完成的第二机器学习模型预测出实时的处理数据量,从而获得当前嵌入式系统中嵌入式软件的实时运行情况;
差值生成模块,基于实时的响应时间值,判定是否生成时间差值,基于实时的处理数据量,判定是否生成数据量差值;
时间差值是实时的响应时间值与预测的响应时间值之间的差距大小,当时间差值越大时,说明实时的响应时间值与预测的响应时间值的差距越大,则嵌入式软件的运行效率越低;
是否生成时间差值的判定方法包括:
将实时的响应时间值与预测的响应时间值差值比较;
当实时的响应时间值小于等于预测的响应时间值时,说明嵌入式软件的运行效率高,则判定不生成时间差值;
当实时的响应时间值大于预测的响应时间值时,说明嵌入式软件的运行效率低,则判定生成时间差值;
时间差值的表达式为:
式中,为时间差值,/>为实时的响应时间值,/>为预测的响应时间值;
数据量差值是指实时的处理数据值与预测的处理数据值之间的差距大小,当处理数据值越大时,说明实时的处理数据值与预测的处理数据值的差距越大,则嵌入式软件的运行效率越低;
是否生成数据量差值的判定方法包括:
将实时的处理数据值与预测的处理数据值差值比较;
当实时的处理数据值大于等于预测的处理数据值时,说明嵌入式软件的运行效率高,则判定不生成时间差值;
当实时的处理数据值小于预测的处理数据值时,说明嵌入式软件的运行效率低,则判定生成数据量差值;
数据量差值的表达式为:
式中,为数据量差值,/>为预测的处理数据值,/>为实时的处理数据值;
评测判定模块,基于时间差值和数据量差值,生成质量评估指数,基于质量评估指数,判定是否构建检验评测环;
质量评估指数是用于对嵌入式软件预测结果与实际状态对应的运行效率高低的数值体现,并通过质量评估系数,可以对后续嵌入式软件的进一步分析处理提供数据支持;
质量评估指数的表达式为:
式中,为质量评估指数,/>为自然常数;
检验评测环是在时间差值和数据量差值的基础上,针对嵌入式软件的运行效率进行二次测试评估的测试结构,只有在生成时间差值和数据量差值的情况下,才需要使用检验评测环对嵌入式软件进行进一步的测试评估,从而获得嵌入式软件的准确测试结果,并确保后续的预警提示具有针对性;
是否构建检验评测环的判定方法包括:
将质量评估指数与预设的质量评估阈值/>差值比较,/>大于0;预设的质量评估阈值是用于判断指令评估指数处于是否达到构建检验评测环标准的依据,从而可以将质量评估指数进行两极化区分,进而对质量评估指数进行大小区分,预设的质量评估阈值通过采集历史大量的达到构建检验评测环标准对应的质量评估指数后,通过系数优化后得到的;
大于等于/>时,说明质量评估指数大于等于预设的质量评估阈值,则达到了构建检验评测环的标准,判定构建检验评测环;
小于/>时,说明质量评估指数小于预设的质量评估阈值,则未达到构建检验评测环的标准,判定不构建检验评测环;
核验校对模块,构建检验评测环对嵌入式软件进行评测,基于评测结果,生成测试评估等级,基于测试评估等级,生成测试评估提示;
检验评测环的构建方法包括:
建立一个具有四层包裹结构的空白环,空白环由内向外依次标记为内环、中一环、中二环和外环;
通过嵌入式软件的系统参数配置分别获取处理周期值的标准值、网络延迟值的标准值、数据处理速率的标准值和数据复杂度的标准值;标准值是指嵌入式软件的运行效率在达到无异常的最低标准的基础上,处理周期值、网络延迟值、数据处理速率和数据复杂度所对应的具体数值,当处理周期值、网络延迟值、数据处理速率和数据复杂度均达到标准值时,说明嵌入式软件的当前运行状态达到无异常的最低标准;
将处理周期值的标准值、网络延迟值的标准值、数据处理速率的标准值和数据复杂度的标准值分别导入内环、中一环、中二环和外环内进行填充;
在被填充的内环、中一环、中二环和外环内分别标记上对应的标准评测值,构建成检验评测环;内环、中一环、中二环和外环的标准评测值为处理周期值、网络延迟值、数据处理速率和数据复杂度对应的标准值,使得检验评测环的每一环都具有独立的数值,并为后续嵌入式软件的等级评估提供数值对比的基础;
请参阅图3所示,示例性的,通过上述检验评测环的构建方法构建检验评测环,图中,NC为内层,NCBPZ为内层的标准评测值,Z1C为中一层,Z1CBPZ为中一层的标准评测值,Z2C为中二层,Z2CBPZ为中二层的标准评测值,WC为外层,WCBPZ为外层的标准评测值;
测试评估等级是用于判断嵌入式软件的运行状态出现异常现象的严重程度,不同的等级代表不同的严重程度,测试评估等级包括一级评估等级、二级评估等级和三级评估等级;一级评估等级的严重程度小于二级评估等级的严重程度,二级评估等级的严重程度小于三级评估等级的严重程度;
一级评估等级、二级评估等级和三级评估等级的生成方法包括:
将实时的处理周期值、网络延迟值、数据处理速率和数据复杂度分别与内环的标准评测值、中一环的标准评测值、中二环的标准评测值和外环的标准评测值比较;
统计出现实时的处理周期值大于内环的标准评测值、实时的网络延迟值大于中一环的标准评测值、实时的数据处理速率小于中二环的标准评测值和实时的数据复杂度大于外环的标准评测值的现象的个数,个数记为
为1时,说明嵌入式软件运行状态出现异常现象的个数为1个,严重程度较低,则生成一级评估等级;
为2时,说明嵌入式软件运行状态出现异常现象的个数为2个,严重程度一般,则生成二级评估等级;
为3或4时,说明嵌入式软件运行状态出现异常现象的个数为3或4个,严重程度较高,则生成三级评估等级;
测试评估提示是用于对嵌入式软件运行状态出现异常现象的预警提示,可以在出现异常现象时,及时且准确的发出预警提示,帮助用户准确的了解嵌入式软件的运行状态,并为嵌入式软件的测试提供输出结果;
测试评估提示包括常规预警提示、轻微预警提示和紧急预警提示;
常规预警提示、轻微预警提示和紧急预警提示的生成方法包括:
当测试评估等级为一级评估等级时,说明嵌入式软件的出现异常现象不需要及时处理,则生成常规预警提示;
当测试评估等级为二级评估等级时,说明嵌入式软件的出现异常现象需要空闲时处理,则生成轻微预警提示;
测试评估等级为三级评估等级时,说明嵌入式软件的出现异常现象需要及时处理,则生成紧急预警提示;
本实施例中,通过采集嵌入式软件的历史时间数据,历史时间数据包括综合时间参数和响应时间值,训练预测出响应时间值的第一机器学习模型,并基于训练完成的第一机器学习模型预测出实时的响应时间值,采集嵌入式软件的历史数量数据,历史数量数据包括综合数量参数和处理数据量,训练预测出处理数据量的第二机器学习模型,并基于训练完成的第二机器学习模型预测出实时的处理数据量,将预测的响应时间值和处理数据量分别与实时的响应时间值和处理数据量比较,判定是否生成时间差值和数据量差值,基于时间差值和数据量差值,生成质量评估指数,判定是否构建检验评测环,构建检验评测环对嵌入式软件进行评测,基于评测结果,生成测试评估等级,并生成测试评估提示;相对于现有技术,可以结合两个机器学习模型获取时间差值和数据量差值,对嵌入式软件进行一次测试,并在时间差值和数据量差值的基础上,构建检验评测环,对嵌入式软件的综合数据进行二次全面的评测,从而对嵌入式软件的实际运行出现的异常现象进行精准的识别与评估,避免了一次测试可能导致的错误误报现象,进而提高了嵌入式软件的测试精准度。
实施例2:请参阅图2所示,本实施例未详细叙述部分见实施例1描述内容,提供一种嵌入式软件自动化测试平台方法,基于一种嵌入式软件自动化测试平台系统实现,包括:
S1:采集嵌入式软件的历史时间数据,历史时间数据包括综合时间参数和响应时间值;
S2:基于历史时间数据,训练预测出响应时间值的第一机器学习模型,并预测出实时的响应时间值;
S3:采集嵌入式软件的历史数量数据,历史数量数据包括综合数量参数和处理数据量;
S4:基于历史数量数据,训练预测出处理数据量的第二机器学习模型,并预测出实时的处理数据量;
S5:基于实时的响应时间值,判定是否生成时间差值,基于实时的处理数据量,判定是否生成数据量差值;
S6:基于时间差值和数据量差值,生成质量评估指数,基于质量评估指数,判定是否构建检验评测环;
S7:构建检验评测环对嵌入式软件进行评测,基于评测结果,生成测试评估等级,基于测试评估等级,生成测试评估提示。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种嵌入式软件自动化测试平台系统,其特征在于,包括:
第一数据采集模块,采集嵌入式软件的历史时间数据,历史时间数据包括综合时间参数和响应时间值;
第一模型预测模块,基于历史时间数据,训练预测出响应时间值的第一机器学习模型,并预测出实时的响应时间值;
第二数据采集模块,采集嵌入式软件的历史数量数据,历史数量数据包括综合数量参数和处理数据量;
第二模型预测模块,基于历史数量数据,训练预测出处理数据量的第二机器学习模型,并预测出实时的处理数据量;
差值生成模块,基于实时的响应时间值,判定是否生成时间差值,基于实时的处理数据量,判定是否生成数据量差值;
评测判定模块,基于时间差值和数据量差值,生成质量评估指数,基于质量评估指数,判定是否构建检验评测环;
核验校对模块,构建检验评测环对嵌入式软件进行评测,基于评测结果,生成测试评估等级,基于测试评估等级,生成测试评估提示。
2.根据权利要求1所述的一种嵌入式软件自动化测试平台系统,其特征在于,所述综合时间参数包括处理周期值和网络延迟值;
处理周期值的获取方法包括:
通过时间戳获取数据从输入端传输到CPU的传输时间,以及数据从CPU传输到输出端的传输时间,分别记为输入时间值和输出时间值;
通过时间戳获取个数据进入CPU的时刻值和/>个数据导出CPU的时刻值;
个数据导出CPU的时刻值分别与/>个数据进入CPU的时刻值差值比较,获得/>个子时间值;
子时间值的表达式为:
式中,为第/>个子时间值,/>为第/>个数据导出CPU的时刻值,/>为第/>个数据进入CPU的时刻值;
个子时间值中以间隔两个子时间值为标准,筛选出/>个目标子时间值,/>小于/>,并将个目标子时间值累加后求平均,获得/>个处理时间值;
处理时间值的表达式为:
式中,为处理时间值,/>为第/>个目标子时间值;
将处理时间值、输入时间值和输出时间值相加后,获得处理周期值;
处理周期值的表达式为:
式中,为处理周期值,/>为输入时间值,/>为输出时间值。
3.根据权利要求2所述的一种嵌入式软件自动化测试平台系统,其特征在于,所述网络延迟值的获取方法包括:
在嵌入式软件的系统上打开一个命令提示符,并在命令提示符中输入ping命令,ping命令的后面备注上目标主机的IP地址或域名;
设置ping命令中的ICMP Echo请求;
发送个ICMP Echo请求,并接收/>个ICMP Echo请求的往返时间;
观察ping命令的输出结果,获得个ICMP Echo请求的延迟时间值;
去掉ICMP Echo请求的延迟时间值的最大值和最小值,将余下的个ICMP Echo请求的延迟时间值累加后求平均,获得网络延迟值;
网络延迟值的表达式为:
式中,为网络延迟值,/>为第/>个ICMP Echo请求的延迟时间值。
4.根据权利要求3所述的一种嵌入式软件自动化测试平台系统,其特征在于,所述预测出响应时间值的第一机器学习模型的训练方法包括:
将采集到的历史时间数据转换为对应的一组第一特征向量;
将每组第一特征向量作为所述第一机器学习模型的输入,所述第一机器学习模型以每组综合时间参数对应的响应时间值作为输出,以每组综合时间参数实际对应的响应时间值作为预测目标,以最小化所述综合时间参数的预测误差之和作为训练目标,对第一机器学习模型进行训练,直至预测误差之和达到收敛时停止训练。
5.根据权利要求4所述的一种嵌入式软件自动化测试平台系统,其特征在于,所述综合数量参数包括数据处理速率和数据复杂度;
数据处理速率的获取方法包括:
向嵌入式软件输入相同预设数量的个目标数据;
经过预设时间后,从嵌入式软件筛选出第一待处理数据,并统计第一待处理数据中个目标数据的剩余数量,获得/>个一次剩余值;
个目标数据的预设数量与/>个一次剩余值一一对比,获得/>个目标数据的一次处理量;
目标数据的一次处理量的表达式为:
式中,为第/>个目标数据的一次处理量,/>为第/>个目标数据的预设数量,为第/>个一次剩余值;
向嵌入式软件输入与个目标数据的一次处理量等值的/>个目标数据,直至/>个目标数据的数量均达到预设数量;
经过预设时间后,从嵌入式软件筛选出第二待处理数据,并统计第二待处理数据中个目标数据的剩余数量,获得/>个二次剩余值;
个目标数据的预设数量与/>个二次剩余值一一对比,获得/>个目标数据的二次处理量;
目标数据的二次处理量的表达式为:
式中,为第/>个目标数据的二次处理量,/>为第/>个二次剩余值;
将数值大小相同的目标数据的一次处理量与目标数据的二次处理量记为有效处理量,获得个有效处理量,/>小于/>
个有效处理量分别与预设时间对比,获得/>个子速率;
子速率的表达式为:
式中,为第/>个子速率,/>为第/>个有效处理量,/>为预设时间;
个子速率累加后求平均,获得数据处理速率;
数据处理速率的表达式为:
式中,为数据处理速率,/>为第/>个子速率。
6.根据权利要求5所述的一种嵌入式软件自动化测试平台系统,其特征在于,所述预测出处理数据量的第二机器学习模型的训练方法包括:
将采集到的历史数量数据转换为对应的一组第二特征向量;
将每组第二特征向量作为所述第二机器学习模型的输入,所述第二机器学习模型以每组综合数量参数对应的处理数据量作为输出,以每组综合数量参数实际对应的处理数据量作为预测目标,以最小化所述综合数量参数的预测误差之和作为训练目标,对第二机器学习模型进行训练,直至预测误差之和达到收敛时停止训练。
7.根据权利要求6所述的一种嵌入式软件自动化测试平台系统,其特征在于,所述是否生成时间差值的判定方法包括:
将实时的响应时间值与预测的响应时间值差值比较;
当实时的响应时间值小于等于预测的响应时间值时,判定不生成时间差值;
当实时的响应时间值大于预测的响应时间值时,判定生成时间差值;
时间差值的表达式为:
式中,为时间差值,/>为实时的响应时间值,/>为预测的响应时间值;
是否生成数据量差值的判定方法包括:
将实时的处理数据值与预测的处理数据值差值比较;
当实时的处理数据值大于等于预测的处理数据值时,判定不生成时间差值;
当实时的处理数据值小于预测的处理数据值时,判定生成数据量差值;
数据量差值的表达式为:
式中,为数据量差值,/>为预测的处理数据值,/>为实时的处理数据值。
8.根据权利要求7所述的一种嵌入式软件自动化测试平台系统,其特征在于,所述质量评估指数的表达式为:
式中,为质量评估指数,/>为自然常数;
是否构建检验评测环的判定方法包括:
将质量评估指数与预设的质量评估阈值/>差值比较,/>大于0;
大于等于/>时,判定构建检验评测环;
小于/>时,判定不构建检验评测环;
检验评测环的构建方法包括:
建立一个具有四层包裹结构的空白环,空白环由内向外依次标记为内环、中一环、中二环和外环;
通过嵌入式软件的系统参数配置分别获取处理周期值的标准值、网络延迟值的标准值、数据处理速率的标准值和数据复杂度的标准值;
将处理周期值的标准值、网络延迟值的标准值、数据处理速率的标准值和数据复杂度的标准值分别导入内环、中一环、中二环和外环内进行填充;
在被填充的内环、中一环、中二环和外环内分别标记上对应的标准评测值,构建成检验评测环。
9.根据权利要求8所述的一种嵌入式软件自动化测试平台系统,其特征在于,所述测试评估等级包括一级评估等级、二级评估等级和三级评估等级;
一级评估等级、二级评估等级和三级评估等级的生成方法包括:
将实时的处理周期值、网络延迟值、数据处理速率和数据复杂度分别与内环的标准评测值、中一环的标准评测值、中二环的标准评测值和外环的标准评测值比较;
统计出现实时的处理周期值大于内环的标准评测值、实时的网络延迟值大于中一环的标准评测值、实时的数据处理速率小于中二环的标准评测值和实时的数据复杂度大于外环的标准评测值的现象的个数,个数记为
为1时,生成一级评估等级;
为2时,生成二级评估等级;
为3或4时,生成三级评估等级;
测试评估提示包括常规预警提示、轻微预警提示和紧急预警提示;
常规预警提示、轻微预警提示和紧急预警提示的生成方法包括:
当测试评估等级为一级评估等级时,生成常规预警提示;
当测试评估等级为二级评估等级时,生成轻微预警提示;
测试评估等级为三级评估等级时,生成紧急预警提示。
10.一种嵌入式软件自动化测试平台方法,基于权利要求1-9中任一项所述的一种嵌入式软件自动化测试平台系统实现,其特征在于,包括:
S1:采集嵌入式软件的历史时间数据,历史时间数据包括综合时间参数和响应时间值;
S2:基于历史时间数据,训练预测出响应时间值的第一机器学习模型,并预测出实时的响应时间值;
S3:采集嵌入式软件的历史数量数据,历史数量数据包括综合数量参数和处理数据量;
S4:基于历史数量数据,训练预测出处理数据量的第二机器学习模型,并预测出实时的处理数据量;
S5:基于实时的响应时间值,判定是否生成时间差值;基于实时的处理数据量,判定是否生成数据量差值;
S6:基于时间差值和数据量差值,生成质量评估指数,基于质量评估指数,判定是否构建检验评测环;
S7:构建检验评测环对嵌入式软件进行评测,基于评测结果,生成测试评估等级,基于测试评估等级,生成测试评估提示。
CN202410250924.0A 2024-03-06 2024-03-06 一种嵌入式软件自动化测试平台系统及方法 Active CN117827621B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410250924.0A CN117827621B (zh) 2024-03-06 2024-03-06 一种嵌入式软件自动化测试平台系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410250924.0A CN117827621B (zh) 2024-03-06 2024-03-06 一种嵌入式软件自动化测试平台系统及方法

Publications (2)

Publication Number Publication Date
CN117827621A true CN117827621A (zh) 2024-04-05
CN117827621B CN117827621B (zh) 2024-05-10

Family

ID=90524424

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410250924.0A Active CN117827621B (zh) 2024-03-06 2024-03-06 一种嵌入式软件自动化测试平台系统及方法

Country Status (1)

Country Link
CN (1) CN117827621B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105988924A (zh) * 2015-02-10 2016-10-05 中国船舶工业综合技术经济研究院 一种非侵入式嵌入式软件图形用户界面自动化测试方法
CN110569615A (zh) * 2019-09-12 2019-12-13 中国工程物理研究院计算机应用研究所 一种多源异构嵌入式软件协同仿真测试方法
US20200287814A1 (en) * 2018-10-17 2020-09-10 Wangsu Science & Technology Co., Ltd. Training method and apparatus for service quality assessment model
CN112306816A (zh) * 2020-11-20 2021-02-02 福建天晴数码有限公司 一种基于深度学习的评测实体机器人响应的方法及其系统
CN113157508A (zh) * 2021-04-21 2021-07-23 浪潮(北京)电子信息产业有限公司 嵌入式系统的测试方法、系统、装置、设备及存储介质
CN115562981A (zh) * 2022-09-29 2023-01-03 福建正孚软件有限公司 基于机器学习的软件质量评估方法
CN115629996A (zh) * 2022-12-21 2023-01-20 深圳市微克科技有限公司 一种嵌入式软件自动化测试方法
DE102021208759A1 (de) * 2021-08-11 2023-02-16 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens zum Erzeugen von Testspezifikationen zum Testen eines auf Software basierenden Systems
CN117093477A (zh) * 2023-08-11 2023-11-21 中国平安财产保险股份有限公司 一种软件质量评估方法、装置、计算机设备及存储介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105988924A (zh) * 2015-02-10 2016-10-05 中国船舶工业综合技术经济研究院 一种非侵入式嵌入式软件图形用户界面自动化测试方法
US20200287814A1 (en) * 2018-10-17 2020-09-10 Wangsu Science & Technology Co., Ltd. Training method and apparatus for service quality assessment model
CN110569615A (zh) * 2019-09-12 2019-12-13 中国工程物理研究院计算机应用研究所 一种多源异构嵌入式软件协同仿真测试方法
CN112306816A (zh) * 2020-11-20 2021-02-02 福建天晴数码有限公司 一种基于深度学习的评测实体机器人响应的方法及其系统
CN113157508A (zh) * 2021-04-21 2021-07-23 浪潮(北京)电子信息产业有限公司 嵌入式系统的测试方法、系统、装置、设备及存储介质
DE102021208759A1 (de) * 2021-08-11 2023-02-16 Robert Bosch Gesellschaft mit beschränkter Haftung Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens zum Erzeugen von Testspezifikationen zum Testen eines auf Software basierenden Systems
CN115562981A (zh) * 2022-09-29 2023-01-03 福建正孚软件有限公司 基于机器学习的软件质量评估方法
CN115629996A (zh) * 2022-12-21 2023-01-20 深圳市微克科技有限公司 一种嵌入式软件自动化测试方法
CN117093477A (zh) * 2023-08-11 2023-11-21 中国平安财产保险股份有限公司 一种软件质量评估方法、装置、计算机设备及存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
MASASHI MIZOGUCHI.ETC: "Optimization of automated executions based on integration test configurations of embedded software", IEEE, 31 December 2020 (2020-12-31) *
皮明峰;陈侃;: "实时嵌入式软件测试策略研究", 信息通信, no. 04, 15 April 2016 (2016-04-15) *
霍小卫;刘江坡;: "可重构嵌入式软件缺陷优化预测仿真研究", 计算机仿真, no. 08, 15 August 2018 (2018-08-15) *

Also Published As

Publication number Publication date
CN117827621B (zh) 2024-05-10

Similar Documents

Publication Publication Date Title
CN107862338B (zh) 基于双检验法的海洋环境监测数据质量管理方法及系统
WO2020215721A1 (zh) 一种激光雷达的寿命预测方法
JP7116103B2 (ja) 光モジュールの故障を予測するための方法、装置、およびデバイス
CN112257963B (zh) 基于航天软件缺陷数据分布离群点的缺陷预测方法及装置
CN110083514B (zh) 软件测试缺陷评估方法、装置、计算机设备及存储介质
CN112734977B (zh) 一种基于物联网的设备风险预警系统及算法
CN116670608A (zh) 用于物联网预测建模的混合系综方法
CN115511398B (zh) 一种基于时间敏感网络的焊接质量智能检测方法及系统
CN114255784A (zh) 一种基于声纹识别的变电站设备故障诊断方法及相关装置
CN112329341B (zh) 一种基于ar和随机森林模型的故障诊断系统及方法
EP3973364A1 (en) System and method for determining a health condition and an anomaly of an equipment
CN117827621B (zh) 一种嵌入式软件自动化测试平台系统及方法
CN113962253A (zh) 基于深度小波极限学习机的轴承剩余寿命预测方法及系统
CN117436846A (zh) 基于神经网络的设备预测性维护方法及系统
CN115034094B (zh) 一种金属加工机床运行状态预测方法及系统
JP3515300B2 (ja) プラント状態予測装置
CN111382946B (zh) 设备健康状态的自主评估方法、系统及工业互联网设备
RU2779795C1 (ru) Способ и устройство для предиктивного диагностирования технического состояния промышленных объектов
KR102533298B1 (ko) 시스템 가용도에 기반하여 고장진단모델을 평가하는 장치 및 방법
Hao et al. Review on Verification and Validation technology in integrated health management system
CN114553756B (zh) 基于联合生成对抗网络的设备故障检测方法与电子设备
CN117560300B (zh) 一种智能物联网流量预测与优化系统
CN117589444B (zh) 一种基于联邦学习的风力发电机齿轮箱故障诊断方法
CN117055537B (zh) 一种基于物联网的摩托车电控系统故障诊断方法
CN115190038B (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