发明内容
为此,需要提供一种图像处理类IP的可约束随机验证的技术方案,用以解决在对图像数据进行处理验证时,测试工作量大、效率低下、风险高、测试用例无法全面覆盖所有图像处理情况的问题。
为实现上述目的,发明人提供了一种图像处理类IP的可约束随机验证方法,包括步骤:
参数配置模块对参数进行约束;
参数生成模块生成待测电路的配置参数,按照受约束随机方案生成测试用例,并将测试用例发送给待测电路和参考模型模块;
待测电路接收参数生成模块生成的随机测试用例,并输出该测试用例对应的测试结果;
参考模型模块接收参数生成模块生成的随机测试用例,并输出该测试用例对应的模拟结果;
校验模块将该测试用例对应的测试结果和模拟结果进行比对。
进一步地,所述步骤“参数生成模块随机生成待测电路的配置参数”具体包括:
参数生成模块以时间为种子随机生成待测电路的配置参数。
进一步地,所述方法还包括:
覆盖率统计收集模块对参数生成模块生成的测试用例进行统计,并判断参数生成模块生成的测试用例是否已经全部覆盖参数生成模块所能生成的全部测试用例,若是则参数生成模块结束生成待测电路的配置参数,否则参数生成模块随机生成配置参数。
进一步地,所述方法还包括:
控制分析模块在校验模块判定测试用例对应的测试结果和模拟结果不一致后,输出该测试用例。
发明人还提供了一种图像处理类IP的可约束随机验证装置,所述装置包括参数配置模块,参数生成模块,测试结果输出模块,参考模型模块和校验模块;所述参数配置模块和参数生成模块连接,所述测试结果输出模块和参数生成模块连接,所述参考模型模块和参数生成模块连接,所述校验模块与测试结果输出模块连接,所述校验模块与所述参考模型模块连接;
所述参数配置模块用于对参数进行约束;
所述参数生成模块用于生成待测电路的配置参数,按照受约束随机方案生成测试用例,并将测试用例发送给待测电路和参考模型模块;
所述测试结果输出模块用于待测电路接收参数生成模块生成的测试用例,并输出该测试用例对应的测试结果;
所述参考模型模块用于接收参数生成模块生成的随机测试用例,并输出该测试用例对应的模拟结果;
所述校验模块用于将随机测试用例对应的测试结果和模拟结果进行比对。
进一步地,所述参数生成模块随机生成待测电路的配置参数具体包括:
参数生成模块以时间为种子随机生成待测电路的配置参数。
进一步地,所述装置还包括覆盖率统计收集模块,所述覆盖率统计收集模块和参数生成模块连接,所述覆盖率统计收集模块用于对参数生成模块生成的测试用例进行统计,并判断参数生成模块生成的测试用例是否已经全部覆盖参数生成模块所能生成的全部测试用例,若是则参数生成模块结束生成配置参数,否则参数生成模块随机生成配置参数。
进一步地,所述装置还包括控制分析模块,所述控制分析模块与所述校验模块连接,所述控制分析模块用于在校验模块判定测试用例对应的测试结果和模拟结果不一致后,输出该测试用例。
区别于现有技术,上述技术方案所述的图像处理类IP的可约束随机验证方法和装置,首先参数配置模块对参数进行约束,参数生成模块生成待测电路的配置参数,按照受约束随机方案生成测试用例,并将测试用例发送给待测电路和参考模型模块;其次,待测电路接收参数生成模块生成的随机测试用例,并输出该测试用例对应的测试结果;参考模型模块接收参数生成模块生成的随机测试用例,并输出该测试用例对应的模拟结果;而后校验模块将该测试用例对应的测试结果和模拟结果进行比对。由于测试用例是受约束随机方案生成,取代了原有人工逐个输入测试用例的方式,大大提升了测试效率。此外,将测试用例输入待测电路以及参考模型模块,并可以对两者的结果进行比对,不仅便于测试人员及时发现待测电路中存在的问题,也降低了测试过程出现的风险,因而在图像处理领域具有广阔的市场前景。
具体实施方式
为详细说明技术方案的技术内容、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。
请参阅图1,为本发明一实施方式所述图像处理类IP的可约束随机验证方法的流程图;所述方法可以对图像处理类IP进行可约束随机验证,所述图像处理类IP为关于图像处理的待测电路,具体包括如下步骤:
首先进入步骤S101参数配置模块对参数进行约束。所述参数为图像处理测试的相关参数,包括图像大小,数据格式,色彩空间模式等,所述色彩空间模式包括YUV空间模式,所述YUV空间模式包括YUV410、YUV420等;所述参数还包括对图像的变换操作,如对图像进行旋转、平移、缩放等相关的坐标参数。
而后可以进入步骤S102参数生成模块生成待测电路的配置参数,按照受约束随机方案生成测试用例,并将测试用例发送给待测电路和参考模型模块。所述配置参数为参数配置模块进行约束后的参数,可以是在图像大小、数据格式、色彩空间、图像位置等。所述受约束随机方案为随机生成的进行测试的方案,例如可以在各个配置参数中,各自随机生成一确定值,进而进行测试。
而后可以进入步骤S103待测电路接收参数生成模块生成的随机测试用例,并输出该测试用例对应的测试结果。所述待测电路为关于图像处理的待测电路,参数生成模块将生成的测试用例发送给待测电路,待测电路接收测试用例后就可以根据测试用例所包括的图像处理的相关参数,对图像进行对应操作。而后可以进入S104参考模型模块接收参数生成模块生成的随机测试用例,并输出该测试用例对应的模拟结果。所述模拟结果为接收参数生成模块生成的随机测试用例后,图像处理类IP理想状态下所得到的测试结果。
而后可以进入步骤S105校验模块将该测试用例对应的测试结果和模拟结果进行比对,并判断该测试用例对应的测试结果和模拟结果是否一致。待测电路接收参数生成模块生成的随机测试用例后,输出待测电路根据该测试用例对图像处理的测试结果,由于受到客观条件的限制,测试结果有可能会出现与理想状态下的模拟结果不一致,因而需要将该测试用例对应的测试结果和模拟结果进行比对。若该测试用例对应的测试结果和模拟结果一致,说明待测电路符合该测试用例的要求;若该测试用例对应的测试结果和模拟结果不一致,说明待测电路存在一定漏洞,测试人员可以对待测电路重新进行检测,及时发现待测电路存在的问题。
上述技术方案所述的图像处理类IP的可约束随机验证方法和装置,首先参数配置模块对参数进行约束,参数生成模块生成待测电路的配置参数,按照受约束随机方案生成测试用例,并将测试用例发送给待测电路和参考模型模块;其次,待测电路接收参数生成模块生成的随机测试用例,并输出该测试用例对应的测试结果;参考模型模块接收参数生成模块生成的随机测试用例,并输出该测试用例对应的模拟结果;而后校验模块将该测试用例对应的测试结果和模拟结果进行比对。由于测试用例是受约束随机方案生成,取代了原有人工逐个输入测试用例的方式,大大提升了测试效率。此外,将测试用例输入待测电路以及参考模型模块,并可以对两者的结果进行比对,不仅便于测试人员及时发现待测电路中存在的问题,也降低了测试过程出现的风险,因而在图像处理领域具有广阔的市场前景。
为了使得参数生成模块在较短时间内尽可能地覆盖所有测试用例,提升对图像处理类IP进行可约束随机验证的效率,因而在本实施方式中,所述步骤S102中“参数生成模块随机生成待测电路的配置参数”具体包括:参数生成模块以时间为种子随机生成待测电路的配置参数。随机数生成函数在产生随机数时,需要一个种子seed的值作为产生随机数算法的初始值。以时间为种子,则随机数算法的初始值是在不断变化的,可以使得所生成的随机数更有代表性。在本实施方式中,参数生成模块以时间为种子随机生成待测电路的配置参数,就可以使得所生成的待测电路的配置参数在较短时间内尽可能地覆盖所有测试用例,避免出现参数生成模块反复生成同一测试用例的情况,从而提升了测试效率。
为了保证参数生成模块生成的测试用例能够覆盖参数生成模块所能生成的全部测试用例,进而保证测试质量,如图2所示,在参数生成模块生成测试用例后,还可以进入步骤S107覆盖率统计收集模块对参数生成模块生成的测试用例进行统计,并判断参数生成模块生成的测试用例是否已经全部覆盖参数生成模块所能生成的全部测试用例,若是则进入步骤S108参数生成模块结束生成待测电路的配置参数,否则进入步骤S109参数生成模块随机生成配置参数。相比于人工输入并统计测试用例的方式,通过覆盖率统计收集模块对参数生成模块生成的测试用例进行统计,不仅大大提高了测试效率,也避免了由于人工操作导致测试用例输入错误、丢失等风险,进而提高了测试过程的安全性。
校验模块判定测试用例对应的测试结果和模拟结果一致,则可以进入步骤S110该测试用例测试通过。为了便于测试人员及时发现待测电路进行测试时存在的问题,因而在校验模块判定测试用例对应的测试结果和模拟结果不一致后,还可以进入步骤S106控制分析模块输出该测试用例。校验模块判定测试用例对应的测试结果和模拟结果不一致,说明待测电路无法通过该测试用例的测试,原因可能是多样的,可能是因为待测电路的问题,也有可能是该测试用例存在问题。因而控制分析模块输出该测试用例后,测试人员就可以对待测电路或该测试用例调试,并将重新测试结果与该测试用例在参考模型模块中的模拟结果进行比对,进而找出问题所在,并作进一步修复。优选的,在本实施方式中,在控制分析模块输出测试用例后,还可以再次进入步骤S101参数配置模块对参数进行约束,参数重新约束后,就可以生成新的测试用例对待测电路作进一步检测,直至通过检测为止。
上述技术方案所述的图像处理类IP的可约束随机验证方法,首先参数配置模块对参数进行约束,参数生成模块生成待测电路的配置参数,按照受约束随机方案生成测试用例,并将测试用例发送给待测电路和参考模型模块;其次,待测电路接收参数生成模块生成的随机测试用例,并输出该测试用例对应的测试结果;参考模型模块接收参数生成模块生成的随机测试用例,并输出该测试用例对应的模拟结果;而后校验模块将该测试用例对应的测试结果和模拟结果进行比对;在校验模块判定测试用例对应的测试结果和模拟结果不一致后,还可以输出该测试用例。由于测试用例是受约束随机方案生成,取代了原有人工逐个输入测试用例的方式,大大提升了测试效率。覆盖率统计收集模块对参数生成模块生成的测试用例进行统计,可以保证参数生成模块生成的测试用例能够覆盖参数生成模块所能生成的全部测试用例。此外,将测试用例输入待测电路以及参考模型模块,并对两者的结果进行比对,不仅便于测试人员及时发现待测电路中存在的问题,也降低了测试过程出现的风险,因而在图像处理领域具有广阔的市场前景。
以及发明人还提供了一种图像处理类IP的可约束随机验证装置。请参阅图3,为本发明一实施方式所述的图像处理类IP的可约束随机验证装置的示意图;所述装置包括参数配置模块1,参数生成模块2,测试结果输出模块3,参考模型模块4和校验模块5;所述参数配置模块1和参数生成模块2连接,所述测试结果输出模块3和参数生成模块2连接,所述参考模型模块4和参数生成模块2连接,所述校验模块5与测试结果输出模块3连接,所述校验模块5与所述参考模型模块4连接;所述图像处理类IP为待测电路。
所述参数配置模块1用于对参数进行约束;
所述参数生成模块2用于生成图像处理类IP的配置参数,按照受约束随机方案生成测试用例,并将测试用例发送给待测电路和参考模型模块;
所述测试结果输出模块3用于待测电路接收参数生成模块生成的测试用例,并输出该测试用例对应的测试结果;
所述参考模型模块4用于接收参数生成模块生成的随机测试用例,并输出该测试用例对应的模拟结果;
所述校验模块5用于将随机测试用例对应的测试结果和模拟结果进行比对。
在使用图像处理类IP的可约束随机验证装置对图像处理类IP进行测试时,首先参数配置模块1对参数进行约束;而后参数生成模块2生成图像处理类IP的配置参数,按照受约束随机方案生成测试用例,并将测试用例发送给待测电路和参考模型模块;测试结果输出模块3在待测电路接收参数生成模块生成的测试用例后,输出该测试用例对应的测试结果;所述参考模型模块4接收参数生成模块生成的随机测试用例,并输出该测试用例对应的模拟结果;而后校验模块5将随机测试用例对应的测试结果和模拟结果进行比对。
为了使得参数生成模块在较短时间内尽可能地覆盖所有测试用例,提升对图像处理类IP进行可约束随机验证的效率,因而在本实施方式中,所述参数生成模块随机生成待测电路的配置参数具体包括::参数生成模块以时间为种子随机生成待测电路的配置参数。随机数生成函数在产生随机数时,需要一个种子seed的值作为产生随机数算法的初始值。以时间为种子,则随机数算法的初始值是在不断变化的,可以使得所生成的随机数更有代表性。在本实施方式中,参数生成模块以时间为种子随机生成待测电路的配置参数,就可以使得所生成的待测电路的配置参数在较短时间内尽可能地覆盖所有测试用例,避免出现参数生成模块反复生成同一测试用例的情况,从而提升了测试效率。
为了保证参数生成模块生成的测试用例能够覆盖参数生成模块所能生成的全部测试用例,进而保证测试质量,所述装置还包括覆盖率统计收集模块6,所述覆盖率统计收集模块6和参数生成模块2连接,所述覆盖率统计收集模块6用于对参数生成模块生成的测试用例进行统计,并判断参数生成模块生成的测试用例是否已经全部覆盖参数生成模块所能生成的全部测试用例,若是则参数生成模块结束生成配置参数,否则参数生成模块随机生成配置参数。相比于人工输入并统计测试用例的方式,通过覆盖率统计收集模块对参数生成模块生成的测试用例进行统计,不仅大大提高了测试效率,也避免了由于人工操作导致测试用例输入错误、丢失等风险,进而提高了测试过程的安全性。
为了便于测试人员及时发现待测电路进行测试时存在的问题,所述装置还包括控制分析模块7,所述控制分析模块7与所述校验模块5连接,所述控制分析模块7用于在校验模块判定测试用例对应的测试结果和模拟结果不一致后,输出该测试用例。校验模块判定测试用例对应的测试结果和模拟结果不一致,说明待测电路无法通过该测试用例的测试,原因可能是多样的,可能是因为待测电路的问题,也有可能是该测试用例存在问题。因而控制分析模块输出该测试用例后,测试人员就可以对待测电路或该测试用例调试,并将重新测试结果与该测试用例在参考模型模块中的模拟结果进行比对,进而找出问题所在,并作进一步修复。
请参阅图4,为本发明另一实施方式所述的图像处理类IP的可约束随机验证装置的示意图。所述图像处理类IP的可约束随机验证装置包括用例配置模块,覆盖率统计收集模块以及测试环境模块;所述用例配置模块包括参数配置模块和参数生成模块;所述测试环境模块包括参考模型模块,待测电路,校验模块和控制分析模块;所述用例配置模块与参考模型模块连接,所述用例配置模块与待测电路连接,所述用例配置模块与覆盖率统计收集模块连接;所述校验模块与参考模型模块连接,所述校验模块与待测电路连接,所述校验模块与控制分析模块连接;所述控制分析模块还可以与用例配置模块连接。
在使用上述图像处理类IP的可约束随机验证装置对图像处理类IP进行测试时,首先参数配置模块对参数进行约束;而后参数生成模块生成图像处理类IP的配置参数,按照受约束随机方案生成测试用例,并将测试用例发送给待测电路和参考模型模块;待测电路接收参数生成模块生成的测试用例后,输出该测试用例对应的测试结果;参考模型模块接收参数生成模块生成的随机测试用例,并输出该测试用例对应的模拟结果;而后校验模块将随机测试用例对应的测试结果和模拟结果进行比对,当测试结果和模拟结果不一致时,控制分析模块输出该测试用例,并让参数配置模块重新对参数进行约束,进而生成新的测试用例,直至测试通过。若校验模块判定随机测试用例对应的测试结果和模拟结果一致,则说明待测电路通过该测试用例的测试,可以进入下一环节的测试。
上述技术方案所述的图像处理类IP的可约束随机验证装置,首先参数配置模块对参数进行约束,参数生成模块生成待测电路的配置参数,按照受约束随机方案生成测试用例,并将测试用例发送给待测电路和参考模型模块;其次,待测电路接收参数生成模块生成的随机测试用例,并输出该测试用例对应的测试结果;参考模型模块接收参数生成模块生成的随机测试用例,并输出该测试用例对应的模拟结果;而后校验模块将该测试用例对应的测试结果和模拟结果进行比对;在校验模块判定测试用例对应的测试结果和模拟结果不一致后,还可以输出该测试用例。由于测试用例是受约束随机方案生成,取代了原有人工逐个输入测试用例的方式,大大提升了测试效率。覆盖率统计收集模块对参数生成模块生成的测试用例进行统计,可以保证参数生成模块生成的测试用例能够覆盖参数生成模块所能生成的全部测试用例。此外,将测试用例输入待测电路以及参考模型模块,并对两者的结果进行比对,不仅便于测试人员及时发现待测电路中存在的问题,也降低了测试过程出现的风险,因而在图像处理领域具有广阔的市场前景。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括……”或“包含……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的要素。此外,在本文中,“大于”、“小于”、“超过”等理解为不包括本数;“以上”、“以下”、“以内”等理解为包括本数。
本领域内的技术人员应明白,上述各实施例可提供为方法、装置、或计算机程序产品。这些实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。上述各实施例涉及的方法中的全部或部分步骤可以通过程序来指令相关的硬件来完成,所述的程序可以存储于计算机设备可读取的存储介质中,用于执行上述各实施例方法所述的全部或部分步骤。所述计算机设备,包括但不限于:个人计算机、服务器、通用计算机、专用计算机、网络设备、嵌入式设备、可编程设备、智能移动终端、智能家居设备、穿戴式智能设备、车载智能设备等;所述的存储介质,包括但不限于:RAM、ROM、磁碟、磁带、光盘、闪存、U盘、移动硬盘、存储卡、记忆棒、网络服务器存储、网络云存储等。
上述各实施例是参照根据实施例所述的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到计算机设备的处理器以产生一个机器,使得通过计算机设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机设备以特定方式工作的计算机设备可读存储器中,使得存储在该计算机设备可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机设备上,使得在计算机设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已经对上述各实施例进行了描述,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改,所以以上所述仅为本发明的实施例,并非因此限制本发明的专利保护范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围之内。