CN113918452A - 一种多国产化平台下的工业软件兼容性测试方法 - Google Patents
一种多国产化平台下的工业软件兼容性测试方法 Download PDFInfo
- Publication number
- CN113918452A CN113918452A CN202111070588.4A CN202111070588A CN113918452A CN 113918452 A CN113918452 A CN 113918452A CN 202111070588 A CN202111070588 A CN 202111070588A CN 113918452 A CN113918452 A CN 113918452A
- Authority
- CN
- China
- Prior art keywords
- test
- industrial software
- test case
- script
- testing
- 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
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 379
- 238000000034 method Methods 0.000 claims abstract description 37
- 238000009434 installation Methods 0.000 claims abstract description 17
- 238000013515 script Methods 0.000 claims description 73
- 238000001454 recorded image Methods 0.000 claims description 31
- 230000009471 action Effects 0.000 claims description 7
- 230000006870 function Effects 0.000 claims description 4
- 238000004422 calculation algorithm Methods 0.000 claims description 3
- 230000007246 mechanism Effects 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 6
- 238000004519 manufacturing process Methods 0.000 abstract description 5
- 230000000007 visual effect Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 4
- 230000004807 localization Effects 0.000 description 4
- 238000004880 explosion Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000013522 software testing Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3664—Environments for testing or debugging software
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3692—Test management for test results analysis
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)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及一种多国产化平台下的工业软件兼容性测试方法,属于测试领域。本发明构建了国产工业软件产品库和测试用例库;自动配置虚拟化计算节点和真实物理计算节点,向测试需求方提供可视化的图形界面测试环境集群;通过兼容性测试统一管控管理平台收集测试需求,从软件产品库匹配待测的软件安装包,匹配测试环境,向符合需求的虚拟节点、物理节点分发工业软件安装包,并控制节点完成工业软件的自动部署和安装;向测试节点分发与目标环境架构匹配的自动化测试工具和测试用例,并通过命令驱动自动化测试执行;节点执行测试用例的同时,可在管理平台查看测试用例的测试状态和测试结果并生成测试报告。本发明简化了测试流程和成本。
Description
技术领域
本发明属于测试领域,具体涉及一种多国产化平台下的工业软件兼容性测试方法。
背景技术
随着我国逐步建设完善的国产软硬件生态系统,工业软件作为软件类的一大类核心软件产品,逐步在填补空白。现阶段,已有的工业软件产品正在向国产化平台迁移适配,因此需要对国产各类芯片,操作系统产品组合同工业软件的兼容性开展测试,更好促进其长期的共生健康发展。
目前国产处理器与操作系统的厂商、型号、版本众多,组合爆炸,升级变化快,由于不同处理器和操作系统在底层实现上存在差异,工业软件厂商在研制工业软件产品时,需要对不同的环境组合进行定制化开发,导致厂商在对软件进行更新发布之前,需要对产品支持的组合逐一进行测试及确认。这就导致厂商或者第三方测试机构需要准备多类型的测试环境,并且在每种测试环境上执行重复性的测试工作,消耗巨大的人力物力。为了保证测试效率和充分性,减少测试成本,需要研究一种多国产化平台下的工业软件兼容性测试方法,向测试方提供大规模、批量式、自动化的测试验证环境。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是如何提供一种多国产化平台下的工业软件兼容性测试方法,以解决当前国产化处理器、操作系统种类多,组合爆炸的现状导致的国产工业软件需要支持的测试环境复杂多样、兼容性测试任务量大、重复率高的问题。
(二)技术方案
为了解决上述技术问题,本发明提出一种多国产化平台下的工业软件兼容性测试方法,该方法应用于包括兼容性测试管理平台和测试环境集群的系统,兼容性测试管理平台负责管控测试环境集群和自动化测试工具,测试环境集群由不同国产处理器和国产操作系统组合的虚拟化计算节点和真实物理计算节点集群组成;自动化测试工具由管理平台控制,负责测试用例的自动化执行和反馈;该方法包括如下步骤:
第一步,构建工业软件产品库;工业软件产品库存储工业软件的元数据信息用于索引和查询匹配,保存工业软件安装文件;
第二步,构建测试用例库,存储预先使用基于图像驱动的自动化测试工具编写的测试用例脚本;
第三步,兼容性测试管理平台收集测试需求方对工业软件的兼容性测试需求,分配测试环境集群,测试环境集群中包括虚拟化计算节点和物理计算节点;
第四步,兼容性测试管理平台根据待测软件信息同工业软件产品库元数据匹配;从测试用例库匹配测试用例集合,向测试环境集群分发工业软件安装包、自动化测试工具和测试用例集合,控制测试环境集群中的测试节点完成工业软件和自动化测试工具的部署;
第五步,兼容性测试管理平台向测试人员展示测试用例信息和平台预存的可执行脚本信息,测试人员通过平台向测试节点发送执行测试用例命令,测试节点自动执行测试用例或脚本;测试节点执行测试用例的同时,能在管理平台查看测试用例的测试状态和测试结果并生成测试报告。
进一步地,所述工业软件的元数据信息包括工业软件名称、厂商、版本和运行环境。
进一步地,所述第一步中,对于一款工业软件,针对不同的处理器和操作系统组合提供不同类型的安装文件。
进一步地,测试用例脚本使用基于图像识别的自动化测试工具编写,由对工业软件操作截取的局部图像作为参数的命令组成;脚本以python语言实现,形式为:操作命令{“记录的图像文件名”}。
进一步地,操作命令包括click、find、doubleClick,分别表示单击、查找、双击记录的图像。
进一步地,测试用例脚本通过记录的图像在当前屏幕显示的工业软件图形界面背景图像中模糊匹配,图像匹配方法使用归一化积相关算法,利用记录的图像与背景图像的灰度,计算记录的图像与屏幕当前显示的工业软件图形界面二者之间的匹配程度;基本思想是将记录的图像在背景图像上滑动逐一对比,通过统计的基本方法进行匹配:
其中,M,N表示记录图像X、Y轴方向的像素数,i,j表示记录图像在搜索图像上的坐标偏移;Si,j(s,t)表示(i,j)处背景图像在(s,t)点的灰度值,E(Si,j)、 E(T)分别表示(i,j)处背景图像、记录图像的平均灰度值,记录图像确定则E(T)平均灰度值确定,T(s,t)代表记录图像每个像素点的灰度值;R(i,j)表示两幅图像的相关程度;通过设定阈值,相关程度高于阈值判定为查找到匹配的图像,再通过事件驱动,模拟鼠标点击、键盘输入动作模拟测试人员动作驱动软件运行。
进一步地,所述第三步中测试环境集群的构建方法如下:
测试环境集群分为物理主机集群和虚拟主机集群,物理主机集群安装各种国产操作系统,虚拟主机集群是在国产虚拟化平台上分配的龙芯、飞腾、申威虚拟机,在虚拟机上安装各种国产操作系统;
在测试环境集群上部署远程控制组件;所述远程控制组件能够监控管理平台发送的控制命令,并对控制命令进行解析、执行,完成工业软件的部署;远程控制组件还提供远程访问功能,能够通过VNC机制访问系统操作界面;
将测试环境集群由管理平台统一管理,测试用户通过管理平台申请资源,由管理平台完成测试环境的快速选择和工业软件的自动化部署。
进一步地,所述第五步测试节点自动执行测试用例或脚本具体包括:测试节点接到命令后,判断测试环境是否符合测试用例的运行要求,包括判断测试环境的屏幕分辨率和测试用例所需的屏幕分辨率是否相同;判断测试环境下目标软件图形的像素长宽与测试用例初始录制时的图形像素长宽是否相同,满足要求后自动执行。
进一步地,所述第五步测试节点自动执行测试用例或脚本具体包括:可执行脚本信息通过脚本描述-脚本名称的键值对的形式保存在配置文件中,自动化测试工具接收脚本描述信息,通过配置文件匹配脚本名称,自动执行脚本。
进一步地,所述第五步测试节点自动执行测试用例或脚本具体包括如下步骤:
步骤1、接收管理平台发送的执行命令,若为执行脚本命令,则执行步骤2,若为执行测试用例命令,则执行步骤3;
步骤2、解析命令,获取脚本描述,读取可执行脚本配置文件,匹配该脚本描述的键值对,获取可执行脚本名称,执行脚本文件;
步骤3、解析命令,获取待执行的测试用例名称,在测试用例集文件夹内查找测试用例,如果测试用例存在,执行步骤4,否则向管理平台反馈测试用例不存在;
步骤4、读取测试用例的配置文件,获取执行该测试用例需要的屏幕分辨率、应用程序图形的长、宽像素数,执行命令查看逻辑节点的屏幕分辨率和当前应用程序图像的长、宽像素数,将配置文件内容与逻辑节点获取的信息进行比对,若比对结果相同,则执行测试用例,否则执行命令修改逻辑节点的屏幕分辨率和应用程序图像的长、宽像素数,再基于测试脚本执行测试用例。
(三)有益效果
本发明提出一种多国产化平台下的工业软件兼容性测试方法,本发明具有如下优点:
可对国产工业软件兼容性测试的全生命周期进行自动化管理,提高测试的效率和充分性;
搭建了包含国产工业软件测试环境的逻辑节点集群,为国产工业软件按需自动、快速分配测试环境;
实现了工业软件的自动分发部署和安装;
对测试执行过程进行全面监控,包括用例执行的正常、异常、错误状态。
附图说明
图1为图像匹配示意图;
图2为虚拟化、物理测试节点集群示意图;
图3为逻辑节点集群搭建示意图;
图4为自动化测试流程示意图。
具体实施方式
为使本发明的目的、内容和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
本发明属于测试技术领域,主要针对当前国产化处理器、操作系统种类多,组合爆炸的现状导致的国产工业软件需要支持的测试环境复杂多样、兼容性测试任务量大、重复率高的问题,给出了一种多国产化平台下的工业软件兼容性测试方法。
本发明给出了一种多国产化平台下的工业软件兼容性测试方法,属于测试技术领域。该方法构建了国产工业软件产品库和测试用例库;自动配置由不同国产处理器和国产操作系统组合的虚拟化计算节点和真实物理计算节点,向测试需求方提供可视化的图形界面测试环境集群;通过兼容性测试统一管控管理平台收集测试需求,从软件产品库匹配待测的软件安装包,匹配测试环境,向符合需求的虚拟节点、物理节点分发工业软件安装包,并控制节点完成工业软件的自动部署和安装;向测试节点分发与目标环境架构匹配的自动化测试工具和测试用例,并通过命令驱动自动化测试执行;节点执行测试用例的同时,可在管理平台查看测试用例的测试状态和测试结果并生成测试报告。本发明为国产工业软件与多国产化环境的兼容性测试提供从测试申请到环境搭建,再到执行测试、生成测试报告的全兼容性测试生命周期的管理,完成一次用例编写,多平台自动执行,简化了测试流程和成本。本方案可以推广到其他类型软件的测试领域。
本发明提出了一种多国产化平台下的工业软件兼容性测试方法,设计合理,解决当前国产工业软件测试环境复杂多样、测试任务量大、重复率高的问题。
为实现上述目的,本发明采用如下技术方案:
一种多国产化平台下的工业软件兼容性测试方法,该方法应用于包括兼容性测试管理平台和测试环境集群的系统,兼容性测试管理平台负责管控测试环境集群和自动化测试工具。兼容性测试管理平台主要收集测试需求方的兼容性测试需求,分配测试环境,控制测试环境完成工业软件和自动化测试工具的分发部署;测试环境集群由不同国产处理器和国产操作系统组合的虚拟化计算节点和真实物理计算节点集群组成,为兼容性测试提供环境支撑和可视化的图形界面;自动化测试工具由管理平台控制,负责测试用例的自动化执行和反馈。
本发明的一种多国产化平台下的工业软件兼容性测试方法,包括如下步骤:
第一步构建工业软件产品库
对于一款工业软件,针对不同的处理器和操作系统组合提供不同类型的安装包。工业软件产品库主要存储工业软件的元数据信息(工业软件名称、厂商、版本、运行环境等信息)用于索引和查询匹配,保存工业软件安装文件。
第二步构建工业软件测试用例库
测试用例产品库用于存储测试人员针对待测工业软件设计的自动化测试脚本,同时存储测试用例的详细信息。
测试用例脚本使用基于图像识别的自动化测试工具编写,由对工业软件操作截取的局部图像作为参数的命令组成。脚本以python语言实现,形式如:
操作命令(“记录的图像文件名”);
命令包括click(“记录的图像文件名”)、find(“记录的图像文件名”)、doubleClick(“记录的图像文件名”)等,分别表示单击、查找、双击记录的图像。
其中通过记录的图像在当前屏幕显示的工业软件图形界面背景图像中模糊匹配,图像匹配方法使用归一化积相关算法(Normalized Cross Correlation, NCC算法),利用记录的图像与背景图像的灰度,计算记录的图像与屏幕当前显示的工业软件图形界面二者之间的匹配程度。基本思想是将记录的图像在背景图像上滑动逐一对比,通过统计的基本方法进行匹配,比如方差检验,相关性检验等方法来寻找最佳匹配。
其中,M,N表示记录图像X、Y轴方向的像素数,i,j表示记录图像在搜索图像上的坐标偏移。Si,j(s,t)表示(i,j)处背景图像在(s,t)点的灰度值,E(Si,j)、 E(T)分别表示(i,j)处背景图像、记录图像的平均灰度值,记录图像确定则E(T)平均灰度值确定,T(s,t)代表记录图像每个像素点的灰度值。R(i,j)表示两幅图像的相关程度。具体见图1所示:
通过设定阈值,高于阈值可判定为查找到匹配的图像,再通过事件驱动,模拟鼠标点击、键盘等输入动作模拟测试人员动作驱动软件运行。
自动化测试工具为测试人员提供测试用例编写框架,包括测试执行步骤,测试结果判断内容,测试异常处理等。
第三步自动按需分配虚拟化、物理测试节点集群
兼容性测试管理平台收集工业软件的测试需求,为测试人员分配测试环境集群,包括不同国产操作系统和国产处理器组合的虚拟化计算节点和真实物理计算节点构成的测试环境。
第四步分发部署工业软件和自动化测试工具
兼容性测试管理平台在工业软件产品库中匹配与测试环境兼容的待测软件安装包,自动生成安装脚本;从测试用例库匹配待测软件的测试用例集,分发到测试环境,同时控制测试节点执行自动化安装脚本,完成工业软件和自动化测试工具的部署。
第五步执行自动化测试
测试人员可通过管理平台界面查看测试用例库和可执行脚本信息,选择测试用例或可执行脚本向指定逻辑节点发送自动化测试命令,逻辑节点接到命令后,判断测试环境是否符合测试用例的运行要求,包括:判断测试环境的屏幕分辨率和测试用例所需的屏幕分辨率是否相同;判断测试环境下目标软件图形的像素长宽与测试用例初始录制时的图形像素长宽是否相同,满足要求后自动执行,并向管理平台反馈测试状态和测试结果。
可执行脚本信息通过键值对(脚本描述-脚本名称)的形式保存在配置文件中,自动化测试工具接收脚本描述信息,通过配置文件匹配脚本名称,自动执行脚本。测试人员可编写可执行脚本并在配置文件中添加可执行脚本描述,兼容性测试管理平台可实时更新可执行脚本信息。
实施例1:
一种多国产化平台下的工业软件兼容性测试方法的具体实施步骤为:
第一步构建工业软件产品库
工业软件产品库属于兼容性管理平台的一部分,用于保存工业软件安装文件以及其元数据信息,由于国产工业软件类型较广、厂商较多、版本迭代速度快,并且同一款工业软件针对不同的操作系统+CPU组合需要提供不同的安装包,因此要唯一定位一款工业软件安装包,需要提供工业软件的类型、厂商、版本和安装环境组合。工业软件产品库为测试人员提供工业软件上传功能,测试人员填写工业软件名称、厂商、版本,选择安装包支持的操作系统类型和CPU类型后完成工业软件向产品库的上传,之后由工业软件产品库进行工业软件信息的维护和匹配。
第二步构建工业软件测试用例库
测试用例产品库属于兼容性管理平台的一部分,保存某种平台下通过自动化测试工具录制的测试用例文件以及详细信息,包括该测试用例针对的工业软件名称、测试项名称、测试项标识、测试项说明、测试用例名称、测试用例标识、测试用例说明、需要的屏幕分辨率、目标软件图形像素大小、支持的操作系统类型、支持的CPU类型、最后一次的测试结果。
第三步自动按需分配虚拟化、物理测试节点集群
物理主机集群和虚拟主机集群统称为逻辑节点集群,作为工业软件测试需要的环境集合,由管理平台统一管理,可快速提供满足测试人员需求的测试环境。其中虚拟主机集群可用于开展功能兼容性测试,物理主机集群可用于开展性能兼容性测试。
逻辑节点集群或测试环境集群的搭建的流程如图2,具体描述如下:
1逻辑节点集群分为物理主机集群和虚拟主机集群,物理主机集群安装各种国产操作系统,虚拟主机集群是在国产虚拟化平台上分配的龙芯、飞腾、申威虚拟机,在虚拟机上安装各种国产操作系统;
2在逻辑节点集群上部署远程控制组件。所述远程控制组件能够监控管理平台发送的控制命令,并对控制命令进行解析、执行,完成工业软件的部署;远程控制组件还提供远程访问功能,能够通过VNC机制访问系统操作界面;
3将逻辑节点集群由管理平台统一管理,测试用户可通过管理平台申请资源,由管理平台完成测试环境的快速选择和工业软件的自动化部署。
第四步分发部署工业软件和自动化测试工具
管理平台根据测试人员提交的测试需求中的工业软件类型、厂商、版本和操作系统类型+CPU类型从工业软件产品库匹配工业软件安装文件,根据安装文件类型生成安装脚本;根据软件名称从测试用例库匹配待测软件的测试用例集合,向分配的逻辑节点发送部署命令。逻辑节点接收到命令后,从工业软件产品库下载安装文件,执行安装脚本;从测试用例库下载自动化测试工具和测试用例集合,完成工业软件和自动化测试工具的部署安装。
第五步执行自动化测试
管理平台为测试人员提供测试用例查看页面,测试人员可通过该页面选择测试用例或可执行脚本向逻辑节点的自动化测试工具发送测试命令。自动化测试工具接收管理平台发送的执行命令后,判断逻辑节点是否符合执行条件并执行满足条件的测试用例。
自动化测试流程如图3,具体描述如下:
1接收管理平台发送的执行命令,若为执行脚本命令,则执行步骤2,若为执行测试用例命令,则执行步骤3;
2解析命令,获取脚本描述,读取可执行脚本配置文件,匹配该脚本描述的键值对,获取可执行脚本名称,执行脚本文件;
3解析命令,获取待执行的测试用例名称,在测试用例集文件夹内查找测试用例,如果测试用例存在,执行步骤4,否则向管理平台反馈测试用例不存在;
4读取测试用例的配置文件,获取执行该测试用例需要的屏幕分辨率、应用程序图形的长、宽像素数,执行命令查看逻辑节点的屏幕分辨率和当前应用程序图像的长、宽像素数,将配置文件内容与逻辑节点获取的信息进行比对,若比对结果相同,则执行测试用例,否则执行命令修改逻辑节点的屏幕分辨率和应用程序图像的长、宽像素数,再基于测试脚本执行测试用例。
第五步查看测试结果和测试报告
测试用例执行结束后,自动化测试工具根据测试用例执行情况向管理平台反馈测试结果。测试结果分为以下几个类型:
执行成功:测试用例执行完成且运行结果符合判断条件;
执行失败:测试用例执行完成但是运行结果不符合判断条件;
执行异常:测试用例执行过程中由于某种异常被中止。
测试人员可在管理平台查看测试用例的测试结果并下载测试报告。
实施例2:
一种多国产化平台下的工业软件兼容性测试方法,其特征在于采用虚拟计算资源和物理计算资源融合的统一平台管控形式,提供自动化的兼容性测试执行环境。如图1所示:工业软件兼容性测试管理平台由平台管控软件和国产化服务器构成,测试管理平台可以将计算资源虚拟化,可以接入物理计算资源形成统一逻辑计算资源节点,向测试人员提供所需测试环境,并向测试环境部署安装工业软件和自动化测试用例执行。本发明包括如下步骤:
第一步,构建工业软件产品库存储工业软件,产品库以工业软件的元数据(工业软件名称、厂商、版本、运行环境等信息)索引和匹配信息。
第二步,构建测试用例库,存储预先使用基于图像驱动的自动化测试工具编写的测试用例脚本;
第三步,兼容性测试管理平台收集测试需求方对工业软件的兼容性测试需求,分配测试环境(国产处理器+操作系统),测试环境中包括虚拟化计算节点和物理计算节点。
第四步,兼容性测试管理平台根据待测软件信息同工业软件产品库元数据匹配;从测试用例库匹配测试用例集合,向测试环境分发工业软件安装包、自动化测试工具和测试用例集合,控制测试环境中的测试节点完成工业软件和自动化测试工具的部署;
第五步,兼容性测试管理平台向测试人员展示测试用例信息和平台预存的可执行脚本信息,测试人员通过平台向测试节点发送执行测试用例命令,测试节点自动执行测试用例或脚本;测试节点执行测试用例的同时,可在管理平台查看测试用例的测试状态和测试结果并生成测试报告。
本发明具有如下特点:
可对国产工业软件兼容性测试的全生命周期进行自动化管理,提高测试的效率和充分性;
搭建了包含国产工业软件测试环境的逻辑节点集群,为国产工业软件按需自动、快速分配测试环境;
实现了工业软件的自动分发部署和安装;
对测试执行过程进行全面监控,包括用例执行的正常、异常、错误状态。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。
Claims (10)
1.一种多国产化平台下的工业软件兼容性测试方法,其特征在于,该方法应用于包括兼容性测试管理平台和测试环境集群的系统,兼容性测试管理平台负责管控测试环境集群和自动化测试工具,测试环境集群由不同国产处理器和国产操作系统组合的虚拟化计算节点和真实物理计算节点集群组成;自动化测试工具由管理平台控制,负责测试用例的自动化执行和反馈;该方法包括如下步骤:
第一步,构建工业软件产品库;工业软件产品库存储工业软件的元数据信息用于索引和查询匹配,保存工业软件安装文件;
第二步,构建测试用例库,存储预先使用基于图像驱动的自动化测试工具编写的测试用例脚本;
第三步,兼容性测试管理平台收集测试需求方对工业软件的兼容性测试需求,分配测试环境集群,测试环境集群中包括虚拟化计算节点和物理计算节点;
第四步,兼容性测试管理平台根据待测软件信息同工业软件产品库元数据匹配;从测试用例库匹配测试用例集合,向测试环境集群分发工业软件安装包、自动化测试工具和测试用例集合,控制测试环境集群中的测试节点完成工业软件和自动化测试工具的部署;
第五步,兼容性测试管理平台向测试人员展示测试用例信息和平台预存的可执行脚本信息,测试人员通过平台向测试节点发送执行测试用例命令,测试节点自动执行测试用例或脚本;测试节点执行测试用例的同时,能在管理平台查看测试用例的测试状态和测试结果并生成测试报告。
2.如权利要求1所述的多国产化平台下的工业软件兼容性测试方法,其特征在于,所述工业软件的元数据信息包括工业软件名称、厂商、版本和运行环境。
3.如权利要求1所述的多国产化平台下的工业软件兼容性测试方法,其特征在于,所述第一步中,对于一款工业软件,针对不同的处理器和操作系统组合提供不同类型的安装文件。
4.如权利要求1所述的多国产化平台下的工业软件兼容性测试方法,其特征在于,测试用例脚本使用基于图像识别的自动化测试工具编写,由对工业软件操作截取的局部图像作为参数的命令组成;脚本以python语言实现,形式为:操作命令{“记录的图像文件名”}。
5.如权利要求4所述的多国产化平台下的工业软件兼容性测试方法,其特征在于,操作命令包括click、find、doubleClick,分别表示单击、查找、双击记录的图像。
6.如权利要求1-5任一项所述的多国产化平台下的工业软件兼容性测试方法,其特征在于,测试用例脚本通过记录的图像在当前屏幕显示的工业软件图形界面背景图像中模糊匹配,图像匹配方法使用归一化积相关算法,利用记录的图像与背景图像的灰度,计算记录的图像与屏幕当前显示的工业软件图形界面二者之间的匹配程度;基本思想是将记录的图像在背景图像上滑动逐一对比,通过统计的基本方法进行匹配:
其中,M,N表示记录图像X、Y轴方向的像素数,i,j表示记录图像在搜索图像上的坐标偏移;Si,j(s,t)表示(i,j)处背景图像在(s,t)点的灰度值,E(Si,j)、E(T)分别表示(i,j)处背景图像、记录图像的平均灰度值,记录图像确定则E(T)平均灰度值确定,T(s,t)代表记录图像每个像素点的灰度值;R(i,j)表示两幅图像的相关程度;通过设定阈值,相关程度高于阈值判定为查找到匹配的图像,再通过事件驱动,模拟鼠标点击、键盘输入动作模拟测试人员动作驱动软件运行。
7.如权利要求1所述的多国产化平台下的工业软件兼容性测试方法,其特征在于,所述第三步中测试环境集群的构建方法如下:
测试环境集群分为物理主机集群和虚拟主机集群,物理主机集群安装各种国产操作系统,虚拟主机集群是在国产虚拟化平台上分配的龙芯、飞腾、申威虚拟机,在虚拟机上安装各种国产操作系统;
在测试环境集群上部署远程控制组件;所述远程控制组件能够监控管理平台发送的控制命令,并对控制命令进行解析、执行,完成工业软件的部署;远程控制组件还提供远程访问功能,能够通过VNC机制访问系统操作界面;
将测试环境集群由管理平台统一管理,测试用户通过管理平台申请资源,由管理平台完成测试环境的快速选择和工业软件的自动化部署。
8.如权利要求1所述的多国产化平台下的工业软件兼容性测试方法,其特征在于,所述第五步测试节点自动执行测试用例或脚本具体包括:测试节点接到命令后,判断测试环境是否符合测试用例的运行要求,包括判断测试环境的屏幕分辨率和测试用例所需的屏幕分辨率是否相同;判断测试环境下目标软件图形的像素长宽与测试用例初始录制时的图形像素长宽是否相同,满足要求后自动执行。
9.如权利要求1或8所述的多国产化平台下的工业软件兼容性测试方法,其特征在于,所述第五步测试节点自动执行测试用例或脚本具体包括:可执行脚本信息通过脚本描述-脚本名称的键值对的形式保存在配置文件中,自动化测试工具接收脚本描述信息,通过配置文件匹配脚本名称,自动执行脚本。
10.如权利要求1或8所述的多国产化平台下的工业软件兼容性测试方法,其特征在于,所述第五步测试节点自动执行测试用例或脚本具体包括如下步骤:
步骤1、接收管理平台发送的执行命令,若为执行脚本命令,则执行步骤2,若为执行测试用例命令,则执行步骤3;
步骤2、解析命令,获取脚本描述,读取可执行脚本配置文件,匹配该脚本描述的键值对,获取可执行脚本名称,执行脚本文件;
步骤3、解析命令,获取待执行的测试用例名称,在测试用例集文件夹内查找测试用例,如果测试用例存在,执行步骤4,否则向管理平台反馈测试用例不存在;
步骤4、读取测试用例的配置文件,获取执行该测试用例需要的屏幕分辨率、应用程序图形的长、宽像素数,执行命令查看逻辑节点的屏幕分辨率和当前应用程序图像的长、宽像素数,将配置文件内容与逻辑节点获取的信息进行比对,若比对结果相同,则执行测试用例,否则执行命令修改逻辑节点的屏幕分辨率和应用程序图像的长、宽像素数,再基于测试脚本执行测试用例。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111070588.4A CN113918452B (zh) | 2021-09-13 | 2021-09-13 | 一种多国产化平台下的工业软件兼容性测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111070588.4A CN113918452B (zh) | 2021-09-13 | 2021-09-13 | 一种多国产化平台下的工业软件兼容性测试方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113918452A true CN113918452A (zh) | 2022-01-11 |
CN113918452B CN113918452B (zh) | 2023-10-31 |
Family
ID=79234913
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111070588.4A Active CN113918452B (zh) | 2021-09-13 | 2021-09-13 | 一种多国产化平台下的工业软件兼容性测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113918452B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115794659A (zh) * | 2023-01-31 | 2023-03-14 | 中国空气动力研究与发展中心计算空气动力研究所 | 一种cfd软件的分布式并行测试方法、装置、设备及介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6662312B1 (en) * | 2000-06-30 | 2003-12-09 | Qwest Communications International Inc. | Software-testing automation system |
US20080320071A1 (en) * | 2007-06-21 | 2008-12-25 | International Business Machines Corporation | Method, apparatus and program product for creating a test framework for testing operating system components in a cluster system |
US20120054551A1 (en) * | 2010-08-30 | 2012-03-01 | Yu Gao | System including a vendor computer system for testing software products in a cloud network |
CN106126562A (zh) * | 2016-06-15 | 2016-11-16 | 广东欧珀移动通信有限公司 | 一种弹窗拦截方法及终端 |
CN107133175A (zh) * | 2017-05-04 | 2017-09-05 | 郑州云海信息技术有限公司 | 一种基于云计算的软件测试平台 |
CN107608880A (zh) * | 2017-08-24 | 2018-01-19 | 郑州云海信息技术有限公司 | 一种基于数据驱动用于虚拟化平台的自动化测试方法 |
CN109446069A (zh) * | 2018-09-26 | 2019-03-08 | 平安普惠企业管理有限公司 | 兼容性测试方法、装置、计算机设备和介质 |
CN111176964A (zh) * | 2019-12-13 | 2020-05-19 | 苏州浪潮智能科技有限公司 | 一种虚拟化平台硬件兼容性测试方法 |
CN111190823A (zh) * | 2019-12-26 | 2020-05-22 | 平安国际智慧城市科技股份有限公司 | Ui自动化测试方法、电子装置及计算机可读存储介质 |
CN111966575A (zh) * | 2020-05-19 | 2020-11-20 | 中国航空无线电电子研究所 | 一种航空机载显示软件的图形自动化测试方法 |
-
2021
- 2021-09-13 CN CN202111070588.4A patent/CN113918452B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6662312B1 (en) * | 2000-06-30 | 2003-12-09 | Qwest Communications International Inc. | Software-testing automation system |
US20080320071A1 (en) * | 2007-06-21 | 2008-12-25 | International Business Machines Corporation | Method, apparatus and program product for creating a test framework for testing operating system components in a cluster system |
US20120054551A1 (en) * | 2010-08-30 | 2012-03-01 | Yu Gao | System including a vendor computer system for testing software products in a cloud network |
CN106126562A (zh) * | 2016-06-15 | 2016-11-16 | 广东欧珀移动通信有限公司 | 一种弹窗拦截方法及终端 |
CN107133175A (zh) * | 2017-05-04 | 2017-09-05 | 郑州云海信息技术有限公司 | 一种基于云计算的软件测试平台 |
CN107608880A (zh) * | 2017-08-24 | 2018-01-19 | 郑州云海信息技术有限公司 | 一种基于数据驱动用于虚拟化平台的自动化测试方法 |
CN109446069A (zh) * | 2018-09-26 | 2019-03-08 | 平安普惠企业管理有限公司 | 兼容性测试方法、装置、计算机设备和介质 |
CN111176964A (zh) * | 2019-12-13 | 2020-05-19 | 苏州浪潮智能科技有限公司 | 一种虚拟化平台硬件兼容性测试方法 |
CN111190823A (zh) * | 2019-12-26 | 2020-05-22 | 平安国际智慧城市科技股份有限公司 | Ui自动化测试方法、电子装置及计算机可读存储介质 |
CN111966575A (zh) * | 2020-05-19 | 2020-11-20 | 中国航空无线电电子研究所 | 一种航空机载显示软件的图形自动化测试方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115794659A (zh) * | 2023-01-31 | 2023-03-14 | 中国空气动力研究与发展中心计算空气动力研究所 | 一种cfd软件的分布式并行测试方法、装置、设备及介质 |
CN115794659B (zh) * | 2023-01-31 | 2023-05-26 | 中国空气动力研究与发展中心计算空气动力研究所 | 一种cfd软件的分布式并行测试方法、装置、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113918452B (zh) | 2023-10-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10055338B2 (en) | Completing functional testing | |
US11144306B2 (en) | Scheduling upgrades in distributed computing systems | |
US10210074B1 (en) | Performance testing platform that enables reuse of automation scripts and performance testing scalability | |
US8166448B2 (en) | Rapid development of distributed web service | |
US7165189B1 (en) | Distributed test framework for clustered systems | |
US20110296398A1 (en) | Systems and methods for determining when to update a package manager software | |
US20080320071A1 (en) | Method, apparatus and program product for creating a test framework for testing operating system components in a cluster system | |
WO2017074414A1 (en) | Software kit release management | |
WO2015019074A1 (en) | Automated application test system | |
EP1654670A4 (en) | PROCESSING A COMPONENT-BASED SOFTWARE PRODUCT | |
US11556409B2 (en) | Firmware failure reason prediction using machine learning techniques | |
US11442765B1 (en) | Identifying dependencies for processes for automated containerization | |
CN102880482A (zh) | 一种主机批量控制虚拟机中软件自动升级的系统及技术方法 | |
US11842188B2 (en) | Continuous integration and deployment pipeline selection based on dynamic mapping | |
US20110307868A1 (en) | Scripting application with role identification | |
US20160110281A1 (en) | System and method for debugging firmware/software by generating trace data | |
US11550553B2 (en) | Usage-based software library decomposition | |
CN111045927A (zh) | 性能测试评估方法、装置、计算机设备及可读存储介质 | |
US11487878B1 (en) | Identifying cooperating processes for automated containerization | |
US7689587B1 (en) | Autorep process to create repository according to seed data and at least one new schema | |
CN113918452B (zh) | 一种多国产化平台下的工业软件兼容性测试方法 | |
US10394529B2 (en) | Development platform of mobile native applications | |
US11720348B2 (en) | Computing node allocation based on build process specifications in continuous integration environments | |
US11275571B2 (en) | Unified installer | |
US20060123415A1 (en) | System for distributing middleware applications on information handling system |
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 |