一种工业机器人自动化测试系统和方法与流程

文档序号:20838477发布日期:2020-05-22 17:10阅读:222来源:国知局
一种工业机器人自动化测试系统和方法与流程

本发明涉及一种工业机器人自动化测试系统和方法,特别是涉及一种应用网络通信、自验证、微服务、反馈环节的工业机器人自动化测试系统和方法。



背景技术:

目前针对工业机器人系统的主流测试方法是多环节保证,软件版本发布前由研发自侧及软件测试人员测试,软件版本发布后,软件测试人员、调试人员、售后人员各环节独立验证自身关心功能。通过这种人工交互测试方式对整个机器人软件系统进行功能测试,已在整体上测试机器人软件系统的功能及稳定性。

然而这种测试方法虽然测试过程简单,可以对机器人软件系统的功能进行测试,特别是进行用户常用功能的测试。但存在以下缺点:1.全面测试耗时时间长,人工测试效率低下,整个测试过程将耗费测试人员大量的精力,无法适应当前敏捷开发,快速迭代,快速发布功能需求。2.测试门槛高,若要进行全面测试,测试人员需要掌握多门技术栈,或者需要多人配合才能完成测试。例如机器人专用指令编程、plc编程、485通讯编程、lua编程、上位机二次开发包编程都有涉及,普通测试人员无法全部掌握。3.测试覆盖不全面,人工测试时,只会关心自身角色功能,没有全局意识,也无法做到通过观察到当前页面结果,确定是否对其它变量产生影响。会出现测试项遗漏,由于人为原因或文档管理原因,出现测试遗漏或将未测试项设置为通过项。4.编写测试报告,需要花费大量时间,即使有测试报告模板,边执行测试用例,边编写测试报告,耗时很长,同时,多人描述测试结果时,因描述方式不同,汇报时会出现理解偏差,增加测试报告返工时间。



技术实现要素:

鉴于上述存在的问题,本发明的目的在于提供一种工业机器人自动化测试系统,该工业机器人自动化测试系统面向测试人员友好、操作简单,可对工业机器人软件系统进行全面测试,并能自动生成测试报告。从而实现了测试过程的自动化,提高了测试效率、方便了问题跟踪。

为了实现上述目的,本发明提供以下技术方案:

一种工业机器人自动化测试系统,该系统包括以下服务模块:

触发服务模块,通过引入持续集成服务jenkins,用于定时或手工触发测试执行服务;

执行服务模块,用于执行测试用例;

存储服务模块,用于存储测试用例及测试标准;

反馈服务模块,用于反馈测试执行服务结果;

报告服务模块,用于根据测试执行服务数据生成测试报告,通过nginxweb服务器搭建文件服务器,保存测试报告;

通知服务模块,用于将测试报告以邮件方式发送给测试人员和相关研发人员。

进一步的,各服务模块间执行如下步骤:

步骤s1:由持续集成服务jenkins和人工调用触发服务模块,触发执行服务模块;

步骤s2:执行服务模块拉取存储服务模块内测试用例数据及用例判断数据;

步骤s3:执行服务模块执行测试用例;

步骤s4:执行服务模块触发反馈服务模块执行;

步骤s5:执行服务模块拉取反馈服务模块的结果数据,并于用例判断数据对比,生成测试结果;

步骤s6:执行服务结束后,推送测试结果到报告服务模块;

步骤s7:报告服务模块根据测试结果生成测试报告;

步骤s8:通知服务模块将测试报告发送给测试人员及相关研发人员。

进一步的,基于本发明所述的系统实施的一种多机并发、网络通讯的测试方法,既可以进行工业机器人测试用例分类,又可做到多用例同时执行,缩短测试周期,特定于工业机器人测试场景,安全起见,运动相关测试用例必须有人员触发并在场情况才能执行;非运动相关测试完全可做到无人干预,测试服务器与被测系统之间通过网络的方式连接在一起,通过ip地址进行被测系统的区分,包括以下步骤:

步骤s1:人工或持续集成服务jenkins触发测试用例执行;

步骤s2:测试服务器根据本次测试内容,向多个被测系统模块发送不同测试指令;

步骤s3:被测系统并发执行测试指令;

步骤s4:反馈系统将实际结果反馈给被测系统;

步骤s5:被测系统比对测试数据,并将结果反馈给测试服务器。

