CN108197022A - 软件自动化测试方法、系统及计算机可读存储介质 - Google Patents
软件自动化测试方法、系统及计算机可读存储介质 Download PDFInfo
- Publication number
- CN108197022A CN108197022A CN201711467865.9A CN201711467865A CN108197022A CN 108197022 A CN108197022 A CN 108197022A CN 201711467865 A CN201711467865 A CN 201711467865A CN 108197022 A CN108197022 A CN 108197022A
- Authority
- CN
- China
- Prior art keywords
- information
- case
- test
- test case
- actuator
- 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.)
- Pending
Links
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/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/3684—Test management for test design, e.g. generating new test cases
Abstract
本发明公开了一种软件自动化测试方法、系统及计算机可读存储介质,所述软件自动化测试方法包括:接收批量的测试用例,获取所述批量的测试用例中各个测试用例对应的用例信息;根据所述各个测试用例对应的用例信息,确定各个测试用例对应的目标执行器以及目标环境;将各个测试用例分配至对应的所述目标执行器中,并在所述目标环境中执行。通过本发明,实现了智能分配测试用例,实现了测试用例的同时批跑,降低了人工成本,提高了软件自动化测试效率。
Description
技术领域
本发明涉及软件测试技术领域,尤其涉及软件自动化测试方法、系统及计算机可读存储介质。
背景技术
软件产业作为拉动信息产业发展的动力引擎,是经济社会发展的基础性、战略性和先导性产业,在推动信息化与工业化融合、转变经济发展方式、促进产业结构调整、维护国家安全等方面发挥着重要作用。在当前复杂多变的经济形势下,依托庞大的内需市场,我国软件产业仍然保持了平稳较快的增长态势。提供软件产品质量,既是软件产业自身发展的需要,也是服务于国民经济建设的需要。
软件测试作为软件质量的最后一道防线,往往是任务多,时间紧,责任重,工作繁琐,重复性高,很多公司使用或自主开发了自动化测试工具,来提高软件测试工作的效率。但是,在软件自动化测试中对于测试用例的设计要十分严格与全面,对一些使用环境复杂、功能复杂的软件需要上万的测试用例,上万的测试用例批量串行跑需要大量的时间,严重影响软件测试效率。
发明内容
本发明的主要目的在于提供一种软件自动化测试方法、系统及计算机可读存储介质,旨在解决现有技术中软件测试效率低下的技术问题。
为实现上述目的,本发明提供一种软件自动化测试方法,所述软件自动化测试方法包括:
接收批量的测试用例,获取所述批量的测试用例中各个测试用例对应的用例信息;
根据所述各个测试用例对应的用例信息,确定各个测试用例对应的目标执行器以及目标环境;
将各个测试用例分配至对应的所述目标执行器中,并在所述目标环境中执行。
可选的,所述获取所述批量的测试用例中各个测试用例对应的用例信息包括:
获取所述批量的测试用例中各个测试用例携带的用例ID;
根据所述各个测试用例携带的用例ID,在预置测试用例库中获取各个测试用例对应的用例信息。
可选的,所述根据所述各个测试用例对应的用例信息,确定各个测试用例对应的目标执行器以及目标环境包括:
检测单个测试用例对应的用例信息中是否包含指定执行器信息以及指定环境信息;
若所述用例信息中包含指定执行器信息以及指定环境信息,则根据所述指定执行器信息确定所述测试用例对应的目标执行器,根据所述指定环境信息确定所述测试用例对应的目标环境。
可选的,所述检测单个测试用例对应的用例信息中是否包含指定执行器信息以及指定环境信息之后包括:
若所述用例信息中包含指定执行器信息,但不包含指定环境信息,则检测所述用例信息中是否包含拓扑信息;
若所述用例信息中包含拓扑信息,则根据所述指定执行器信息确定所述测试用例对应的目标执行器,根据所述拓扑信息确定所述测试用例对应的目标环境。
可选的,所述若所述用例信息中包含指定执行器信息,但不包含指定环境信息,则检测所述用例信息中是否包含拓扑信息之后包括:
若所述用例信息中不包括拓扑信息,则查找空闲环境;
根据所述指定执行器信息确定所述测试用例对应的目标执行器,根据所述空闲环境确定所述测试用例对应的目标环境。
可选的,所述检测单个测试用例对应的用例信息中是否包含指定执行器信息以及指定环境信息还包括:
若所述用例信息中不包含指定执行器信息,但包含指定环境信息,则查找空闲执行器;
根据所述空闲执行器确定所述测试用例对应的目标执行器,根据所述指定环境信息确定所述测试用例对应的目标环境。
可选的,所述检测单个测试用例对应的用例信息中是否包含指定执行器信息以及指定环境信息之后还包括:
若所述用例信息中不包含指定执行器信息,也不包含指定环境信息,则检测所述用例信息中是否包含拓扑信息;
若所述用例信息中包含拓扑信息,则根据所述拓扑信息确定所述测试用例对应的目标环境;
查找空闲执行器,根据所述空闲执行器确定所述测试用例对应的目标执行器。
可选的,所述将各个测试用例分配至对应的所述目标执行器中,并在所述目标环境中执行之后包括:
收集各个目标执行器的执行结果,根据所述执行结果输出测试报告。
此外,为实现上述目的,本发明还提供一种软件自动化测试系统,所述软件自动化测试系统包括:执行器、存储器、处理器及存储在所述存储器上并可在所述处理器上运行的软件自动化测试程序,所述软件自动化测试程序被所述处理器执行时实现如上所述的软件自动化测试方法的步骤。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有软件自动化测试程序,所述软件自动化测试程序被处理器执行时实现如上所述的软件自动化测试方法的步骤。
本发明中,当接收到批量的测试用例,获取该批量的测试用例中各个测试用例对应的用例信息,根据各个测试用例对应的用例信息,确定各个测试用例对应的目标执行器以及目标环境,将各个测试用例分配至对应的目标执行器中,并在目标环境中执行。通过本发明,实现了智能分配测试用例,实现了测试用例的同时批跑,降低了人工成本,提高了软件自动化测试效率。
附图说明
图1是本发明软件自动化测试系统一实施例的结构示意图;
图2为本发明软件自动化测试方法第一实施例的流程示意图;
图3为软件自动化测试系统一实施例的场景示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
如图1所示,图1是本发明软件自动化测试系统一实施例的结构示意图。
如图1所示,软件自动化测试系统可以包括:处理器1001,例如CPU,网络接口1004,用户接口1003,存储器1005,通信总线1002,执行器组1006。其中,通信总线1002用于实现这些组件之间的连接通信。用户接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。执行器组1006中可以包含若干执行器,执行器用于在测试用例所需的环境中执行测试用例。
本领域技术人员可以理解,图1中示出的软件自动化测试系统结构并不构成对软件自动化测试系统的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及软件自动化测试程序。
在图1所示的软件自动化测试系统中,网络接口1004主要用于连接后台服务器,与后台服务器进行数据通信;用户接口1003主要用于连接客户端(用户端),与客户端进行数据通信;而处理器1001可以用于调用存储器1005中存储的软件自动化测试程序,并执行以下操作:
接收批量的测试用例,获取所述批量的测试用例中各个测试用例对应的用例信息;
根据所述各个测试用例对应的用例信息,确定各个测试用例对应的目标执行器以及目标环境;
将各个测试用例分配至对应的所述目标执行器中,并在所述目标环境中执行。
进一步地,所述获取所述批量的测试用例中各个测试用例对应的用例信息包括:
获取所述批量的测试用例中各个测试用例携带的用例ID;
根据所述各个测试用例携带的用例ID,在预置测试用例库中获取各个测试用例对应的用例信息。
进一步地,所述根据所述各个测试用例对应的用例信息,确定各个测试用例对应的目标执行器以及目标环境包括:
检测单个测试用例对应的用例信息中是否包含指定执行器信息以及指定环境信息;
若所述用例信息中包含指定执行器信息以及指定环境信息,则根据所述指定执行器信息确定所述测试用例对应的目标执行器,根据所述指定环境信息确定所述测试用例对应的目标环境。
进一步地,所述检测单个测试用例对应的用例信息中是否包含指定执行器信息以及指定环境信息之后包括:
若所述用例信息中包含指定执行器信息,但不包含指定环境信息,则检测所述用例信息中是否包含拓扑信息;
若所述用例信息中包含拓扑信息,则根据所述指定执行器信息确定所述测试用例对应的目标执行器,根据所述拓扑信息确定所述测试用例对应的目标环境。
进一步地,所述若所述用例信息中包含指定执行器信息,但不包含指定环境信息,则检测所述用例信息中是否包含拓扑信息之后包括:
若所述用例信息中不包括拓扑信息,则查找空闲环境;
根据所述指定执行器信息确定所述测试用例对应的目标执行器,根据所述空闲环境确定所述测试用例对应的目标环境。
进一步地,所述检测单个测试用例对应的用例信息中是否包含指定执行器信息以及指定环境信息还包括:
若所述用例信息中不包含指定执行器信息,但包含指定环境信息,则查找空闲执行器;
根据所述空闲执行器确定所述测试用例对应的目标执行器,根据所述指定环境信息确定所述测试用例对应的目标环境。
进一步地,所述检测单个测试用例对应的用例信息中是否包含指定执行器信息以及指定环境信息之后还包括:
若所述用例信息中不包含指定执行器信息,也不包含指定环境信息,则检测所述用例信息中是否包含拓扑信息;
若所述用例信息中包含拓扑信息,则根据所述拓扑信息确定所述测试用例对应的目标环境;
查找空闲执行器,根据所述空闲执行器确定所述测试用例对应的目标执行器。
进一步地,所述将各个测试用例分配至对应的所述目标执行器中,并在所述目标环境中执行之后包括:
收集各个目标执行器的执行结果,根据所述执行结果输出测试报告。
参照图2,图2为本发明软件自动化测试方法第一实施例的流程示意图。
在一实施例中,软件自动化测试方法包括:
步骤S10,接收批量的测试用例,获取所述批量的测试用例中各个测试用例对应的用例信息;
本实施例中,软件自动化测试方法运行于软件自动化测试系统上,参照图3,图3为软件自动化测试系统一实施例的场景示意图。软件自动化测试系统中包括调度中心、若干个执行器、若干测试环境、测试用例库。其中,调度中心可根据批量的测试用例中各个测试用例携带的用例ID,在测试用例库汇总获取各个测试用例对应的用例信息,然后根据用例信息,智能的为各个测试用例匹配对应的执行器及测试环境,以供在各个测试用例对应的执行器及测试环境中执行各个测试用例。
本发明一可选实施例中,当接收到批量的测试用例,例如,该批量的测试用例由10个测试用例组成,分别为:测试用例1、测试用例2、测试用例3、测试用例4、测试用例5、测试用例6、测试用例7、测试用例8、测试用例9、测试用例10。其中,测试用例1携带的用例ID为A1,测试用例2携带的用例ID为A2,测试用例3携带的用例ID为A3,测试用例4携带的用例ID为A4,测试用例5携带的用例ID为A5,测试用例6携带的用例ID为A6,测试用例7携带的用例ID为A7,测试用例8携带的用例ID为A8,测试用例9携带的用例ID为A9,测试用例10携带的用例ID为A10。如表1所示,表1为一实施例中测试用例库的示意表。
表1
用例ID | 用例信息 |
A1 | a |
A2 | b |
A3 | c |
A4 | d |
… | … |
An | n |
在得到各个测试用例携带的用例ID信息后,便可通过查表的方式,在测试用例库中获取各个测试用例对应的用例信息。
本实施例中,用例信息中包含了对应的测试用例的运行条件。仅需在各个测试用例中写入对应的用例ID信息,软件自动化系统在接收到批量的测试用例后,从批量的测试用例中各个测试用例中提取携带的用例ID信息,即可从测试用例库中,得到各个测试用例对应的用例信息,即得到各个测试用例的运行条件。无需用户将各个测试用例的运行条件写入测试用例中,减少了用户工作量,提高了软件测试工作的效率。
步骤S20,根据所述各个测试用例对应的用例信息,确定各个测试用例对应的目标执行器以及目标环境;
步骤S30,将各个测试用例分配至对应的所述目标执行器中,并在所述目标环境中执行。
本发明一实施例中,用例信息中包含了对应的测试用例的运行条件。例如:
测试用例1,对应用例信息a,用例信息a中包含的运行条件为:执行器a1,测试环境a1,即用例信息a中指定了测试用例1所需的执行器及测试环境,调度中心根据用例信息a将测试用例1分配在执行器a1上、测试环境a1中执行。
测试用例2,对应用例信息b,用例信息a中包含的运行条件为:执行器a1,拓扑信息A(例如指第一类测试环境,Windows系统),即用例信息b中指定了测试用例2所需的执行器,但没有指定测试用例2所需的具体测试环境,仅指定了测试用例2所需的第一类测试环境,调度中心根据用例信息b将测试用例2分配在执行器a1上、第一类测试环境中的空闲环境中(在软件自动化测试系统中的第一类测试环境中查找空闲的环境,并选取一个空闲的测试环境,可以是随机选择)执行。
测试用例3,对应用例信息c,用例信息c中包含的运行条件为:执行器a1,即用例信息c中仅指定了测试用例3所需的执行器a1,测试用例3对测试环境没有要求,调度中心根据用例信息c将测试用例3分配至执行器a1上、空闲的测试环境(在软件自动化测试系统中所有的测试环境中查找空闲的环境,并选取一个空闲的测试环境,可以是随机选择)中执行。
测试用例4,对应用例信息d,用例信息d中包含的运行条件为:第一类型执行器,测试环境a1。即用例信息d中指定了测试用例4所需的执行器类型和测试环境a1。调度中心根据用例信息d将测试用例4分配至第一类执行器中空闲的执行器上(在第一类执行器中查找空闲的执行器,并选取一个空闲的执行器,可以是随机选择)、测试环境a1中执行。
测试用例5,对应用例信息e,用例信息e中包含的运行条件为:第一类型执行器,拓扑信息A(例如指第一类测试环境,Windows系统)。即用例信息e中指定了测试用例5所需的执行器类型和测试环境的类型。调度中心根据用例信息e将测试用例5分配至第一类执行器中空闲的执行器上(在第一类执行器中查找空闲的执行器,并选取一个空闲的执行器,可以是随机选择)、第一类测试环境中的空闲环境中(在软件自动化测试系统中的第一类测试环境中查找空闲的环境,并选取一个空闲的测试环境,可以是随机选择)执行。
测试用例6,对应用例信息f,用例信息f中包含的运行条件为:第一类型执行器。即用例信息f中仅指定了测试用例6所需的执行器类型,测试用例6对测试环境没有要求,调度中心根据用例信息f将测试用例6分配至第一类执行器中空闲的执行器上(在第一类执行器中查找空闲的执行器,并选取一个空闲的执行器,可以是随机选择)、空闲的测试环境(在软件自动化测试系统中所有的测试环境中查找空闲的环境,并选取一个空闲的测试环境,可以是随机选择)中执行。
测试用例7,对应用例信息g,用例信息g包含的运行条件为:测试环境a1。即用例信息g中仅指定了测试用例7所需的测试环境a1,测试用例7对执行器没有要求。调度中心根据用例信息g将测试用例7分配至空闲的执行器上(在软件自动化测试系统中的所有执行器中查找空闲的执行器,并随机选取一个空闲的执行器)、测试环境a1中执行。
测试用例8,对应用例信息h,用例信息h包含的运行条件为:拓扑信息A(例如指第一类测试环境,Windows系统)。即用例信息h中仅指定了测试用例8所需的测试环境类型,测试用例8对执行器没有要求。调度中心根据用例信息h将测试用例8分配至空闲的执行器上(在软件自动化测试系统中的所有执行器中查找空闲的执行器,并随机选取一个空闲的执行器)、第一类测试环境中的空闲环境中(在软件自动化测试系统中的第一类测试环境中查找空闲的环境,并选取一个空闲的测试环境,可以是随机选择)执行。
测试用例9,对应用例信息i,用例信息i包含的运行条件为:无。即测试用例9对执行器及测试环境均没有要求。调度中心根据用例信息i将测试用例9分配至空闲的执行器上(在软件自动化测试系统中的所有执行器中查找空闲的执行器,并随机选取一个空闲的执行器)、空闲的测试环境(在软件自动化测试系统中所有的测试环境中查找空闲的环境,并选取一个空闲的测试环境,可以是随机选择)中执行。
测试用例10,对应用例信息a,用例信息a中包含的运行条件为:执行器a1,测试环境a1,即用例信息a中指定了测试用例1所需的执行器及测试环境,调度中心根据用例信息a将测试用例1分配在执行器a1上、测试环境a1中执行。也就是说测试用例10与测试用例1被分配至同一执行器a1上,且测试环境相同。这时,执行器a1可以根据测试用例1与测试用例10的优先级确定执行顺序。若测试用例1的优先级大于测试用例10,则先执行测试用例1,若测试用例10的优先级大于测试用例1,则先执行测试用例10。优先级信息可写入测试用例中。
本发明另一可选实施例中,比如我们有一万条测试用例,其中一部分测试用例要在指定执行器、指定的环境上执行,其中一部分测试用例要在一类执行器,一类环境上执行,剩余的测试用例可以在任意执行器,任意环境上执行,软件自动化测试系统会智能的将用例分成n块(由用户自定义设置n值的大小),测试用例一块一块下发到执行器,测试用例执行快的执行器会分配更多的测试用例,测试用例执行慢的执行器分配的测试用例少(软件自动化测试系统会统计各个执行器执行一个测试用例所需的时间,从而确定哪些执行器执行速度快,哪些执行器执行速度慢),充分的利用执行器与环境的资源,合理分配,资源利用最大化,大大的节省了测试用例整体的执行时间。
本实施例中,当接收到批量的测试用例,获取该批量的测试用例中各个测试用例对应的用例信息,根据各个测试用例对应的用例信息,确定各个测试用例对应的目标执行器以及目标环境,将各个测试用例分配至对应的目标执行器中,并在目标环境中执行。通过本实施例,实现了智能分配测试用例,实现了测试用例的同时批跑,降低了人工成本,提高了软件自动化测试效率。
进一步的,本发明软件自动测试方法一实施例中,所述获取所述批量的测试用例中各个测试用例对应的用例信息包括:
获取所述批量的测试用例中各个测试用例携带的用例ID;
根据所述各个测试用例携带的用例ID,在预置测试用例库中获取各个测试用例对应的用例信息。
本发明一可选实施例中,当接收到批量的测试用例,例如,该批量的测试用例由10个测试用例组成,分别为:测试用例1、测试用例2、测试用例3、测试用例4、测试用例5、测试用例6、测试用例7、测试用例8、测试用例9、测试用例10。其中,测试用例1携带的用例ID为A1,测试用例2携带的用例ID为A2,测试用例3携带的用例ID为A3,测试用例4携带的用例ID为A4,测试用例5携带的用例ID为A5,测试用例6携带的用例ID为A6,测试用例7携带的用例ID为A7,测试用例8携带的用例ID为A8,测试用例9携带的用例ID为A9,测试用例10携带的用例ID为A10。如表1所示,表1为一实施例中测试用例库的示意表。
表1
用例ID | 用例信息 |
A1 | a |
A2 | b |
A3 | c |
A4 | d |
… | … |
An | n |
在得到各个测试用例携带的用例ID信息后,便可通过查表的方式,在测试用例库中获取各个测试用例对应的用例信息。
本实施例中,用例信息中包含了对应的测试用例的运行条件。仅需在各个测试用例中写入对应的用例ID信息,软件自动化系统在接收到批量的测试用例后,从批量的测试用例中各个测试用例中提取携带的用例ID信息,即可从测试用例库中,得到各个测试用例对应的用例信息,即得到各个测试用例的运行条件。无需用户将各个测试用例的运行条件写入测试用例中,减少了用户工作量,提高了软件测试工作的效率。
进一步的,本发明软件自动测试方法一实施例中,步骤S20包括:
检测单个测试用例对应的用例信息中是否包含指定执行器信息以及指定环境信息;
若所述用例信息中包含指定执行器信息以及指定环境信息,则根据所述指定执行器信息确定所述测试用例对应的目标执行器,根据所述指定环境信息确定所述测试用例对应的目标环境。
本实施例中,若测试用例1,对应用例信息a,用例信息a中包含的运行条件为:执行器a1,测试环境a1,即用例信息a中指定了测试用例1所需的执行器及测试环境,调度中心根据用例信息a将测试用例1分配在执行器a1上(即目标执行器)、测试环境a1(即目标环境)中执行。
本实施例中,根据用例信息中包含的测试用例的运行需求,将测试用例分配至对应的目标执行器在目标环境中执行,保证了测试用例可被正确执行。
进一步的,本发明软件自动测试方法一实施例中,所述检测单个测试用例对应的用例信息中是否包含指定执行器信息以及指定环境信息之后包括:
若所述用例信息中包含指定执行器信息,但不包含指定环境信息,则检测所述用例信息中是否包含拓扑信息;
若所述用例信息中包含拓扑信息,则根据所述指定执行器信息确定所述测试用例对应的目标执行器,根据所述拓扑信息确定所述测试用例对应的目标环境。
本实施例中,若测试用例2,对应用例信息b,用例信息a中包含的运行条件为:执行器a1,拓扑信息A(例如指第一类测试环境,Windows系统),即用例信息b中指定了测试用例2所需的执行器,但没有指定测试用例2所需的具体测试环境,仅指定了测试用例2所需的第一类测试环境,调度中心根据用例信息b将测试用例2分配在执行器a1(即目标执行器)上、第一类测试环境中的空闲环境中(即目标环境,在软件自动化测试系统中的第一类测试环境中查找空闲的环境,并选取一个空闲的测试环境,可以是随机选择)执行。
本实施例中,根据用例信息中包含的测试用例的运行需求,将测试用例分配至指定执行器上,并在其所需测试环境类型中找到空闲环境中执行。实现了资源利用最大化,大大节省了测试用例整体的执行时间。
进一步的,本发明软件自动测试方法一实施例中,所述若所述用例信息中包含指定执行器信息,但不包含指定环境信息,则检测所述用例信息中是否包含拓扑信息之后包括:
若所述用例信息中不包括拓扑信息,则查找空闲环境;
根据所述指定执行器信息确定所述测试用例对应的目标执行器,根据所述空闲环境确定所述测试用例对应的目标环境。
本实施例中,若测试用例3,对应用例信息c,用例信息c中包含的运行条件为:执行器a1,即用例信息c中仅指定了测试用例3所需的执行器a1,测试用例3对测试环境没有要求,调度中心根据用例信息c将测试用例3分配至执行器a1上、空闲的测试环境(在软件自动化测试系统中所有的测试环境中查找空闲的环境,并选取一个空闲的测试环境,可以是随机选择)中执行。
本实施例中,根据用例信息中包含的测试用例的运行需求,将测试用例分配至指定执行器上,并在空闲测试环境中执行。实现了资源利用最大化,大大节省了测试用例整体的执行时间。
进一步的,本发明软件自动测试方法一实施例中,所述检测单个测试用例对应的用例信息中是否包含指定执行器信息以及指定环境信息还包括:
若所述用例信息中不包含指定执行器信息,但包含指定环境信息,则查找空闲执行器;
根据所述空闲执行器确定所述测试用例对应的目标执行器,根据所述指定环境信息确定所述测试用例对应的目标环境。
本实施例中,若测试用例7,对应用例信息g,用例信息g包含的运行条件为:测试环境a1。即用例信息g中仅指定了测试用例7所需的测试环境a1,测试用例7对执行器没有要求。调度中心根据用例信息g将测试用例7分配至空闲的执行器上(在软件自动化测试系统中的所有执行器中查找空闲的执行器,并随机选取一个空闲的执行器)、测试环境a1中执行。
本实施例中,根据用例信息中包含的测试用例的运行需求,将测试用例分配至空闲执行器上,并在指定测试环境中执行。实现了资源利用最大化,大大节省了测试用例整体的执行时间。
进一步的,本发明软件自动测试方法一实施例中,所述检测单个测试用例对应的用例信息中是否包含指定执行器信息以及指定环境信息之后还包括:
若所述用例信息中不包含指定执行器信息,也不包含指定环境信息,则检测所述用例信息中是否包含拓扑信息;
若所述用例信息中包含拓扑信息,则根据所述拓扑信息确定所述测试用例对应的目标环境;
查找空闲执行器,根据所述空闲执行器确定所述测试用例对应的目标执行器。
本实施例中,若测试用例8,对应用例信息h,用例信息h包含的运行条件为:拓扑信息A(例如指第一类测试环境,Windows系统)。即用例信息h中仅指定了测试用例8所需的测试环境类型,测试用例8对执行器没有要求。调度中心根据用例信息h将测试用例8分配至空闲的执行器上(在软件自动化测试系统中的所有执行器中查找空闲的执行器,并随机选取一个空闲的执行器)、第一类测试环境中的空闲环境中(在软件自动化测试系统中的第一类测试环境中查找空闲的环境,并选取一个空闲的测试环境,可以是随机选择)执行。
本实施例中,根据用例信息中包含的测试用例的运行需求,将测试用例分配至空闲执行器上,并在其所需测试环境类型中找到空闲环境中执行。实现了资源利用最大化,大大节省了测试用例整体的执行时间。
进一步的,本发明软件自动测试方法一实施例中,步骤S30之后包括:
收集各个目标执行器的执行结果,根据所述执行结果输出测试报告。
本实施例中,收集各个执行器的执行结果,根据执行结果输出测试报告,用户通过测试报告可以查看到各个测试用例的测试结果,以便对相关软件进行优化。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有软件自动测试程序,所述软件自动测试程序被处理器执行时实现如上所述的软件自动测试方法的步骤。
本发明计算机可读存储介质的具体实施例与上述软件自动测试方法的各个实施例基本相同,在此不做赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,空调器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种软件自动化测试方法,其特征在于,所述软件自动化测试方法包括:
接收批量的测试用例,获取所述批量的测试用例中各个测试用例对应的用例信息;
根据所述各个测试用例对应的用例信息,确定各个测试用例对应的目标执行器以及目标环境;
将各个测试用例分配至对应的所述目标执行器中,并在所述目标环境中执行。
2.如权利要求1所述的软件自动化测试方法,其特征在于,所述获取所述批量的测试用例中各个测试用例对应的用例信息包括:
获取所述批量的测试用例中各个测试用例携带的用例ID;
根据所述各个测试用例携带的用例ID,在预置测试用例库中获取各个测试用例对应的用例信息。
3.如权利要求1所述的软件自动化测试方法,其特征在于,所述根据所述各个测试用例对应的用例信息,确定各个测试用例对应的目标执行器以及目标环境包括:
检测单个测试用例对应的用例信息中是否包含指定执行器信息以及指定环境信息;
若所述用例信息中包含指定执行器信息以及指定环境信息,则根据所述指定执行器信息确定所述测试用例对应的目标执行器,根据所述指定环境信息确定所述测试用例对应的目标环境。
4.如权利要求3所述的软件自动化测试方法,其特征在于,所述检测单个测试用例对应的用例信息中是否包含指定执行器信息以及指定环境信息之后包括:
若所述用例信息中包含指定执行器信息,但不包含指定环境信息,则检测所述用例信息中是否包含拓扑信息;
若所述用例信息中包含拓扑信息,则根据所述指定执行器信息确定所述测试用例对应的目标执行器,根据所述拓扑信息确定所述测试用例对应的目标环境。
5.如权利要求4所述的软件自动化测试方法,其特征在于,所述若所述用例信息中包含指定执行器信息,但不包含指定环境信息,则检测所述用例信息中是否包含拓扑信息之后包括:
若所述用例信息中不包括拓扑信息,则查找空闲环境;
根据所述指定执行器信息确定所述测试用例对应的目标执行器,根据所述空闲环境确定所述测试用例对应的目标环境。
6.如权利要求3所述的软件自动化测试方法,其特征在于,所述检测单个测试用例对应的用例信息中是否包含指定执行器信息以及指定环境信息还包括:
若所述用例信息中不包含指定执行器信息,但包含指定环境信息,则查找空闲执行器;
根据所述空闲执行器确定所述测试用例对应的目标执行器,根据所述指定环境信息确定所述测试用例对应的目标环境。
7.如权利要求3所述的软件自动化测试方法,其特征在于,所述检测单个测试用例对应的用例信息中是否包含指定执行器信息以及指定环境信息之后还包括:
若所述用例信息中不包含指定执行器信息,也不包含指定环境信息,则检测所述用例信息中是否包含拓扑信息;
若所述用例信息中包含拓扑信息,则根据所述拓扑信息确定所述测试用例对应的目标环境;
查找空闲执行器,根据所述空闲执行器确定所述测试用例对应的目标执行器。
8.如权利要求1所述的软件自动化测试方法,其特征在于,所述将各个测试用例分配至对应的所述目标执行器中,并在所述目标环境中执行之后包括:
收集各个目标执行器的执行结果,根据所述执行结果输出测试报告。
9.一种软件自动化测试系统,其特征在于,所述软件自动化测试系统包括:执行器、存储器、处理器及存储在所述存储器上并可在所述处理器上运行的软件自动化测试程序,所述软件自动化测试程序被所述处理器执行时实现如权利要求1至8中任一项所述的软件自动化测试方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有软件自动化测试程序,所述软件自动化测试程序被处理器执行时实现如权利要求1至8中任一项所述的软件自动化测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711467865.9A CN108197022A (zh) | 2017-12-28 | 2017-12-28 | 软件自动化测试方法、系统及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711467865.9A CN108197022A (zh) | 2017-12-28 | 2017-12-28 | 软件自动化测试方法、系统及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108197022A true CN108197022A (zh) | 2018-06-22 |
Family
ID=62586213
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711467865.9A Pending CN108197022A (zh) | 2017-12-28 | 2017-12-28 | 软件自动化测试方法、系统及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108197022A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110874319A (zh) * | 2018-09-03 | 2020-03-10 | 广州神马移动信息科技有限公司 | 自动化测试方法、平台、设备及计算机可读存储介质 |
CN114741281A (zh) * | 2022-03-28 | 2022-07-12 | 慧之安信息技术股份有限公司 | 基于操作系统的批量软件测试系统和方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101110734A (zh) * | 2007-08-24 | 2008-01-23 | 福建星网锐捷网络有限公司 | 自动化测试方法及系统 |
CN101706799A (zh) * | 2009-11-20 | 2010-05-12 | 中兴通讯股份有限公司 | 一种实现自动化测试的方法和装置 |
CN104978258A (zh) * | 2014-04-01 | 2015-10-14 | 中国银联股份有限公司 | 软件自动化测试方法及系统 |
CN105786667A (zh) * | 2016-02-29 | 2016-07-20 | 惠州Tcl移动通信有限公司 | 一种分布式自动化测试方法及系统 |
CN106095673A (zh) * | 2016-06-07 | 2016-11-09 | 深圳市泰久信息系统股份有限公司 | 基于web接口的自动化测试方法及系统 |
-
2017
- 2017-12-28 CN CN201711467865.9A patent/CN108197022A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101110734A (zh) * | 2007-08-24 | 2008-01-23 | 福建星网锐捷网络有限公司 | 自动化测试方法及系统 |
CN101706799A (zh) * | 2009-11-20 | 2010-05-12 | 中兴通讯股份有限公司 | 一种实现自动化测试的方法和装置 |
CN104978258A (zh) * | 2014-04-01 | 2015-10-14 | 中国银联股份有限公司 | 软件自动化测试方法及系统 |
CN105786667A (zh) * | 2016-02-29 | 2016-07-20 | 惠州Tcl移动通信有限公司 | 一种分布式自动化测试方法及系统 |
CN106095673A (zh) * | 2016-06-07 | 2016-11-09 | 深圳市泰久信息系统股份有限公司 | 基于web接口的自动化测试方法及系统 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110874319A (zh) * | 2018-09-03 | 2020-03-10 | 广州神马移动信息科技有限公司 | 自动化测试方法、平台、设备及计算机可读存储介质 |
CN114741281A (zh) * | 2022-03-28 | 2022-07-12 | 慧之安信息技术股份有限公司 | 基于操作系统的批量软件测试系统和方法 |
CN114741281B (zh) * | 2022-03-28 | 2022-11-15 | 慧之安信息技术股份有限公司 | 基于操作系统的批量软件测试系统和方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108427695A (zh) | 企业推荐方法及应用服务器 | |
CN103607494B (zh) | 一种分时段自动化测试终端续航时间的方法及终端 | |
CN107870981A (zh) | 电子装置、数据表归档处理的方法及存储介质 | |
CN107291539B (zh) | 基于资源重要程度的集群程序调度方法 | |
CN107766474A (zh) | 动态展示关系拓展图方法及应用服务器 | |
CN108038142A (zh) | 实现多级联动下拉框的方法、电子装置及存储介质 | |
CN102855173B (zh) | 一种软件性能测试方法和装置 | |
CN112800165B (zh) | 一种基于聚类算法的产业集群定位方法、装置及电子设备 | |
CN104615684A (zh) | 一种海量数据通信并发处理方法及系统 | |
CN108197022A (zh) | 软件自动化测试方法、系统及计算机可读存储介质 | |
CN108021621A (zh) | 数据库数据采集方法、应用服务器及计算机可读存储介质 | |
CN103631486A (zh) | 一种调整屏幕显示应用程序菜单的方法、系统及移动终端 | |
CN101599044A (zh) | 一种测试用例的执行方法 | |
CN106303064A (zh) | 一种日程添加方法、装置及终端设备 | |
CN117271100B (zh) | 算法芯片集群调度方法、装置、计算机设备和存储介质 | |
CN110297959A (zh) | 数据存储方法、装置、存储介质及边缘服务器 | |
CN110134646A (zh) | 知识平台服务数据存储与集成方法及系统 | |
CN101588605B (zh) | 多载波小区调度的方法及网络设备 | |
CN106168960A (zh) | 一种数据资源的调整装置及其调整方法 | |
CN102196512A (zh) | 终端接入方法、设备及系统 | |
CN111553749A (zh) | 一种活动推送策略配置方法及装置 | |
CN115309332A (zh) | 文件搬迁方法、客户端以及计算机可读存储介质 | |
CN113382075A (zh) | 企业信息管理平台、管理方法、电子设备及存储介质 | |
CN113360576A (zh) | 一种基于Flink Streaming的电网海量数据实时处理方法及装置 | |
CN113377683A (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180622 |
|
RJ01 | Rejection of invention patent application after publication |