CN115794659B - 一种cfd软件的分布式并行测试方法、装置、设备及介质 - Google Patents
一种cfd软件的分布式并行测试方法、装置、设备及介质 Download PDFInfo
- Publication number
- CN115794659B CN115794659B CN202310046258.4A CN202310046258A CN115794659B CN 115794659 B CN115794659 B CN 115794659B CN 202310046258 A CN202310046258 A CN 202310046258A CN 115794659 B CN115794659 B CN 115794659B
- Authority
- CN
- China
- Prior art keywords
- test
- testing
- node
- cfd software
- distributed parallel
- 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.)
- Active
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T90/00—Enabling technologies or technologies with a potential or indirect contribution to GHG emissions mitigation
Abstract
本申请公开了一种CFD软件的分布式并行测试方法、装置、设备及介质,涉及仿真软件自动化测试领域,测试平台通过远程方法调用技术与测试节点构成分布式并行架构,测试节点上部署自动化测试工具,包括:向每一测试节点发送待测CFD软件信息,以便测试节点下载并安装相应的待测CFD软件,依次向每一测试节点分配测试用例编号,以便测试节点下载测试用例,并根据测试用例确定测试脚本及网格模型,将网格模型导入待测CFD软件,并利用自动化测试工具执行测试脚本;接收测试节点生成的测试结果。可见,本申请基于远程方法调用技术,通过构建分布式并行测试架构将多个测试节点进行连接,实现了CFD软件的分布式并行测试,有效提高了测试效率。
Description
技术领域
本发明涉及仿真软件自动化测试领域,特别涉及一种CFD软件的分布式并行测试方法、装置、设备及介质。
背景技术
2018年,我国启动了国家数值风洞工程(National Numerical Windtunnel,NNW),研发以计算流体力学为核心的CFD(Computational Fluid Dynamics)软件,随着NNW软件工程的发展建设,CFD软件系统复杂程度越来越高,传统的人工检测已无法满足现有CFD软件系统的支持保障要求。
目前,CFD软件测试工程师使用软件自动化测试工具,完成了包括不同类型几何模型的网格导入,初始参数、边界条件和算法模型等计算条件的设置,数值求解,压力场、温度场、速度场等计算结果可视化等测试工作的自动化执行,已在单机上实现自动化测试。尽管单机上自动化测试大大减少了重复的劳动,提高了测试效率,但由于CFD软件仿真需要庞大的计算资源,往往执行单个测试用例的仿真测试就需要几天甚至一个月的时间,单机上完成多个测试用例的仿真测试在时间周期上显然无法满足当前的敏捷开发模式。
现有技术通过将传统的测试方法与现有Hadoop分布式框架进行结合,利用Hadoop中Map/Reduce的计算框架实现并行分布式测试的方法,将大规模的测试用例分配到不同节点上同时进行测试,形成一种全新机制的分布式的软件测试平台。该现有技术不能有效满足复杂测试环境的测试任务,对于CFD软件的测试,需要导入网格模型,而该现有技术没有测试前置条件的相关配置及测试前置资源的导入模块,无法满足CFD软件的分布式并行测试需求。
为此,如何实现CFD软件的分布式并行测试,并降低CFD软件的测试时间,提高测试效率是本领域亟待解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种CFD软件的分布式并行测试方法、装置、设备及介质,能够实现CFD软件的分布式并行测试,并降低CFD软件的测试时间,提高测试效率,其具体方案如下:
第一方面,本申请公开了一种CFD软件的分布式并行测试方法,应用于预先搭建的测试平台,所述测试平台通过远程方法调用技术与各测试节点构成分布式并行架构,所述各测试节点上预先部署自动化测试工具,包括:
向每一所述测试节点发送待测CFD软件信息,以便所述测试节点在接收到所述待测CFD软件信息后,下载并安装相应的待测CFD软件;
依次向每一所述测试节点分配测试用例编号,以便所述测试节点根据所述测试用例编号下载相应的测试用例,并根据所述测试用例确定出测试脚本以及网格模型,然后将所述网格模型导入至所述待测CFD软件,并利用所述自动化测试工具执行所述测试脚本;
接收所述测试节点在执行完所述测试脚本后生成的测试结果。
可选的,所述依次向每一所述测试节点分配测试用例编号之前,还包括:
基于所有待测试的测试用例编号构建目标有序队列。
可选的,所述依次向每一所述测试节点分配测试用例编号,包括:
根据所述目标有序队列中所有所述待测试的测试用例编号的顺序,依次向每一所述测试节点分配一个测试用例编号。
可选的,所述CFD软件的分布式并行测试方法,还包括:
当接收到任意所述测试节点在执行完测试脚本后生成的测试结果,则根据所述目标有序队列,向所述测试节点分配一个新的测试用例编号。
第二方面,本申请公开了一种CFD软件的分布式并行测试方法,应用于各测试节点,所述各测试节点上预先部署自动化测试工具,所述各测试节点通过远程方法调用技术与预先搭建的测试平台构成分布式并行架构,包括:
在接收到所述测试平台发送的待测CFD软件信息后,下载并安装相应的待测CFD软件;
接收所述测试平台发送的测试用例编号,并根据所述测试用例编号下载相应的测试用例,然后根据所述测试用例确定出测试脚本以及网格模型;
将所述网格模型导入至所述待测CFD软件,并利用所述自动化测试工具执行所述测试脚本,然后产生测试结果,并将所述测试结果返回至所述测试平台。
可选的,所述利用所述自动化测试工具执行所述测试脚本,然后产生测试结果之后,还包括:
对所述测试结果进行分析,并输出测试报告。
可选的,所述在接收到所述测试平台发送的待测CFD软件信息后,下载并安装相应的待测CFD软件,包括:
在接收到所述测试平台发送的待测CFD软件信息后,从数据库中下载并安装相应的待测CFD软件;
相应的,所述根据所述测试用例编号下载相应的测试用例,然后根据所述测试用例确定出测试脚本以及网格模型,包括:
根据所述测试用例编号从所述数据库中下载相应的测试用例,然后根据所述测试用例确定出测试脚本以及网格模型。
第三方面,本申请公开了一种CFD软件的分布式并行测试装置,应用于预先搭建的测试平台,所述测试平台通过远程方法调用技术与各测试节点构成分布式并行架构,所述各测试节点上预先部署自动化测试工具,包括:
待测CFD软件信息发送模块,用于向每一所述测试节点发送待测CFD软件信息,以便所述测试节点在接收到所述待测CFD软件信息后,下载并安装相应的待测CFD软件;
测试用例编号发送模块,用于依次向每一所述测试节点分配测试用例编号,以便所述测试节点根据所述测试用例编号下载相应的测试用例,并根据所述测试用例确定出测试脚本以及网格模型,然后将所述网格模型导入至所述待测CFD软件,并利用所述自动化测试工具执行所述测试脚本;
测试结果接收模块,用于接收所述测试节点在执行完测试脚本后生成的测试结果。
第四方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述公开的CFD软件的分布式并行测试方法。
第五方面,本申请公开了一种计算机可读存储介质,用于保存计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的CFD软件的分布式并行测试方法。
可见,本申请公开一种CFD软件的分布式并行测试方法,应用于预先搭建的测试平台,所述测试平台通过远程方法调用技术与各测试节点构成分布式并行架构,所述各测试节点上预先部署自动化测试工具,包括:向每一所述测试节点发送待测CFD软件信息,以便所述测试节点在接收到所述待测CFD软件信息后,下载并安装相应的待测CFD软件;依次向每一所述测试节点分配测试用例编号,以便所述测试节点根据所述测试用例编号下载相应的测试用例,并根据所述测试用例确定出测试脚本以及网格模型,然后将所述网格模型导入至所述待测CFD软件,并利用所述自动化测试工具执行所述测试脚本;接收所述测试节点在执行完所述测试脚本后生成的测试结果。综上可见,本申请基于远程方法调用技术,通过构建分布式并行测试架构将多个测试节点进行连接,同时在多个测试节点上部署待测CFD软件和自动化测试工具,并将测试用例动态地分配到不同测试节点上,然后根据测试用例确定测试脚本及网格模型,将网格模型导入待测CFD软件,并利用自动化测试工具执行测试脚本,如此一来,本申请解决了CFD软件测试用例在多个测试节点上并行执行的难题,实现了CFD软件的分布式并行测试,降低了整个CFD软件系统测试的时间,有效的提高了测试效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种应用于预先搭建的测试平台的CFD软件的分布式并行测试方法流程图;
图2为本申请公开的一种应用于各测试节点的CFD软件的分布式并行测试方法流程图;
图3为本申请公开的一种具体的CFD软件的分布式并行测试方法的流程图;
图4为本申请公开的一种分布式框架的结构示意图;
图5为本申请公开的一种测试用例分发的示意图;
图6为本申请公开的一种应用于预先搭建的测试平台的CFD软件的分布式并行测试装置结构示意图;
图7为本申请公开的一种电子设备结构图。
实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
执行单个测试用例的仿真测试就需要几天甚至一个月的时间,单机上完成多个测试用例的仿真测试在时间周期上显然无法满足当前的敏捷开发模式。而并行测试的现有技术不能有效满足复杂测试环境的测试任务,对于CFD软件的测试,需要导入网格模型,而现有技术没有测试前置条件的相关配置及测试前置资源的导入模块,无法满足CFD软件的分布式并行测试需求。
为此,本申请实施例提出一种CFD软件的分布式并行测试方案,能够实现CFD软件的分布式并行测试,并降低CFD软件的测试时间,提高测试效率
本申请实施例公开了一种CFD软件的分布式并行测试方法,应用于预先搭建的测试平台,所述测试平台通过远程方法调用技术与各测试节点构成分布式并行架构,所述各测试节点上预先部署自动化测试工具,参见图1所示,该方法包括:
步骤S11:向每一所述测试节点发送待测CFD软件信息,以便所述测试节点在接收到所述待测CFD软件信息后,下载并安装相应的待测CFD软件。
本实施例中,利用Java的远程方法调用技术(RMI,remote method invocation)协调各测试节点之间的通信和资源,构建CFD软件的分布式并行测试架构。
所述测试平台包括但不限于:通过整合Spring+SpringMVC+Mybatis框架搭建的测试平台、通过整合truts+Spring+Hibernate框架搭建的测试平台、通过整合SpringBoot+SpringMVC+Mybatis框架搭建的测试平台。
本实施例中,通过所述测试平台向每一所述测试节点发送待测CFD软件信息,以便所述测试节点根据接收到的所述待测CFD软件信息,下载并安装相应的待测CFD软件。
步骤S12:依次向每一所述测试节点分配测试用例编号,以便所述测试节点根据所述测试用例编号下载相应的测试用例,并根据所述测试用例确定出测试脚本以及网格模型,然后将所述网格模型导入至所述待测CFD软件,并利用所述自动化测试工具执行所述测试脚本。
需要指出的是,本实施例在依次向每一所述测试节点分配测试用例编号之前,需要基于所有待测试的测试用例编号构建目标有序队列,进一步的,由于执行测试用例需要一定的时间,为避免单个测试节点接收到多个测试用例并执行时发生冲突,因此在每次分配测试用例编号时,根据所述目标有序队列中所有所述待测试的测试用例编号的顺序,依次向每一所述测试节点分配一个测试用例编号,进一步的,当接收到任意所述测试节点在执行完测试脚本后生成的测试结果,则根据所述目标有序队列,向所述测试节点分配一个新的测试用例编号,直至所述目标有序队列中的测试用例编号被全部执行。
本实施例中,向每一所述测试节点分配测试用例编号,以便所述测试节点根据所述测试用例编号下载相应的测试用例,并根据所述测试用例确定出测试脚本以及网格模型,然后将所述网格模型导入至所述待测CFD软件,并利用所述自动化测试工具执行所述测试脚本。
步骤S13:接收所述测试节点在执行完所述测试脚本后生成的测试结果。
本实施例中,在依次向每一所述测试节点分配测试用例编号之后,接收所述测试节点在执行完所述测试脚本后生成的测试结果。
此外,现有技术在面对复杂需求时无法灵活变更,即使能够改动Hadoop分布式框架或者在此框架上进行二次开发,但对于企业来说会面临高昂的成本,而本申请利用Java的RMI技术进行自主开发,能够根据自身需求量身定制,能够更好地满足一些特定复杂的测试需求。
可见,本申请公开一种CFD软件的分布式并行测试方法,应用于预先搭建的测试平台,所述测试平台通过远程方法调用技术与各测试节点构成分布式并行架构,所述各测试节点上预先部署自动化测试工具,包括:向每一所述测试节点发送待测CFD软件信息,以便所述测试节点在接收到所述待测CFD软件信息后,下载并安装相应的待测CFD软件;依次向每一所述测试节点分配测试用例编号,以便所述测试节点根据所述测试用例编号下载相应的测试用例,并根据所述测试用例确定出测试脚本以及网格模型,然后将所述网格模型导入至所述待测CFD软件,并利用所述自动化测试工具执行所述测试脚本;接收所述测试节点在执行完所述测试脚本后生成的测试结果。综上可见,本申请基于远程方法调用技术,通过构建分布式并行测试架构将多个测试节点进行连接,同时在多个测试节点上部署待测CFD软件和自动化测试工具,并将测试用例动态地分配到不同测试节点上,然后根据测试用例确定测试脚本及网格模型,将网格模型导入待测CFD软件,并利用自动化测试工具执行测试脚本,如此一来,本申请解决了CFD软件测试用例在多个测试节点上并行执行的难题,实现了CFD软件的分布式并行测试,降低了整个CFD软件系统测试的时间,有效的提高了测试效率。
本申请实施例公开了一种CFD软件的分布式并行测试方法,应用于各测试节点,所述各测试节点上预先部署自动化测试工具,所述各测试节点通过远程方法调用技术与预先搭建的测试平台构成分布式并行架构,参见图2所示,包括:
步骤S21:在接收到所述测试平台发送的待测CFD软件信息后,下载并安装相应的待测CFD软件。
本实施例中,在接收到所述测试平台发送的待测CFD软件信息后,从数据库中下载并安装相应的待测CFD软件,需要指出的是,所述数据库包括但不限于为Oracle、SqlServer、DB2、PostgreSQL等。
步骤S22:接收所述测试平台发送的测试用例编号,并根据所述测试用例编号下载相应的测试用例,然后根据所述测试用例确定出测试脚本以及网格模型。
本实施例中,根据所述测试用例编号从所述数据库中下载相应的测试用例,然后根据所述测试用例确定出测试脚本以及网格模型。
步骤S23:将所述网格模型导入至所述待测CFD软件,并利用所述自动化测试工具执行所述测试脚本,然后产生测试结果,并将所述测试结果返回至所述测试平台。
本实施例中,将所述网格模型导入至所述待测CFD软件,并利用所述自动化测试工具执行所述测试脚本,然后产生测试结果,并将所述测试结果返回至所述测试平台。需要指出的是,在产生测试结果后,对所述测试结果进行分析,并输出测试报告。
综上可见,本申请通过测试节点接收所述测试平台发送的待测CFD软件信息后,并从数据库中下载并安装相应的待测CFD软件,然后接收所述测试平台发送的测试用例编号,并根据所述测试用例编号下载相应的测试用例,然后根据所述测试用例确定出测试脚本以及网格模型,进一步的,将所述网格模型导入至所述待测CFD软件,并利用所述自动化测试工具执行所述测试脚本,然后产生测试结果,并将所述测试结果返回至所述测试平台。如此一来,解决了CFD软件测试用例在多个测试节点上并行执行的难题,实现了CFD软件的分布式并行测试,降低了整个CFD软件系统测试的时间,有效的提高了测试效率。
图3为本申请公开的一种具体的CFD软件的分布式并行测试方法的流程图,参见图3所示:首先测试人员先将待测CFD软件、测试用例以及网格模型上传至测试平台,然后在每个测试节点上部署自动化测试工具,利用RMI通信机制,将测试用例动态的分配到不同测试节点上,并在不同测试节点上运行自动化测试工具,从而执行分配到节点上的测试用例,实现分布式并行测试的目的,具体的过程如下所示:(1)整合Spring+SpringMVC+Mybatis框架构建测试平台,该平台包括待测CFD软件的上传、安装,测试用例的上传、分发,测试结果的统计分析等功能模块;(2)编写基于RMI技术的服务端和客户端程序,在各测试节点上部署Java语言运行环境,运行客户端程序,在测试平台(服务端)运行服务端程序,将测试平台与各测试节点通过网络通信连接,形成分布式框架,如图4所示,图4中,服务端中的远程引用层以及传输层分别与若干个客户端的远程引用层以及传输层相连接,具体的,远程引用层之间虚拟连接,传输层之间网络连接;(3)在每个测试节点上部署自动化测试工具,形成分布式并行测试架构;(4)测试开始时,测试平台给各个测试节点发送被测软件信息,测试节点接收到测试信息后,从数据库下载待测软件安装包并自动安装;(5)测试平台将需要测试的测试用例编号放入有序队列,然后根据测试用例的编号顺序依次分配到不同测试节点上,由于执行测试用例需要一定的时间,为避免单个测试节点接收到多个测试用例并执行时发生冲突,每个测试节点每次只分配一个测试用例编号;(6)各测试节点获取到测试用例编号后,根据编号从数据库中下载对应的测试用例、测试脚本以及网格模型,并将网格模型导入待测CFD软件,然后利用自动化测试工具执行对应的测试脚本;(7)各测试节点执行测试脚本结束后,将测试结果返回至测试平台,测试平台接收到测试节点返回的测试结果后分配下一个需要执行的测试用例编号,重复步骤(6)、(7),直至队列中的测试用例被全部执行,如图5所示。(8)测试平台对测试结果进行汇总分析,并输出测试报告。
具体的,图5为测试用例分发的示意图,首先,根据测试用例编号向每一测试节点分发一个测试用例,测试节点执行测试用例中的测试脚本后,产生测试结果。示例性的,向第一个节点分配测试用例1,测试节点在执行完测试用例1后,产生测试结果1,以此类推。
相应的,本申请实施例还公开了一种CFD软件的分布式并行测试装置,应用于预先搭建的测试平台,所述测试平台通过远程方法调用技术与各测试节点构成分布式并行架构,所述各测试节点上预先部署自动化测试工具,参见图6所示,包括:
待测CFD软件信息发送模块11,用于向每一所述测试节点发送待测CFD软件信息,以便所述测试节点在接收到所述待测CFD软件信息后,下载并安装相应的待测CFD软件;
测试用例编号发送模块12,用于依次向每一所述测试节点分配测试用例编号,以便所述测试节点根据所述测试用例编号下载相应的测试用例,并根据所述测试用例确定出测试脚本以及网格模型,然后将所述网格模型导入至所述待测CFD软件,并利用所述自动化测试工具执行所述测试脚本;
测试结果接收模块13,用于接收所述测试节点在执行完测试脚本后生成的测试结果。
其中,关于上述各个模块更加具体的工作过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
可见,本申请公开一种CFD软件的分布式并行测试装置,应用于预先搭建的测试平台,所述测试平台通过远程方法调用技术与各测试节点构成分布式并行架构,所述各测试节点上预先部署自动化测试工具,包括:待测CFD软件信息发送模块,用于向每一所述测试节点发送待测CFD软件信息,以便所述测试节点在接收到所述待测CFD软件信息后,下载并安装相应的待测CFD软件;测试用例编号发送模块,用于依次向每一所述测试节点分配测试用例编号,以便所述测试节点根据所述测试用例编号下载相应的测试用例,并根据所述测试用例确定出测试脚本以及网格模型,然后将所述网格模型导入至所述待测CFD软件,并利用所述自动化测试工具执行所述测试脚本;测试结果接收模块,用于接收所述测试节点在执行完所述测试脚本后生成的测试结果。综上可见,本申请基于远程方法调用技术,通过构建分布式并行测试架构将多个测试节点进行连接,同时在多个测试节点上部署待测CFD软件和自动化测试工具,并将测试用例动态地分配到不同测试节点上,然后根据测试用例确定测试脚本及网格模型,将网格模型导入待测CFD软件,并利用自动化测试工具执行测试脚本,如此一来,本申请解决了CFD软件测试用例在多个测试节点上并行执行的难题,实现了CFD软件的分布式并行测试,降低了整个CFD软件系统测试的时间,有效的提高了测试效率。
进一步的,本申请实施例还提供了一种电子设备。图7是根据一示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本申请的使用范围的任何限制。
图7为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、显示屏23、输入输出接口24、通信接口25、电源26和通信总线27。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的CFD软件的分布式并行测试方法中的相关步骤。另外,本实施例中的电子设备20具体可以为电子计算机。
本实施例中,电源26用于为电子设备20上的各硬件设备提供工作电压;通信接口25能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口24,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括计算机程序221,存储方式可以是短暂存储或者永久存储。其中,计算机程序221除了包括能够用于完成前述任一实施例公开的由电子设备20执行的CFD软件的分布式并行测试方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
进一步的,本申请实施例还公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的CFD软件的分布式并行测试方法。
关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本申请书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本申请所提供的一种CFD软件的分布式并行测试方法、装置、设备、存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种CFD软件的分布式并行测试方法,其特征在于,应用于预先搭建的测试平台,所述测试平台通过远程方法调用技术与各测试节点构成分布式并行架构,所述各测试节点上预先部署自动化测试工具,包括:
向每一所述测试节点发送待测CFD软件信息,以便所述测试节点在接收到所述待测CFD软件信息后,下载并安装相应的待测CFD软件;
依次向每一所述测试节点分配测试用例编号,以便所述测试节点根据所述测试用例编号下载相应的测试用例,并根据所述测试用例确定出测试脚本以及网格模型,然后将所述网格模型导入至所述待测CFD软件,并利用所述自动化测试工具执行所述测试脚本;
接收所述测试节点在执行完所述测试脚本后生成的测试结果;
所述分布式并行架构的构建过程包括:编写基于远程方法调用技术的服务端程序和客户端程序;在各所述测试节点上部署Java语言运行环境,运行所述客户端程序,在所述测试平台上运行所述服务端程序;将所述测试平台与各所述测试节点通过网络通信连接,形成分布式并行架构;其中,所述测试平台中的远程引用层以及传输层分别与若干个所述测试节点的远程引用层以及传输层相连接,并且远程引用层之间采用虚拟连接,传输层之间采用网络连接。
2.根据权利要求1所述的CFD软件的分布式并行测试方法,其特征在于,所述依次向每一所述测试节点分配测试用例编号之前,还包括:
基于所有待测试的测试用例编号构建目标有序队列。
3.根据权利要求2所述的CFD软件的分布式并行测试方法,其特征在于,所述依次向每一所述测试节点分配测试用例编号,包括:
根据所述目标有序队列中所有所述待测试的测试用例编号的顺序,依次向每一所述测试节点分配一个测试用例编号。
4.根据权利要求3所述的CFD软件的分布式并行测试方法,其特征在于,还包括:
当接收到任意所述测试节点在执行完测试脚本后生成的测试结果,则根据所述目标有序队列,向所述测试节点分配一个新的测试用例编号。
5.一种CFD软件的分布式并行测试方法,其特征在于,应用于各测试节点,所述各测试节点上预先部署自动化测试工具,所述各测试节点通过远程方法调用技术与预先搭建的测试平台构成分布式并行架构,包括:
在接收到所述测试平台发送的待测CFD软件信息后,下载并安装相应的待测CFD软件;
接收所述测试平台发送的测试用例编号,并根据所述测试用例编号下载相应的测试用例,然后根据所述测试用例确定出测试脚本以及网格模型;
将所述网格模型导入至所述待测CFD软件,并利用所述自动化测试工具执行所述测试脚本,然后产生测试结果,并将所述测试结果返回至所述测试平台;
所述分布式并行架构的构建过程包括:编写基于远程方法调用技术的服务端程序和客户端程序;在各所述测试节点上部署Java语言运行环境,运行所述客户端程序,在所述测试平台上运行所述服务端程序;将所述测试平台与各所述测试节点通过网络通信连接,形成分布式并行架构;其中,所述测试平台中的远程引用层以及传输层分别与若干个所述测试节点的远程引用层以及传输层相连接,并且远程引用层之间采用虚拟连接,传输层之间采用网络连接。
6.根据权利要求5所述的CFD软件的分布式并行测试方法,其特征在于,所述利用所述自动化测试工具执行所述测试脚本,然后产生测试结果之后,还包括:
对所述测试结果进行分析,并输出测试报告。
7.根据权利要求5所述的CFD软件的分布式并行测试方法,其特征在于,所述在接收到所述测试平台发送的待测CFD软件信息后,下载并安装相应的待测CFD软件,包括:
在接收到所述测试平台发送的待测CFD软件信息后,从数据库中下载并安装相应的待测CFD软件;
相应的,所述根据所述测试用例编号下载相应的测试用例,然后根据所述测试用例确定出测试脚本以及网格模型,包括:
根据所述测试用例编号从所述数据库中下载相应的测试用例,然后根据所述测试用例确定出测试脚本以及网格模型。
8.一种CFD软件的分布式并行测试装置,其特征在于,应用于预先搭建的测试平台,所述测试平台通过远程方法调用技术与各测试节点构成分布式并行架构,所述各测试节点上预先部署自动化测试工具,包括:
待测CFD软件信息发送模块,用于向每一所述测试节点发送待测CFD软件信息,以便所述测试节点在接收到所述待测CFD软件信息后,下载并安装相应的待测CFD软件;
测试用例编号发送模块,用于依次向每一所述测试节点分配测试用例编号,以便所述测试节点根据所述测试用例编号下载相应的测试用例,并根据所述测试用例确定出测试脚本以及网格模型,然后将所述网格模型导入至所述待测CFD软件,并利用所述自动化测试工具执行所述测试脚本;
测试结果接收模块,用于接收所述测试节点在执行完测试脚本后生成的测试结果;
所述分布式并行架构的构建过程包括:编写基于远程方法调用技术的服务端程序和客户端程序;在各所述测试节点上部署Java语言运行环境,运行所述客户端程序,在所述测试平台上运行所述服务端程序;将所述测试平台与各所述测试节点通过网络通信连接,形成分布式并行架构;其中,所述测试平台中的远程引用层以及传输层分别与若干个所述测试节点的远程引用层以及传输层相连接,并且远程引用层之间采用虚拟连接,传输层之间采用网络连接。
9.一种电子设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至7任一项所述的CFD软件的分布式并行测试方法。
10.一种计算机可读存储介质,其特征在于,用于保存计算机程序;其中,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的CFD软件的分布式并行测试方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310046258.4A CN115794659B (zh) | 2023-01-31 | 2023-01-31 | 一种cfd软件的分布式并行测试方法、装置、设备及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310046258.4A CN115794659B (zh) | 2023-01-31 | 2023-01-31 | 一种cfd软件的分布式并行测试方法、装置、设备及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115794659A CN115794659A (zh) | 2023-03-14 |
CN115794659B true CN115794659B (zh) | 2023-05-26 |
Family
ID=85429230
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310046258.4A Active CN115794659B (zh) | 2023-01-31 | 2023-01-31 | 一种cfd软件的分布式并行测试方法、装置、设备及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115794659B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6898791B1 (en) * | 1998-04-21 | 2005-05-24 | California Institute Of Technology | Infospheres distributed object system |
CN103210708A (zh) * | 2010-09-17 | 2013-07-17 | 施耐德电气It公司 | 用于预测数据中心的多孔砖气流的系统和方法 |
CN113569504A (zh) * | 2021-09-02 | 2021-10-29 | 天津内燃机研究所(天津摩托车技术中心) | 航空发动机燃烧室蠕变疲劳寿命预测方法及预测系统 |
CN113918452A (zh) * | 2021-09-13 | 2022-01-11 | 北京计算机技术及应用研究所 | 一种多国产化平台下的工业软件兼容性测试方法 |
CN114491927A (zh) * | 2021-12-15 | 2022-05-13 | 水利部南京水利水文自动化研究所 | 城市生态环境气土水耦合模拟预报方法 |
CN114780138A (zh) * | 2022-06-17 | 2022-07-22 | 中国空气动力研究与发展中心计算空气动力研究所 | 流场模拟软件代码版本管理方法、装置和存储介质 |
CN115185851A (zh) * | 2022-07-24 | 2022-10-14 | 北京华大九天科技股份有限公司 | 测试单元版图的排序方法及装置、计算机存储介质、电子设备 |
-
2023
- 2023-01-31 CN CN202310046258.4A patent/CN115794659B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6898791B1 (en) * | 1998-04-21 | 2005-05-24 | California Institute Of Technology | Infospheres distributed object system |
CN103210708A (zh) * | 2010-09-17 | 2013-07-17 | 施耐德电气It公司 | 用于预测数据中心的多孔砖气流的系统和方法 |
CN113569504A (zh) * | 2021-09-02 | 2021-10-29 | 天津内燃机研究所(天津摩托车技术中心) | 航空发动机燃烧室蠕变疲劳寿命预测方法及预测系统 |
CN113918452A (zh) * | 2021-09-13 | 2022-01-11 | 北京计算机技术及应用研究所 | 一种多国产化平台下的工业软件兼容性测试方法 |
CN114491927A (zh) * | 2021-12-15 | 2022-05-13 | 水利部南京水利水文自动化研究所 | 城市生态环境气土水耦合模拟预报方法 |
CN114780138A (zh) * | 2022-06-17 | 2022-07-22 | 中国空气动力研究与发展中心计算空气动力研究所 | 流场模拟软件代码版本管理方法、装置和存储介质 |
CN115185851A (zh) * | 2022-07-24 | 2022-10-14 | 北京华大九天科技股份有限公司 | 测试单元版图的排序方法及装置、计算机存储介质、电子设备 |
Non-Patent Citations (4)
Title |
---|
NNW-GridStar: Interactive structured mesh generation software for aircrafts;Fengshun Lu等;《Advances in Engineering Software》;1-13 * |
国家数值风洞(NNW)软件自动化集成与测试平台设计与研发;何磊 等;《空气动力学学报》;1158-1164 * |
并行计算流体力学数值仿真平台设计与实现;王飞;杨树兴;;中北大学学报(自然科学版)(第02期);51-55 * |
航空发动机系统级仿真研究的回顾与展望;曹源 等;《航空动力学报》;562-571 * |
Also Published As
Publication number | Publication date |
---|---|
CN115794659A (zh) | 2023-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107818112B (zh) | 一种大数据分析作业系统及任务提交方法 | |
CN107590075B (zh) | 一种软件测试方法及装置 | |
De Farias et al. | COMFIT: A development environment for the Internet of Things | |
CN107612962B (zh) | 一种分布式仿真评估试验管理系统 | |
CN111708702A (zh) | 模拟测试方法、客户端、服务端、系统与可读存储介质 | |
CN110647332A (zh) | 基于容器云的软件部署方法和装置 | |
CN110855482A (zh) | 三维动态通信网络模拟仿真方法、系统及存储介质 | |
CN110502217B (zh) | 一种基于ros的机器人云平台设计方法 | |
CN109901985B (zh) | 分布式测试装置及方法、存储介质和电子设备 | |
CN113032963A (zh) | 一种Simulink模型仿真加速方法及装置 | |
Huang et al. | A simulation-based optimization approach for reliability-aware service composition in edge computing | |
CN110532044A (zh) | 一种大数据批处理方法、装置、电子设备及存储介质 | |
Aksakalli et al. | Systematic approach for generation of feasible deployment alternatives for microservices | |
CN111818194A (zh) | 基于域名的访问系统和方法 | |
Lin et al. | Modeling and simulation of spark streaming | |
CN100588197C (zh) | 一种网格模拟方法及其模拟器 | |
Sundas et al. | An introduction of CloudSim simulation tool for modelling and scheduling | |
CN105553732B (zh) | 一种分布式网络模拟方法及系统 | |
Chen et al. | Stresscloud: A tool for analysing performance and energy consumption of cloud applications | |
CN111966556A (zh) | 性能压测方法、装置及服务器和计算机可读存储介质 | |
CN112906206A (zh) | 数字孪生模型构建方法和装置 | |
CN113448678A (zh) | 应用信息生成方法、部署方法及装置、系统、存储介质 | |
CN112860251A (zh) | 一种网站前端构建的方法与系统 | |
Raith et al. | faas‐sim: A trace‐driven simulation framework for serverless edge computing platforms | |
CN115794659B (zh) | 一种cfd软件的分布式并行测试方法、装置、设备及介质 |
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 |