进一步的,基于本发明所述的系统实施的一种自验证的方法,将部分被测系统与反馈系统合并,合理利用被测系统自身存储空间与对外提供接口,将变量服务测试,plc输入、输出口通过自身进行验证;

具体执行步骤如下:

步骤s1:将被测系统的输入口与被测系统的输出口通过硬接线方式连接起来;当输入口与输出口数量不对应时,可通过接入继电器方式,以数据编码方式做到一一对应;

步骤s2:被测系统执行测试用例,测试输出口信号有效;

步骤s3:被测系统检测与测试输出口硬接线的输入口数据状态;

步骤s4:判断预期状态与实际状态,给出测试结果。

进一步的,基于本发明所述的系统实施的一种微服务的方法,将触发服务模块、报告服务模块、通知服务模块、部分执行服务模块存储于docker微服务及vmware虚拟机中。一是节省硬件开支,无需每个服务配置一个主机;二是方便环境部署,每个微服务、每个vmwaare虚拟机独立存在,秒级切换到其它硬件平台,不存在重装系统,需要很长时间搭建测试环境问题,也不存在因配置不同,导致测试现象不一致问题;

具体执行步骤如下:

步骤s1:测试服务器内安装docker软件及vmware软件;

步骤s2:通过docker命令下载jenkins镜像;

步骤s3:搭建持续集成环境;

步骤s4:通过docker命令下载ngnix镜像;

步骤s5:搭建文件服务器环境;

步骤s6:安装vmware虚拟机;

步骤s7:搭建自研测试软件环境。

有益效果:本发明提供了一种工业机器人自动化测试系统和方法,用于对工业机器人软件系统进行全面测试。通过持续集成工具发送测试指令,触发测试服务器启动测试,被测模块执行测试用例并进行判断,将测试结果反馈回测试服务器,测试报告服务根据测试结果生成测试报告,并将数据发送给测试人员及相关研发人员。该工业机器人自动化测试系统面向测试人员友好、操作简单,可对工业机器人软件系统进行全面测试,并能自动生成测试报告。从而实现了测试过程的自动化,提高了测试效率、方便了问题跟踪。

附图说明

图1为本发明所述工业机器人自动化测试系统的各模块相互关系图。

图2为一种多机并发、网络通讯的测试方法的流程图。

图3为一种自验证方法的流程图。

图4为微服务方法的测试服务器的结构示意图。

图5为机器人专用指令测试的流程示意图。

图6为工业总线功能测试的流程示意图。

图7为plc功能测试的流程示意图。

图8为二次开发功能测试的流程示意图。

具体实施方式

下面结合具体实施例来进一步描述本发明,但实施例仅是范例性的,并不对本发明的范围构成任何限制。本领域技术人员应该理解的是,在不偏离本发明的精神和范围下可以对本发明技术方案的细节和形式进行修改或替换,但这些修改和替换均落入本发明的保护范围内。

一种工业机器人自动化测试系统,如图1所示,该系统包括以下服务模块:触发服务模块,通过引入持续集成服务jenkins,用于定时或手工触发测试执行服务;

执行服务模块,用于执行测试用例;

存储服务模块,用于存储测试用例及测试标准;

反馈服务模块,用于反馈测试执行服务结果;

报告服务模块,用于根据测试执行服务数据生成测试报告,通过nginxweb服务器搭建文件服务器,保存测试报告;

通知服务模块,用于将测试报告以邮件方式发送给测试人员和相关研发人员。各服务模块间执行如下步骤:

步骤s1:由持续集成服务jenkins和人工调用触发服务模块,触发执行服务模块;

步骤s2:执行服务模块拉取存储服务模块内测试用例数据及用例判断数据;

步骤s3:执行服务模块执行测试用例;

步骤s4:执行服务模块触发反馈服务模块执行;

步骤s5:执行服务模块拉取反馈服务模块的结果数据,并于用例判断数据对比,生成测试结果;

步骤s6:执行服务结束后,推送测试结果到报告服务模块;

步骤s7:报告服务模块根据测试结果生成测试报告;

步骤s8:通知服务模块将测试报告发送给测试人员及相关研发人员。

基于本发明所述的系统实施的一种多机并发、网络通讯的测试方法,如图2所示,包括以下步骤:

步骤s1:人工或持续集成服务jenkins触发测试用例执行;

