一种自动化测试方法和系统技术方案

技术编号:19341702 阅读:24 留言:0更新日期:2018-11-07 13:44
本申请提供一种自动化测试方法和系统。涉及软件项目管理领域;解决了需要进行有效的测试、对测试结果精确分析的问题。该方法包括:收集多个触发任务,对收集得到的多个触发任务排序;根据对所述多个触发任务的排序结果,依序执行所述触发任务,获取测试数据。本申请提供的技术方案适用于软件测试,实现了自动化性能测试。

An automatic testing method and system

The application provides an automated testing method and system. It involves the field of software project management, and solves the problems that need effective testing and accurate analysis of test results. The method includes: collecting multiple trigger tasks, sorting the collected trigger tasks; executing the trigger tasks sequentially according to the sorting results of the multiple trigger tasks, and acquiring test data. The technical proposal provided by this application is applicable to software testing and automatic performance testing.

【技术实现步骤摘要】
一种自动化测试方法和系统
本申请涉及软件项目管理
,特别涉及一种自动化测试方法和系统。
技术介绍
在软件项目周期中,对于每个版本的迭代系统进行性能测试将是必须可少的是必不可少的。由于软件系统的复杂性,测试过程中会涉及大量性能指标,接口的性能指标是否能满足预期,是否比上版本有所上升/下降,将是评估系统模块产品质量一个重要指标和依据。因此,进行有效的测试、对测试结果精确分析,是一个亟待解决的问题。
技术实现思路
有鉴于此,本申请实施例提供了一种自动化测试方法和系统,以解决现有技术中存在的技术缺陷。本申请实施例公开了一种自动化测试方法,包括:收集多个触发任务,对收集得到的多个触发任务排序;根据对所述多个触发任务的排序结果,依序执行所述触发任务,获取测试数据。优选的,所述触发任务至少包含以下所列任务中的任一种或任意多种:全量测试触发任务、部分接口测试触发任务、脚本测试触发任务,该方法还包括:为各种所述触发任务配置不同的优先级。优选的,所述对收集得到的多个触发任务排序的步骤包括:根据所述触发任务的优先级对收集得到的所述多个触发任务进行排序。优选的,所述根据对所述多个触发任务的排序结果,依序执行所述触发任务,获取测试数据的步骤包括:选择排序最靠前的触发任务作为当前触发任务;根据所述当前触发任务,确定需要执行测试的待测接口;检查所述待测接口的脚本,在所述脚本正常时,执行所述脚本;结合预置的测试策略,根据所述脚本动态生成至少一个测试指令;执行所述测试指令,完成压力测试,得到每个所述待测接口的多个维度指标值,作为测试数据写入数据库。优选的,所述根据对所述多个触发任务的排序结果,依序执行所述触发任务,获取测试数据的步骤之后,还包括:在接口的压力测试完成后,根据所述测试数据生成所有接口的对比测试报告。本申请实施例公开了一种自动化测试系统,包括:任务收集模块,用于收集多个触发任务,对收集得到的多个触发任务排序;测试执行模块,用于根据对所述多个触发任务的排序结果,依序执行所述触发任务,获取测试数据。优选的,所述测试执行模块包括:任务选择单元,用于选择排序最靠前的触发任务作为当前触发任务;接口确定单元,用于根据所述当前触发任务,确定需要执行测试的待测接口;脚本执行单元,用于检查所述待测接口的脚本,在所述脚本正常时,执行所述脚本;指令生成单元,用于结合预置的测试策略,根据所述脚本动态生成至少一个测试指令;数据收集单元,用于执行所述测试指令,完成压力测试,得到每个所述待测接口的多个维度指标值,作为测试数据写入数据库。优选的,该系统还包括:报告生成模块,用于在接口的压力测试完成后,根据所述测试数据生成所有接口的对比测试报告。本申请实施例还公开了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器在运行所述计算机指令时实现如上述自动化测试方法的步骤。本申请实施例还公开了一种计算机可读存储介质,其存储有计算机指令,其特征在于,该指令被处理器执行时实现如上述自动化测试方法的步骤。本申请提供的一种自动化测试方法和系统,收集多个触发任务,并对收集得到的多个触发任务排序,再根据对所述多个触发任务的排序结果,依序执行所述触发任务,获取测试数据。提供了成本低、易维护、对测试人员要求放宽的测试系统,实现了自动化性能测试,解决了需要进行有效的测试、对测试结果精确分析的问题。附图说明图1是本申请实施例提供的一种自动化测试方法的流程示意图;图2是图1中步骤103的具体流程示意图;图3是本申请实施例提供的又一种自动化测试方法的流程示意图;图4是本申请实施例提供的又一种自动化测试方法的流程示意图;图5是本申请实施例提供的一种自动化测试系统的架构示意图;图6是图5中测试执行模块502的结构示意图。具体实施方式在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况下做类似推广,因此本申请不受下面公开的具体实施的限制。为配合软件项目开发,进行有效的测试、对测试结果精确分析,是一个亟待解决的问题。具体的,需要解决如何定位性能瓶颈、如何降低性能测试门槛、如何即可以减少人力投入、让数据分析更加准确、让数据分析和反馈更智能等问题。在本申请中,提供了一种自动化测试方法和系统,在下面的实施例中逐一进行详细说明。本申请的一实施例提供了一种自动化测试方法,使用该方法完成自动化测试的流程如图1所示,包括步骤101至步骤104。步骤101、为各种触发任务配置不同的优先级。本申请的实施例中,通过配置不同优先级的触发任务对测试任务触发流程进行管理。本申请的实施例中涉及的所述触发任务至少包含以下所列任务中的任一种或任意多种:全量测试触发任务、部分接口测试触发任务、脚本测试触发任务。以下为一种对上述触发任务优先级定义排序的举例:脚本测试触发任务>部分接口测试触发任务>全量测试触发任务。其中,全量测试触发任务为对模块下所有接口按策略进行性能测试,例如Jenkins通过job任务后置触发ant指令,执行如jmter脚本的控制标识更新的脚本,增加对应模块更新标识,模块下所有接口按策略做全量性能测试。部分接口测试触发任务为对部分需要进行性能测试的接口进行性能测试,例如在工具中置任务,关联需要性能测试的接口,逐个进行性能测试。脚本测试触发任务为根据脚本执行性能测试,例如维护好脚本后,直接调用调试(主要为单接口),根据脚本中的配置策略进行性能测试。触发任务包括但不限于如下内容:项目管理、版本管理、脚本管理、脚本健康检测、策略管理、任务管理、执行、数据分析等。优选的,还可增加定时任务,既固定时间到达即触发执行的任务。该定时任务的优先级可配置为最高。由于一个触发任务有可能涉及多个接口,在此种情况下,多个接口间亦可并行执行触发任务,完成测试。需要说明的是,步骤101与步骤102-104并无严格时序关系,对触发任务的配置可根据实际应用需求随时调整,在配置生效之后按照最新配置完成测试。步骤102、收集多个触发任务,对收集得到的多个触发任务排序。本步骤中,收集并对多个触发任务进行排序,优选的,根据各个触发任务的优先级对触发任务进行排序。例如,通过工具实现任务统一管理,使用数据库表(如task表)对多个触发任务统一进行管理,通过优先级区分触发任务级别,每次执行前进行触发任务自动筛选。如同一优先级上存在多个触发任务,则可进一步的根据多个触发任务到达的时间对同一优先级上的多个触发任务进行排序,将到达时间较早的触发任务排在较靠前的位置,保证先到的任务优先执行。步骤103、根据对所述多个触发任务的排序结果,依序执行所述触发任务,获取测试数据。本步骤中,根据排序结果,选择排序靠前的触发任务优先执行。同一触发任务可能会涉及多个接口,在需要测试的接口数量为多个时,还可以在多个接口并行测试。本步骤具体如图2所示,包括步骤1031至步骤1035。步骤1031、选择排序最靠前的触发任务作为当前触发任务。步骤1032、根据所述当前触发任务,确定需要执行测试的待测接口。步骤1033、检查所述待测接口的脚本,在所述脚本正常时,执行所述脚本。步骤1034、结合预置的测试策略,本文档来自技高网...

