一种批量测试通信设备方法及系统与流程

    专利2022-07-08  90


    本发明涉及



    背景技术:

    当前robotframework自动化框架广泛应用用于各类的自动化测试场景当中,但robotframework面向通信设备的测试应用时,难以做到基于通信设备ip集合,自动化的批量测试通信设备并产生相应测试报告。原因在于robotframework在运行测试用例时,实际是在后台调用pybot命令,运行自动化用例。每个用例运行时,均是解释器新调用的pybot命令,导致每次运行用例时,用例之间的内存无法共享,从而用例内部的公共变量无法在用例之间共享。这使得当我们需要依照已建立的测试用例库去批量测试一批通信设备时,for循环脚本导入的设备ip地址变量,无法被自动化测试用例库自动获取。这使得当测试人员面对大批量的通信设备测试需求时,无法自动的、一建运行测试用例,造成了该场景下,测试效率的低下。当前robotframework平台缺乏一种自动化批量测试通信设备的方法,目前国内无类似专利。



    技术实现要素:

    针对robotframework平台在批量执行通信设备自动化测试时,循环脚本中ip列表变量的值无法被测试用例获取输入的问题,提出了一种基于识别本地通用数据库类型并自动存储变量与获取变量,最终完成通信设备批量自动化测试的方法及系统。

    本发明采用的技术方案如下:一种批量测试通信设备方法,在pc端搭建robotframework平台,pc通过路由器与多个被检测通信设备通信;在robotframework平台中执行循环脚本按被测试通信设备ip列表变量for循环执行自动化测试用例,同时将当前被测试设备ip的地址通过数据库操作库存入本地数据库表中,自动化测试用例在被调用执行时,通过导入的varible变量文件调用数据库操作库获取被测试设备ip,最终ride根据测试结果按设备ip地址生成html测试报告。

    进一步的,所述robotframework平台的具体工作过程为:创建robot用例,for循环遍历输入的设备ip的列表变量,调用数据库操作库识别本地通用数据库类型,依据数据库类型通过调用对应接口将for循环取出的ip地址存入本地数据库中;通过pythonsubprocess模块调用cmd,调用运行设备已有测试用例库执行自动化测试用例。

    进一步的,所述数据操作库为基于robotframework框架的library库,数据库操作库通过socket通信连接本地并识别、登录本地数据库,并依据数据库类型通过调用对应接口将设备ip地址存储入本地数据库的表中或从本地数据库的表中取出存储的设备ip地址。

    进一步的,所述已有测试用例库为已开发好的设备测试用例库,从varible变量文件中获取被测通信设备的ip地址,根据被测设备的ip地址,与被测设备通信连接,运行自动化测试用例。

    进一步的,所述varible变量文件为用于导入变量的python文件,通过调用数据库操作库的封装关键字,获取当前被测试设备的ip地址。

    进一步的,所述生成html测试报告的方法为:运行自动化测试用例前,robotframework开启sockect通信绑定本地端口;测试运行时,robotframework通过sockect通信监听实时运行数据;自动化测试用例运行完毕之后,robotframework关闭sockect通信;robotframework根据数据产生log日志,并生成html报告。

    本发明还提供了一种批量测试通信设备的系统,包括在pc端搭建robotframework平台,pc通过路由器与多个被检测通信设备通信,所述robotframework平台用于执行上述的批量测试通信设备方法。

    与现有技术相比,采用上述技术方案的有益效果为:本发明解决了robotframework平台在批量执行通信设备自动化测试时,循环脚本中ip列表变量的值无法被测试用例获取输入的问题。使测试人员能够使用robotframework平台去批量测试通信设备,提升了测试人员在通信设备批量测试中的效率。

    附图说明

    图1是本发明的通信设备自动化测试测试平台。

    图2是本发明的批量测试通信设备方法流程图。

    具体实施方式

    下面结合附图对本发明做进一步描述。

    实施例1

    本发明针对robotframework平台在批量执行通信设备自动化测试时,循环脚本中ip列表变量的值无法被测试用例获取输入的问题,提出了一种基于通用数据库存储变量与获取变量,并最终完成通信设备批量自动化测试的方法。

    本发明基于robotframwork框架,通过socket通信识别、连接本地通用数据库并存取数据,完成通信设备测试。测试人员只需要在测试之初,部署好测试环境,如图1,即可进行批量的通信设备测试。具体方案如下:

    如图2所示,一种批量测试通信设备方法,在pc端搭建robotframework平台,pc通过路由器与多个被检测通信设备通信;在robotframework平台中执行循环脚本按被测试通信设备ip列表变量for循环执行自动化测试用例,同时数据库操作库识别本地通用数据库类型并依据数据库类型通过调用对应接口将当前被测试设备ip的地址存入本地数据库表中,自动化测试用例在被调用执行时,通过导入的varible变量文件调用数据库操作库获取被测试设备ip,最终ride根据测试结果按设备ip地址生成html测试报告。

    实施例2

    在实施例1的基础上,所述robotframework平台的具体工作过程为:创建robot用例,for循环遍历输入的设备ip的列表变量,调用数据库操作库识别本地数据库类型,依据数据库类型通过对应接口将for循环取出的ip地址存入本地数据库中;通过pythonsubprocess模块调用cmd,调用运行设备已有测试用例库执行自动化测试用例。

    实施例3

    在实施例2的基础上,所述数据操作库为基于robotframework框架的library库,数据库操作库通过socket通信本地并识别、登录本地数据库,并依据数据库类型通过调用对应接口将设备ip地址存储入本地数据库的表中或从本地数据库的表中取出存储的设备ip地址。

    实施例4

    在实施例3的基础上,所述已有测试用例库为已开发好的设备测试用例库,从varible变量文件中获取被测通信设备的ip地址,根据被测设备的ip地址,与被测设备通信连接,运行自动化测试用例。

    实施例5

    在实施例4的基础上,所述varible变量文件为用于导入变量的python文件,通过调用数据库操作库的封装关键字,获取当前被测试设备的ip地址。

    实施例6

    在实施例5的基础上,所述生成html测试报告的方法为:运行自动化测试用例前,robotframework开启sockect通信绑定本地端口;测试运行时,robotframework通过sockect通信监听实时运行数据;自动化测试用例运行完毕之后,robotframework关闭sockect通信;robotframework根据数据产生log日志,并生成html报告。

    采用本发明提出的方案能够有效解决robotframework平台在批量执行通信设备自动化测试时,循环脚本中ip列表变量的值无法被测试用例获取输入的问题。使测试人员能够使用robotframework平台去批量测试通信设备,提升了测试人员在通信设备批量测试中的效率

    实施例6

    本发明还提供了一种批量测试通信设备的系统,包括在pc端搭建robotframework平台,pc通过路由器与多个被检测通信设备通信,所述robotframework平台用于执行实施例1-5任一所述的批量测试通信设备方法。

    本发明并不局限于前述的具体实施方式。本发明扩展到任何在本说明书中披露的新特征或任何新的组合,以及披露的任一新的方法或过程的步骤或任何新的组合。如果本领域技术人员,在不脱离本发明的精神所做的非实质性改变或改进,都应该属于本发明权利要求保护的范围。

    本说明书中公开的所有特征,或公开的所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以以任何方式组合。

    本说明书中公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换。即,除非特别叙述,每个特征只是一系列等效或类似特征中的一个例子而已。


    技术特征:

    1.一种批量测试通信设备方法,其特征在于,在pc端搭建robotframework平台,pc通过路由器与多个被检测通信设备通信;在robotframework平台中执行循环脚本按被测试通信设备ip列表变量for循环执行自动化测试用例,同时数据库操作库识别本地数据库类型并依据数据库类型通过调用对应接口将当前被测试设备ip的地址存入本地数据库表中,自动化测试用例在被调用执行时,通过导入的varible变量文件调用数据库操作库获取被测试设备ip,最终ride根据测试结果按设备ip地址生成html测试报告。

    2.根据权利要求1所述的一种批量测试通信设备方法,其特征在于,所述robotframework平台的具体工作过程为:创建robot用例,for循环遍历输入的设备ip的列表变量,调用数据库操作库,识别本地数据库类型,并依据数据库类型通过调用对应接口将for循环取出的ip地址存入本地数据库中;通过pythonsubprocess模块调用cmd,调用运行设备已有测试用例库执行自动化测试用例。

    3.根据权利要求2所述的一种批量测试通信设备方法,其特征在于,所述数据操作库为基于robotframework框架的library库,数据库操作库通过socket通信连接本地pc,识别数据库类型并登录本地数据库,依据数据库类型通过调用对应接口将设备ip地址存储入本地数据库的表中或从本地数据库的表中取出存储的设备ip地址。

    4.根据权利要求3所述的一种批量测试通信设备方法,其特征在于,根据权利要求1所述的一种批量测试通信设备方法,其特征在于,所述已有测试用例库为已开发好的设备测试用例库,从varible变量文件中获取被测通信设备的ip地址,根据被测设备的ip地址,与被测设备通信连接,运行自动化测试用例。

    5.根据权利要求4所述的一种批量测试通信设备方法,其特征在于,所述varible变量文件为用于导入变量的python文件,通过调用数据库操作库的封装关键字,获取当前被测试设备的ip地址。

    6.根据权利要求5所述的一种批量测试通信设备方法,其特征在于,所述生成html测试报告的方法为:运行自动化测试用例前,robotframework开启sockect通信绑定本地端口;测试运行时,robotframework通过sockect通信监听实时运行数据;自动化测试用例运行完毕之后,robotframework关闭sockect通信;robotframework根据数据产生log日志,并生成html报告。

    7.一种批量测试通信设备的系统,其特征在于,包括在pc端搭建robotframework平台,pc通过路由器与多个被检测通信设备通信,所述robotframework平台用于执行权利要求1-6任一所述的批量测试通信设备方法。

    技术总结
    本发明涉及一种批量测试通信设备方法,在PC端搭建robotframework平台,PC通过路由器与多个被检测通信设备通信;在robotframework平台中执行循环脚本按被测试通信设备IP列表变量for循环执行自动化测试用例,同时数据库操作库通过socket通信识别本地数据类型,并根据数据库类型调用不同接口将当前被测试设备IP的地址存入本地数据库表中,自动化测试用例在被调用执行时,通过导入的varible变量文件调用数据库操作库获取被测试设备IP,最终ride根据测试结果按设备IP地址生成html测试报告。本发明解决了robotframework平台在批量执行通信设备自动化测试时,循环脚本中IP列表变量的值无法被测试用例获取输入的问题。使测试人员能够使用robotframework平台去批量测试通信设备,提升了测试人员在通信设备批量测试中的效率。

    技术研发人员:吴松霖;赵俊波;艾磊;李雷;邵伟;程永新;万思思
    受保护的技术使用者:中国电子科技集团公司第三十研究所
    技术研发日:2020.11.27
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-22585.html

    最新回复(0)