CN110532182A - 一种虚拟化平台的自动化测试方法及装置 - Google Patents

一种虚拟化平台的自动化测试方法及装置 Download PDF

Info

Publication number
CN110532182A
CN110532182A CN201910780216.7A CN201910780216A CN110532182A CN 110532182 A CN110532182 A CN 110532182A CN 201910780216 A CN201910780216 A CN 201910780216A CN 110532182 A CN110532182 A CN 110532182A
Authority
CN
China
Prior art keywords
test
automatic test
test case
test cases
value
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
Application number
CN201910780216.7A
Other languages
English (en)
Other versions
CN110532182B (zh
Inventor
刘新金
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ruijie Networks Co Ltd
Original Assignee
Ruijie Networks Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Ruijie Networks Co Ltd filed Critical Ruijie Networks Co Ltd
Priority to CN201910780216.7A priority Critical patent/CN110532182B/zh
Publication of CN110532182A publication Critical patent/CN110532182A/zh
Application granted granted Critical
Publication of CN110532182B publication Critical patent/CN110532182B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3684Test management for test design, e.g. generating new test cases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Testing Of Devices, Machine Parts, Or Other Structures Thereof (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请公开了一种虚拟化平台的自动化测试方法及装置,该方法包括:将从测试文件中解析出的测试用例转换为自动化测试用例,其中,所述自动化测试用例中每一步骤至少包括输入参数以及传值;基于所述自动化测试用例中步骤的先后顺序,在执行所述自动化测试用例的第一步骤时,返回并保存所述第一步骤所对应的传值;基于所述第一步骤所对应的传值以及所述第一步骤之后的第二步骤所对应的输入参数控制所述第二步骤执行,直到所述自动化测试用例的所有步骤都执行完成,生成测试报告。解决了现有技术中自动化测试用例无法执行的技术问题。

Description

一种虚拟化平台的自动化测试方法及装置
技术领域
本申请涉及自动化测试技术领域,尤其涉及一种虚拟化平台的自动化测试方法及装置。
背景技术
虚拟化平台是通过客户端与网络设备相连来跨平台访问的应用程序,例如,云桌面,具有集中部署数据中心,提高了数据的安全性等优势被广泛的应用。为了保证虚拟化平台的正常运行,软件测试是软件生命周期的一个重要的环节,在软件系统运行前和运行期间,开发人员通常需要编写大量的测试用例对软件运行系统进行反复测试,测试用例一般包括测试目标、测试环境、输入数据、测试步骤、预期结果。测试过程中,根据测试用例搭建测试环境,并按照预设的测试步骤输入预设的输入数据,然后核对输出结果与预期结果是否匹配。目前,通常采用关键字驱动或者数据驱动的自动化测试用例对虚拟化平台进行测试,一般关键字驱动或数据驱动直接将参数写到测试用例脚本中,而自动化测试用例执行时所需的参数是执行过程中生成的,导致自动化测试用例无法执行。
发明内容
本申请提供一种虚拟化平台的自动化测试方法及装置,用以解决现有技术中自动化测试用例无法执行的技术问题。
第一方面,本申请实施例提供的一种虚拟化平台的自动化测试方法,该方法包括:
将从测试文件中解析出的测试用例转换为自动化测试用例,其中,所述自动化测试用例中每一步骤至少包括输入参数以及传值;
基于所述自动化测试用例中步骤的先后顺序,在执行所述自动化测试用例的第一步骤时,返回并保存所述第一步骤所对应的传值;
基于所述第一步骤所对应的传值以及所述第一步骤之后的第二步骤所对应的输入参数控制所述第二步骤执行,直到所述自动化测试用例的所有步骤都执行完成,生成测试报告。
本申请实施例所提供的方案中,将测试文件中的测试用例转换为自动化测试用例,在自动化测试用例中每一步骤设置输入参数以及传值,然后,基于自动化测试用例中每一步骤执行的先后顺序,执行自动化测试用例,返回并保存执行过程中生成的传值,并将传值传输给下一步骤,直到自动化测试用例的所有步骤都执行完成,生成测试报告。因此,本申请实施例所提供的方案中,在自动化测试用例执行过程中,实时保存并返回上一步执行过程中生成的传值,并将该传值传输给下一步骤,以使得下一步骤执行,避免由于不能获取测试用例执行过程中动态生成的参数,导致自动化测试用例无法执行的问题。
可选地,将从测试文件中解析出的测试用例转换为自动化测试用例,包括:
获取所述测试文件,并从所述测试文件中解析出所述测试用例;
确定所述测试用例中每个测试步骤所对应的关键字,从预设的关键字表中选择出每个所述关键字所对应的执行动作;
基于所述测试用例中测试步骤的执行顺序,将选取的执行动作进行组合生成所述自动化测试用例。
本申请实施例提供的方案中,获取测试文件,并从测试文件中解析出测试用例,然后,根据所述测试用例中每个步骤所对应的关键字,从预设的关键字表中选择出每个所述关键字所对应的执行动作,并基于所述测试用例中测试步骤的执行顺序,将选取的执行动作进行组合生成所述自动化测试用例。因此,本申请实施例所提供的方案中,将数据驱动和关键字驱动结合来生成自动化测试用例,避免了单独数据驱动或关键字驱动生自动化测试用例所带来的问题,提高了自动化测试用例的适用性。
可选地,所述传值包括:筛选条件字段、筛选条件字段的值、占位参数以及所述占位参数的值,其中,所述筛选条件字段用于表征所述自动化测试用例中筛选所述传值的字段,所述筛选条件字段的值是指在所述筛选条件字段中筛选的关键词。
可选地,返回并保存所述第一步骤所对应的传值,包括:
判断所述第一步骤执行完成后得到的传值中所述占位参数值是否为空;
若不为空,则记录所述占位参数的名称以及所述占位参数的值;
返回并保存所述占位参数以及所述占位参数的值。
可选地,所述自动化测试用例中每一步骤,还包括:控制参数,其中,所述控制参数包括预设的等待时长和预设的执行次数。
本申请实施例所提供的方案中,通过在自动化测试用例的每一步骤设置控制参数,即每一步骤预设的等待时长和预设的执行次数,不仅避免自动化测试用例在执行过程中逐步确定生效点,导致自动化测试的复用性较差,不便于测试用例的维护,也避免要多次执行测试用例中任一步骤时,在测试脚本中写入一个循环或者多条代码来实现,导致测试脚本的可维护性较差的问题。
可选地,基于所述第一步骤所对应的传值以及所述第一步骤之后的第二步骤所对应的输入参数,控制所述第二步骤执行,包括:
确定所述第二步骤中所包括的所述等待时长、所述执行次数以及所述第一步骤执行完成的时间点,并基于所述第一步骤执行完成的时间点以及所述等待时长确定所述第二步骤开始执行的时间点;
将所述第一步骤所对应的传值以及所述第二步骤所对应的输入参数作为所述第二步骤的输入,基于所述第二步骤开始执行的时间点和所述执行次数控制所述第二步骤执行。
第二方面,本申请实施例提供的一种虚拟化平台的自动化测试装置,该装置包括:
转换单元,用于将从测试文件中解析出的测试用例转换为自动化测试用例,其中,所述自动化测试用例中每一步骤至少包括输入参数以及传值;
执行单元,用于基于所述自动化测试用例中步骤的先后顺序,在执行所述自动化测试用例的第一步骤时,返回并保存所述第一步骤所对应的传值;
控制单元,用于基于所述第一步骤所对应的传值以及所述第一步骤之后的第二步骤所对应的输入参数控制所述第二步骤执行,直到所述自动化测试用例的所有步骤都执行完成,生成测试报告。
可选地,所述转换单元,具体用于:
获取所述测试文件,并从所述测试文件中解析出所述测试用例;
确定所述测试用例中每个测试步骤所对应的关键字,从预设的关键字表中选择出每个所述关键字所对应的执行动作;
基于所述测试用例中测试步骤的执行顺序,将选取的执行动作进行组合生成所述自动化测试用例。
可选地,所述传值包括:筛选条件字段、筛选条件字段的值、占位参数以及所述占位参数的值,其中,所述筛选条件字段用于表征所述自动化测试用例中筛选所述传值的字段,所述筛选条件字段的值是指在所述筛选条件字段中筛选的关键词。
可选地,所述执行单元,具体用于:
判断所述第一步骤执行完成后得到的传值中所述占位参数值是否为空;
若不为空,则记录所述占位参数的名称以及所述占位参数的值;
返回并保存所述占位参数以及所述占位参数的值。
可选地,所述自动化测试用例中每一步骤,还包括:控制参数,其中,所述控制参数包括预设的等待时长和预设的执行次数。
可选地,所述控制单元,具体用于:
确定所述第二步骤中所包括的所述等待时长、所述执行次数以及所述第一步骤执行完成的时间点,并基于所述第一步骤执行完成的时间点以及所述等待时长确定所述第二步骤开始执行的时间点;
将所述第一步骤所对应的传值以及所述第二步骤所对应的输入参数作为所述第二步骤的输入,基于所述第二步骤开始执行的时间点和所述执行次数控制所述第二步骤执行。
第三方面,本申请提供一种计算设备,该计算设备,包括:
存储器,用于存储至少一个处理器所执行的指令;
处理器,用于执行存储器中存储的指令执行第一方面所述的方法。
第四方面,本申请提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行第一方面所述的方法。
附图说明
图1为本申请实施例所提供的一种虚拟化平台的自动化测试系统的结构示意图;
图2为本申请实施例所提供的一种计算设备与资源层中设备之间数据传输的示意图;
图3为本申请实施例所提供的一种虚拟化平台的自动化测试方法流程图;
图4为本申请实施例所提供的一种虚拟化平台的自动化测试装置的结构示意图;
图5为本申请实施例所提供的一种计算设备的结构示意图。
具体实施方式
本申请实施例提供的方案中,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
为了更好的理解上述技术方案,下面通过附图以及具体实施例对本申请技术方案做详细的说明,应当理解本申请实施例以及实施例中的具体特征是对本申请技术方案的详细的说明,而不是对本申请技术方案的限定,在不冲突的情况下,本申请实施例以及实施例中的技术特征可以相互组合。
为了便于理解下述一种虚拟化平台的自动化测试方法的过程,参见图1,本申请实施例先介绍一种虚拟化平台的自动化测试系统,该系统是基于自动化测试平台环境构建的,该系统包括:资源层1、数据访问层2、安全链路层3、业务功能层4和系统表示层5;其中,资源层1包括物理资源层11和虚拟资源层12,物理资源层11包括服务器、网络设备或者存储设备,例如,网络设备包括终端设备,虚拟资源层12包括多个虚拟机;数据访问层2包括数据库;安全链路层3包括安全外壳协议(Secure Shell,SHH),SHH隧道协议(SHHTunnel),WebSocket协议等;业务功能层4包括资源上传、下载、信息删除或者信息更改等;系统表示层5包括自动化测试系统的Web界面,其中,自动化测试系统承载在计算设备上,例如,计算设备包括计算机、服务器等。
进一步,为了实现计算设备与资源层1中设备之间的数据传输,计算设备与资源层1中各个设备中的每个模块通过端口或者数据传输协议进行连接,参见图2,本申请实施例所提供的计算设备与资源层中设备之间数据传输的示意图。
具体的,资源层1中服务器包括云桌面控制器(Cloud Desktop Controller,CDC)和虚拟模块(Virtural Modules,VM),网络设备包括终端客户端模块shine和终端升级组件(Remote User Agent,RUA),其中,RDCD包括Web模块、shell模块以及数据库模块(DATABASE,DB),虚拟模块包括自动测试模块(Auto Test Module,ATM),其中,ATM模块存储着虚拟模块中开机自动执行的代码;计算设备通过Restful接口(Representational StateTransfer,REST)与Web模块进行连接,并通过SHH与shell模块进行数据交换,通过SSHTunnel协议与DB模块进行数据交换,通过套接字Socket与ATM模块进行数据交换,通过WebSocket协议实现与网络设备中shine模块和RUA模块进行数据交换。
实施例一
在图1所示的自动化测试系统架构下以及图2所示的计算设备与资源层中设备之间数据传输的关系的基础上,以下结合说明书附图对本申请实施例所提供的一种虚拟化平台的自动化测试方法做进一步详细的说明,该方法具体实现方式可以包括以下步骤(方法流程如图3所示):
步骤301,将从测试文件中解析出的测试用例转换为自动化测试用例,其中,所述自动化测试用例中每一步骤至少包括输入参数以及传值。
将从测试文件中解析出的测试用例转换为自动化测试用例,包括:获取所述测试文件,并从所述测试文件中解析出所述测试用例;确定所述测试用例中每个测试步骤所对应的关键字,从预设的关键字表中选择出每个所述关键字所对应的执行动作;基于所述测试用例中测试步骤的执行顺序,将选取的执行动作进行组合生成所述自动化测试用例。
具体的,计算设备接收用户输入的测试文件,并从接收的测试文件中解析出测试用例,然后,将解析出的测试用例转换为自动化测试用例;其中,将解析出的测试用例转换为自动化测试用例的方式有多种,下面以一种较佳的方式为例进行举例说明。
在数据库中存储着预先封好的关键字表和测试用例转换表。为了便于理解上述封装好的关键字表和测试用例转换表,下面以举例的形式进行说明。
参见表1、表2,其中,表1表示封装的关键字表,表2表示测试用例转换表。
表1
参见表1,预先存储封装的关键字表中包括:关键字名称、关键字所属模块、输入参数、输入参数类型以及输入数据中各字段的格式;其中,关键字名称包括关键字中文名称和关键字英文名称,关键字所属模块是指存储所述关键字的模块,输入参数包括名称、密码、电子邮件等,输入参数类型是指输入参数的数据格式,例如,输入参数类型包括对象简谱(JavaScript Object Notation,JSON)或者可扩展标记语言(eXtensible MarkupLanguage,XML)等,输入参数中各字段的格式,例如,字符型(string)或者布尔型(boolean)。
进一步,若存储所述关键字的模块通过Restful接口与计算设备连接,则封装的关键字表中还包括:传递参数的方式,统一资源定位符(Uniform Resource Locator,URL),URL参数,以及发送给服务器的消息类型,例如,传递参数的方式包括:POST方式或GET方式。
表2
参见表2,测试用例转化表包括:测试用例编号、测试用例名称、预置条件、执行步骤以及后处理步骤等。
计算设备从测试文件或者解析出测试用例之后,确定每个测试用例的测试用例编号,测试用例名称,以及每个步骤所对应的关键字,然后基于预先存储封装的关键字表,确定每个步骤所对应的关键字名称、所属模块、输入参数、输入参数类型以及输入参数中各字段的格式,再根据测试用例确定输入参数的具体值,生成测试用例转化表。其中所述测试用例编号或测试用例名称所对应的预置条件、执行步骤以及后处理的步骤,基于每个步骤所对应的关键字名称、所属模块、输入参数、输入参数类型,输入参数中各字段的格式以及输入参数值将测试用例中每个步骤转换为预设格式的自动化测试用例步骤,其中,预设格式包括:关键字名称key、输入参数Data、检查项checkpoint、传值Res;检查项用于检测当前执行的步骤是否通过预设的条件,传值用于传递给测试用例中该步骤之后的步骤使用。
进一步,所述传值包括:筛选条件字段、筛选条件字段的值、占位参数以及所述占位参数的值,其中,所述筛选条件字段用于表征所述自动化测试用例中筛选所述传值的字段,所述筛选条件字段的值是指在所述筛选条件字段中筛选的关键词。
具体的,传值包括两组关键字数组,传值的格式可以为{key1:value1;key2:{占位参数:占位参数的值}},其中,key1表示筛选条件字段,value1表示筛选条件字段的值,key2表示占位参数字段,占位参数是指测试用例运行中动态参数,例如,ID、存储单元等。
进一步,为了提高测试用例脚本的可维护性,所述自动化测试用例中每一步骤,还包括:控制参数,其中,所述控制参数包括预设的等待时长WaitTime和预设的执行次数DoTimes,预设的等待时长的默认单位可以设置为秒,预设的执行次数的单位为次。
计算设备将测试用例中各步骤转换为自动化用例步骤之后,基于测试用例中各步骤执行的先后顺序,将自动化测试用例步骤组合生成自动化测试用例。
步骤302,基于所述自动化测试用例中步骤的先后顺序,在执行所述自动化测试用例的第一步骤时,返回并保存所述第一步骤所对应的传值。
计算设备在得到自动化测试用例之后,基于自动化测试用例中各步骤的先后顺序,在执行自动化测试用例的第一步骤时,返回并保存第一步骤所对应的传值,其中,返回并保存第一步骤所对应的传值的方式有多种,下面以一种常见的方式为例进行举例说明。
返回并保存所述第一步骤所对应的传值,包括:
判断所述第一步骤执行完成后得到的传值中所述占位参数值是否为空;若不为空,则记录所述占位参数的名称以及所述占位参数的值;返回并保存所述占位参数以及所述占位参数的值。
具体的,计算设备在执行自动化测试用例的第一步骤之后,得到一个传值,然后,判断传值中至少一个占位参数的值是否为空,若不为空,则记录所述占位参数的名称以及所述占位参数的值,返回并保存所述占位参数以及所述占位参数的值。
步骤303,基于所述第一步骤所对应的传值以及所述第一步骤之后的第二步骤所对应的输入参数控制所述第二步骤执行,直到所述自动化测试用例的所有步骤都执行完成,生成测试报告。
计算设备在返回并保存第一步骤所对应的传值之后,若计算设备执行第一步骤之后的第二步骤时,确定所述第二步骤所对应的输入参数,调用第二步骤所对应的输入参数以及第一步骤所对应的传值,通过所述第一步骤所对应的传值以及所述第一步骤之后的第二步骤所对应的输入参数控制所述第二步骤执行,直到所述自动化测试用例的所有步骤都执行完成,生成测试报告。基于所述第一步骤所对应的传值以及所述第一步骤之后的第二步骤所对应的输入参数控制所述第二步骤执行的方式有多种,下面以一种较佳的方式为例进行说明。
基于所述第一步骤所对应的传值以及所述第一步骤之后的第二步骤所对应的输入参数,控制所述第二步骤执行,包括:
确定所述第二步骤中所包括的所述等待时长、所述执行次数以及所述第一步骤执行完成的时间点,并基于所述第一步骤执行完成的时间点以及所述等待时长确定所述第二步骤开始执行的时间点;
将所述第一步骤所对应的传值以及所述第二步骤所对应的输入参数作为所述第二步骤的输入,基于所述第二步骤开始执行的时间点和所述执行次数控制所述第二步骤执行。
例如,若第二步骤为{'Key':'创建USB类型','Data':'usb类型1','Checkpoint':{},'Res':{},’WaitTime’:{'time':'1'},’DoTimes’:’2’},则确定第二步骤预设的等待时长为1秒,执行的次数为2次,即在第一步骤执行完成后1秒开始第一次执行第二步骤,在第一次执行第二步骤完成后1秒开始第二次执行第二步骤。
为了便于理解上述自动化测试的过程,下面以举例的形式进行说明。
例如,计算设备从测试文件中解析出测试用例为修改USB类型名称,参见表3、表4、表5、表6、表7;其中表3为解析出的修改USB类型名称的测试用例;表4为预设的封装关键字表;表5为自动化测试用例中预置条件;表6为自动化测试用例中执行的步骤;表7为自动化测试用例中后处理的步骤。
表3
表4
计算设备将表3中的测试用例编号和测试用例名称复制,得到自动化测试用例的编号为test_001,自动化测试用例的名称为修改USB类型名称,根据表3可知,预置条件中步骤1所对应的关键字为“创建一个USB类型”,步骤2所对应的关键字为“获取USB类型Id和名字对应数组”,然后,从表4查找“创建一个USB类型”这一关键字所对应的输入参数为'usbTypeName',且输入参数的字段格式为字符型,以及“获取USB类型Id和名字对应数组”这一关键字所对应的输入参数为空,再将测试用例在预置条件转换为表5所示的自动化测试用例中预设条件。
表5
进一步,再基于表3中执行的步骤,确定测试用例的执行的每个步骤所对应的关键字均为“编辑USB类型”,根据表4可以确定“编辑USB类型”所对应的输入参数包括:'id'以及'usbTypeName',然后,再基于表5所示的预置条件,将表3中执行的步骤转换为表6所示的自动化测试用例的执行步骤。
表6
进一步,再基于表3中后处理的步骤,确定后处理的步骤所对应的关键字为“删除USB类型”,根据表4可以确定“删除USB类型”所对应的输入参数为“'idArr':'Y'”,基于所述输入参数将测试用例中后处理的步骤转换为如表7所示的自动化测试用例的后处理的步骤。
表7
计算设备将测试用例转换为自动化测试用例之后,根据自动化测试用例中各步骤执行的先后顺序,执行该自动化测试用例,返回并保存新增的USB类型的id为'res_id',并在执行自动化测试用例过程中分别将'res_id'参数的值修改为“试一试”,“aa”以及“%12_”,在自动化测试用例中执行步骤执行完成后,删除新增的USB类型所对应的'res_id',生成并返回测试报告。
本申请实施例所提供的方案中,将测试文件中的测试用例转换为自动化测试用例,在自动化测试用例中每一步骤设置输入参数以及传值,然后,基于自动化测试用例中每一步骤执行的先后顺序,执行自动化测试用例,返回并保存执行过程中生成的传值,并将传值传输给下一步骤,直到自动化测试用例的所有步骤都执行完成,生成测试报告。因此,本申请实施例所提供的方案中,在自动化测试用例执行过程中,实时保存并返回上一步执行过程中生成的传值,并将该传值传输给下一步骤,以使得下一步骤执行,避免由于不能获取测试用例执行过程中动态生成的参数,导致自动化测试用例无法执行的问题。
实施例二
本申请实施例提供的一种虚拟化平台的自动化测试装置,参见图4,该装置包括:
转换单元401,用于将从测试文件中解析出的测试用例转换为自动化测试用例,其中,所述自动化测试用例中每一步骤至少包括输入参数以及传值;
执行单元402,用于基于所述自动化测试用例中步骤的先后顺序,在执行所述自动化测试用例的第一步骤时,返回并保存所述第一步骤所对应的传值;
控制单元403,用于基于所述第一步骤所对应的传值以及所述第一步骤之后的第二步骤所对应的输入参数控制所述第二步骤执行,直到所述自动化测试用例的所有步骤都执行完成,生成测试报告。
可选地,所述转换单元401,具体用于:
获取所述测试文件,并从所述测试文件中解析出所述测试用例;
确定所述测试用例中每个测试步骤所对应的关键字,从预设的关键字表中选择出每个所述关键字所对应的执行动作;
基于所述测试用例中测试步骤的执行顺序,将选取的执行动作进行组合生成所述自动化测试用例。
可选地,所述传值包括:筛选条件字段、筛选条件字段的值、占位参数以及所述占位参数的值,其中,所述筛选条件字段用于表征所述自动化测试用例中筛选所述传值的字段,所述筛选条件字段的值是指在所述筛选条件字段中筛选的关键词。
可选地,所述执行单元402,具体用于:
判断所述第一步骤执行完成后得到的传值中所述占位参数值是否为空;
若不为空,则记录所述占位参数的名称以及所述占位参数的值;
返回并保存所述占位参数以及所述占位参数的值。
可选地,所述自动化测试用例中每一步骤,还包括:控制参数,其中,所述控制参数包括预设的等待时长和预设的执行次数。
可选地,所述控制单元403,具体用于:
确定所述第二步骤中所包括的所述等待时长、所述执行次数以及所述第一步骤执行完成的时间点,并基于所述第一步骤执行完成的时间点以及所述等待时长确定所述第二步骤开始执行的时间点;
将所述第一步骤所对应的传值以及所述第二步骤所对应的输入参数作为所述第二步骤的输入,基于所述第二步骤开始执行的时间点和所述执行次数控制所述第二步骤执行。
实施例三
本申请提供一种计算设备,参见图5,该计算设备,包括:
存储器501,用于存储至少一个处理器所执行的指令;
处理器502,用于执行存储器中存储的指令执行实施例一所述的方法。
实施例四
本申请提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行实施例一所述的方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (10)

1.一种虚拟化平台的自动化测试方法,其特征在于,包括:
将从测试文件中解析出的测试用例转换为自动化测试用例,其中,所述自动化测试用例中每一步骤至少包括输入参数以及传值;
基于所述自动化测试用例中步骤的先后顺序,在执行所述自动化测试用例的第一步骤时,返回并保存所述第一步骤所对应的传值;
基于所述第一步骤所对应的传值以及所述第一步骤之后的第二步骤所对应的输入参数控制所述第二步骤执行,直到所述自动化测试用例的所有步骤都执行完成,生成测试报告。
2.如权利要求1所述的方法,其特征在于,将从测试文件中解析出的测试用例转换为自动化测试用例,包括:
获取所述测试文件,并从所述测试文件中解析出所述测试用例;
确定所述测试用例中每个测试步骤所对应的关键字,从预设的关键字表中选择出每个所述关键字所对应的执行动作;
基于所述测试用例中测试步骤的执行顺序,将选取的执行动作进行组合生成所述自动化测试用例。
3.如权利要求1或2所述的方法,其特征在于,所述传值包括:筛选条件字段、筛选条件字段的值、占位参数以及所述占位参数的值,其中,所述筛选条件字段用于表征所述自动化测试用例中筛选所述传值的字段,所述筛选条件字段的值是指在所述筛选条件字段中筛选的关键词。
4.如权利要求3所述的方法,其特征在于,返回并保存所述第一步骤所对应的传值,包括:
判断所述第一步骤执行完成后得到的传值中所述占位参数值是否为空;
若不为空,则记录所述占位参数的名称以及所述占位参数的值;
返回并保存所述占位参数以及所述占位参数的值。
5.如权利要求3所述的方法,其特征在于,所述自动化测试用例中每一步骤,还包括:控制参数,其中,所述控制参数包括预设的等待时长和预设的执行次数。
6.如权利要求5所述的方法,其特征在于,基于所述第一步骤所对应的传值以及所述第一步骤之后的第二步骤所对应的输入参数,控制所述第二步骤执行,包括:
确定所述第二步骤中所包括的所述等待时长、所述执行次数以及所述第一步骤执行完成的时间点,并基于所述第一步骤执行完成的时间点以及所述等待时长确定所述第二步骤开始执行的时间点;
将所述第一步骤所对应的传值以及所述第二步骤所对应的输入参数作为所述第二步骤的输入,基于所述第二步骤开始执行的时间点和所述执行次数控制所述第二步骤执行。
7.一种虚拟化平台的自动化测试装置,其特征在于,包括:
转换单元,用于将从测试文件中解析出的测试用例转换为自动化测试用例,其中,所述自动化测试用例中每一步骤至少包括输入参数以及传值;
执行单元,用于基于所述自动化测试用例中步骤的先后顺序,在执行所述自动化测试用例的第一步骤时,返回并保存所述第一步骤所对应的传值;
控制单元,用于基于所述第一步骤所对应的传值以及所述第一步骤之后的第二步骤所对应的输入参数控制所述第二步骤执行,直到所述自动化测试用例的所有步骤都执行完成,生成测试报告。
8.如权利要求7所述的装置,其特征在于,所述转换单元,具体用于:
获取所述测试文件,并从所述测试文件中解析出所述测试用例;
确定所述测试用例中每个测试步骤所对应的关键字,关键字表中选择出每个所述关键字所对应的执行动作;
基于所述测试用例中测试步骤的执行顺序,将选取的执行动作进行组合生成所述自动化测试用例。
9.一种计算设备,其特征在于,所述计算设备,包括:
存储器,用于存储至少一个处理器所执行的指令;
处理器,用于执行存储器中存储的指令执行如权利要求1-6任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机指令,当所述计算机指令在计算机上运行时,使得计算机执行如权利要求1-6任一项所述的方法。
CN201910780216.7A 2019-08-22 2019-08-22 一种虚拟化平台的自动化测试方法及装置 Active CN110532182B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910780216.7A CN110532182B (zh) 2019-08-22 2019-08-22 一种虚拟化平台的自动化测试方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910780216.7A CN110532182B (zh) 2019-08-22 2019-08-22 一种虚拟化平台的自动化测试方法及装置

Publications (2)

Publication Number Publication Date
CN110532182A true CN110532182A (zh) 2019-12-03
CN110532182B CN110532182B (zh) 2023-05-16

Family

ID=68662653

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910780216.7A Active CN110532182B (zh) 2019-08-22 2019-08-22 一种虚拟化平台的自动化测试方法及装置

Country Status (1)

Country Link
CN (1) CN110532182B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112115040A (zh) * 2020-06-30 2020-12-22 上海金融期货信息技术有限公司 一种去中心化的自动化测试管理系统和方法
CN112231210A (zh) * 2020-10-13 2021-01-15 中移(杭州)信息技术有限公司 网络功能虚拟化环境下的测试方法、设备及存储介质
CN112667495A (zh) * 2020-12-08 2021-04-16 上海纳恩汽车技术股份有限公司 一种自动化测试用例关键字管理系统及方法
CN114297081A (zh) * 2021-12-30 2022-04-08 深圳市捷顺科技实业股份有限公司 一种自动化测试方法以及相关设备

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1527509A (zh) * 2003-03-06 2004-09-08 华为技术有限公司 一种测试方法
US20120198280A1 (en) * 2011-01-28 2012-08-02 International Business Machines Corporation Test cases generation for different test types
CN105407012A (zh) * 2015-10-27 2016-03-16 浪潮(北京)电子信息产业有限公司 一种自动化测试方法及装置
CN107608880A (zh) * 2017-08-24 2018-01-19 郑州云海信息技术有限公司 一种基于数据驱动用于虚拟化平台的自动化测试方法
CN108400906A (zh) * 2018-02-07 2018-08-14 北京天融信网络安全技术有限公司 一种自动化测试方法、装置、存储介质及计算机设备
CN108897687A (zh) * 2018-06-29 2018-11-27 泰华智慧产业集团股份有限公司 一种基于数据驱动的api自动化测试方法和系统
CN109086199A (zh) * 2018-06-22 2018-12-25 网宿科技股份有限公司 一种自动化生成测试脚本的方法、终端和可存储介质
CN109783346A (zh) * 2018-12-05 2019-05-21 深圳怡化电脑股份有限公司 基于关键字驱动的自动化测试方法、装置及终端设备

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1527509A (zh) * 2003-03-06 2004-09-08 华为技术有限公司 一种测试方法
US20120198280A1 (en) * 2011-01-28 2012-08-02 International Business Machines Corporation Test cases generation for different test types
CN105407012A (zh) * 2015-10-27 2016-03-16 浪潮(北京)电子信息产业有限公司 一种自动化测试方法及装置
CN107608880A (zh) * 2017-08-24 2018-01-19 郑州云海信息技术有限公司 一种基于数据驱动用于虚拟化平台的自动化测试方法
CN108400906A (zh) * 2018-02-07 2018-08-14 北京天融信网络安全技术有限公司 一种自动化测试方法、装置、存储介质及计算机设备
CN109086199A (zh) * 2018-06-22 2018-12-25 网宿科技股份有限公司 一种自动化生成测试脚本的方法、终端和可存储介质
CN108897687A (zh) * 2018-06-29 2018-11-27 泰华智慧产业集团股份有限公司 一种基于数据驱动的api自动化测试方法和系统
CN109783346A (zh) * 2018-12-05 2019-05-21 深圳怡化电脑股份有限公司 基于关键字驱动的自动化测试方法、装置及终端设备

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
SONG HAIQIAO: "Design of Automatic Test Platform for Test System", 《JOURNAL OF TEST AND MEASUREMENT TECHNOLOGY》 *
古红锋: "IPSec VPN产品测试平台设计与实现", 《中国优秀硕士学位论文全文数据库 (信息科技辑)》 *
崔丽: "软件测试自动化框架", 《电子与电脑》 *
张丽波: "软件自动化测试的设计与实施", 《佳木斯大学学报(自然科学版)》 *
徐嘉枫: "基于Jenkins和LAMP的Web自动化测试系统的设计与实现", 《中国优秀硕士学位论文全文数据库 (信息科技辑)》 *
沈大框等: "基于Selenium的Web自动化测试解释器", 《计算机系统应用》 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112115040A (zh) * 2020-06-30 2020-12-22 上海金融期货信息技术有限公司 一种去中心化的自动化测试管理系统和方法
CN112231210A (zh) * 2020-10-13 2021-01-15 中移(杭州)信息技术有限公司 网络功能虚拟化环境下的测试方法、设备及存储介质
CN112667495A (zh) * 2020-12-08 2021-04-16 上海纳恩汽车技术股份有限公司 一种自动化测试用例关键字管理系统及方法
CN114297081A (zh) * 2021-12-30 2022-04-08 深圳市捷顺科技实业股份有限公司 一种自动化测试方法以及相关设备

Also Published As

Publication number Publication date
CN110532182B (zh) 2023-05-16

Similar Documents

Publication Publication Date Title
CN110532182A (zh) 一种虚拟化平台的自动化测试方法及装置
CN109542791B (zh) 一种基于容器技术的程序大规模并发评测方法
WO2017113912A1 (zh) 物理层软件自动化测试方法和装置
US9465718B2 (en) Filter generation for load testing managed environments
CN106446412B (zh) 一种航空电子系统基于模型的测试方法
CN103092751B (zh) 一种云环境下基于用户行为模型的web应用性能测试系统
US20130298110A1 (en) Software Visualization Using Code Coverage Information
CN110401634A (zh) 一种Web应用漏洞检测规则引擎实现方法及终端
CN107220172A (zh) 通过模型驱动技术进行自动用户界面(ui)测试的方法和系统
CN109783388A (zh) Ui自动化测试方法、装置及电子设备
CN111767226B (zh) 一种云计算平台资源的测试方法、系统及设备
CN110071822A (zh) 一种针对5g核心网基础设施的测试装置及测试方法
CN111309620B (zh) 一种游戏协议测试方法、装置、电子设备和存储介质
CN108459951A (zh) 测试方法和装置
CN117112060A (zh) 组件库构建方法、装置、电子设备及存储介质
CN113868120A (zh) 工业软件调试方法、装置、计算机设备和存储介质
CN115658496A (zh) 可扩展的Web自动化测试方法、系统、设备及存储介质
CN112860587B (zh) Ui自动测试方法和装置
CN114416547A (zh) 基于测试用例的测试方法
CN113064816A (zh) 一种可编程逻辑器件软件的测试装置及测试方法
CN116561003A (zh) 测试数据生成方法、装置、计算机设备和存储介质
CN116719735A (zh) 一种测试用例生成方法及装置
CN107622013B (zh) 一种分布式系统测试方法及装置
CN115470152A (zh) 测试代码生成方法、测试代码生成装置以及存储介质
CN113590564B (zh) 数据存储方法、装置、电子设备及存储介质

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