步骤s2:测试服务器根据本次测试内容,向多个被测系统模块发送不同测试指令;

步骤s3:被测系统并发执行测试指令;

步骤s4:反馈系统将实际结果反馈给被测系统;

步骤s5:被测系统比对测试数据,并将结果反馈给测试服务器;

其中,测试服务器与被测系统之间通过网络的方式连接在一起,通过ip地址进行被测系统的区分。

基于本发明所述的系统实施的一种自验证的方法,将部分被测系统与反馈系统合并,合理利用被测系统自身存储空间与对外提供接口,将变量服务测试,plc输入、输出口通过自身进行验证;

如图3所示,具体执行步骤如下:

步骤s1:将被测系统的输入口与被测系统的输出口通过硬接线方式连接起来;当输入口与输出口数量不对应时,可通过接入继电器方式,以数据编码方式做到一一对应;

步骤s2:被测系统执行测试用例,测试输出口信号有效;

步骤s3:被测系统检测与测试输出口硬接线的输入口数据状态;

步骤s4:判断预期状态与实际状态,给出测试结果。

基于本发明所述的系统实施的一种微服务的方法,将触发服务模块、报告服务模块、通知服务模块、部分执行服务模块存储于docker微服务及vmware虚拟机中,具体执行步骤如下:

步骤s1:如图4所示,测试服务器内安装docker软件及vmware软件;

步骤s2:通过docker命令下载jenkins镜像;

步骤s3:搭建持续集成环境;

步骤s4:通过docker命令下载ngnix镜像;

步骤s5:搭建文件服务器环境;

步骤s6:安装vmware虚拟机;

步骤s7:搭建自研测试软件环境。

本发明实施例提供的一种工业机器人自动化测试系统,用于对工业机器人软件系统进行测试,被测的所述工业机器人软件系统包括多个被测软件功能模块。具体测试模块包括机器人专用指令测试、工业总线功能测试、plc测试,二次开发包功能测试。

实施例1机器人专用指令测试

机器人专用指令主要是测试机器人系统内部指令测试,通过自反馈方式实现测试。机器人专用指令测试用例保存于被测控制器,测试执行前先将标志位设置为0,每项测试用例对应一个变量值。若用例执行成功,则将变量设置为1,若使用执行失败,则将变量设置为0。报告服务通过获取系统标志变量及标志变量值判断用例执行结果,生成测试报告。

实施例2工业总线功能测试

工业总线功能测试是包括modbustcp、modbusrtu、tcpserver、tcpclient的测试。modbustcp测试时,被测系统与反馈服务通过ethernet接口互联,通过modbustcp服务互相收发数据,测试系统modbustcp功能。modbusrtu测试时,被测系统与反馈系统通过rs485接口互联,通过modbusrtu服务互相收发数据,测试系统modbusrtu功能。tcpserver测试时,被测系统与反馈系统通过ethernet接口互联。被测系统上创建tcpserver服务,反馈系统上创建tcpclient服务,测试被测系统的tcpserver服务。测试tcpclient服务时,被测系统与反馈系统通过ethernet接口互联,被测系统上创建tcpclient服务,反馈系统上创建tcpserver服务,测试被测系统的tcpclient服务。

实施例3plc功能测试

plc功能测试是包括数字量输入、数字量输出、模拟量输入、模拟量输出的测试。主要通过硬接线方式实现。被测系统的数字量输入口硬接线到反馈系统的数字量输出口、被测系统的数字量输出口硬接线到反馈系统的数字量输入口、被测系统的模拟量输入口硬接线到反馈系统的模拟量输出口、被测系统的模拟量输出口硬接线到反馈系统的模拟量输入口。

以数字量输入口测试为例:测试服务器执行触发服务后,被测系统执行数字量输入口测试用例。反馈系统开始逐一将数字量输出口设置为有效状态。被测系统每收到一次反馈系统的数字量输出口变化,会把被测系统的所有数字量输入口数据获取一次,进行全匹配对比,只有被测系统的所有输入口状态与预期一致时,才认为测试用例通过,否则本条用例失败。

实施例4二次开发功能测试

二次开发功能测试主要是测试系统提供的二次开发包功能的完善性及稳定性。测试实施时通过visualstudio编写二次开发应用程序,运行于测试服务器,通过tcp方式向被测系统请求服务,根据被测系统的响应数据判断测试用例执行结果是否通过。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1