【技术保护点】
1.一种自动化测试方法,其特征在于,包括:收集多个触发任务,对收集得到的多个触发任务排序;根据对所述多个触发任务的排序结果,依序执行所述触发任务,获取测试数据。

【技术特征摘要】
1.一种自动化测试方法,其特征在于,包括:收集多个触发任务,对收集得到的多个触发任务排序;根据对所述多个触发任务的排序结果,依序执行所述触发任务,获取测试数据。2.根据权利要求1所述的自动化测试方法,其特征在于,所述触发任务至少包含以下所列任务中的任一种或任意多种:全量测试触发任务、部分接口测试触发任务、脚本测试触发任务,该方法还包括:为各种所述触发任务配置不同的优先级。3.根据权利要求2所述的自动化测试方法,其特征在于,所述对收集得到的多个触发任务排序的步骤包括:根据所述触发任务的优先级对收集得到的所述多个触发任务进行排序。4.根据权利要求3所述的自动化测试方法,其特征在于,所述根据对所述多个触发任务的排序结果,依序执行所述触发任务,获取测试数据的步骤包括:选择排序最靠前的触发任务作为当前触发任务;根据所述当前触发任务,确定需要执行测试的待测接口;检查所述待测接口的脚本,在所述脚本正常时,执行所述脚本;结合预置的测试策略,根据所述脚本动态生成至少一个测试指令;执行所述测试指令,完成压力测试,得到每个所述待测接口的多个维度指标值,作为测试数据写入数据库。5.根据权利要求4所述的自动化测试方法,其特征在于,所述根据对所述多个触发任务的排序结果,依序执行所述触发任务,获取测试数据的步骤之后,还包括:在接口的测试完成后,根据所述测试数据生成所...

【专利技术属性】
技术研发人员:吴红辉
申请(专利权)人:政采云有限公司
类型:发明
国别省市:浙江,33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1