CN111767218A - 一种用于持续集成的自动化测试方法、设备及存储介质 - Google Patents

一种用于持续集成的自动化测试方法、设备及存储介质 Download PDF

Info

Publication number
CN111767218A
CN111767218A CN202010587648.9A CN202010587648A CN111767218A CN 111767218 A CN111767218 A CN 111767218A CN 202010587648 A CN202010587648 A CN 202010587648A CN 111767218 A CN111767218 A CN 111767218A
Authority
CN
China
Prior art keywords
test
testing method
automated testing
integration
parameter
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
CN202010587648.9A
Other languages
English (en)
Other versions
CN111767218B (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.)
Beijing Si Tech Information Technology Co Ltd
Original Assignee
Beijing Si Tech Information Technology 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 Beijing Si Tech Information Technology Co Ltd filed Critical Beijing Si Tech Information Technology Co Ltd
Priority to CN202010587648.9A priority Critical patent/CN111767218B/zh
Publication of CN111767218A publication Critical patent/CN111767218A/zh
Application granted granted Critical
Publication of CN111767218B publication Critical patent/CN111767218B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/3688Test management for test execution, e.g. scheduling of test suites
    • 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/3696Methods or tools to render software testable

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)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种用于持续集成的自动化测试方法、设备及存储介质,包括:根据预先录入的测试需求和预先配置的参数规则,生成测试用例;根据生成的测试用例,配置测试套件;当持续集成中触发自动化测试的构建时,则调用对应的测试套件,并自动输出测试结果。本发明能够提升测试的覆盖度,准确性,并完善测试类型,从而提供高集成软件整体质量。

Description

一种用于持续集成的自动化测试方法、设备及存储介质
技术领域
本发明涉及应用集成技术领域,具体涉及一种用于持续集成的自动化测试方法、设备及存储介质。
背景技术
随着持续集成技术的发展,软件行业在应用持续集成和持续交付中得到了长足的发展,从而进一步对软件质量的要求也提出了更高的要求;持续集成平台不断的发展和扩容,自动化程度逐步提高,高集成度和自动化越来越成为了未来发展的趋势和系统演进的必然结果。
软件行业中集成软件的过程不是新问题,在一个开发的项目中,如果依赖外部系统比较少,软件集成问题不会太多;但是随着项目复杂程度的增加,就会对集成和软件组件能够一起工作提出更多的要求,实现早集成、常集成,避免等到项目尾期才发现会导致各种软件质量问题。软件开发团队的成员经常集成自己的工作,通常每个成员至少集成一次,每次集成都通过自动化的构建来验证,从而尽快的检测出集成错误;这个过程会大大降低集成问题的出现几率,使整个团队能够更快的更快地开发出一致的软件。
针对软件持续集成软件验证需求,需要从半自动测试时代进化到自动化时代,为了持续集成中构建后的自动检测,以及影响集成的问题修复后的检验过程,测试过程也逐渐向全自动测试时代发展和演进,也迫切需要一种先进的、全新的、能够在持续集成中应用的实施方式,来满足业务和系统发展的需要。
发明内容
针对现有技术中存在的上述问题,本发明提供一种用于持续集成的自动化测试方法、设备及存储介质。
本发明公开了一种用于持续集成的自动化测试方法,包括:
根据预先录入的测试需求和预先配置的参数规则,生成测试用例;
根据生成的所述测试用例,配置测试套件;
当持续集成中触发自动化测试的构建时,则调用对应的所述测试套件,并自动输出测试结果。
作为本发明的进一步改进,所述的根据预先录入的测试需求和预先配置的参数规则,生成测试用例,包括:
将预先录入的测试需求拆分为子需求,并细分到测试点;
针对所述测试点,配置参数规则,所述参数规则包括对所述测试点的每个参数化内容所规定的合理范围、以及入参值;
根据所述参数规则,生成测试用例。
作为本发明的进一步改进,所述的根据所述参数规则,生成测试用例,具体为:
根据所述参数规则,采取结对编程方式生成测试用例。
作为本发明的进一步改进,在所述的自动输出测试结果之后,还包括:
对所述测试结果中具有缺陷的代码进行管理。
作为本发明的进一步改进,所述的对所述测试结果中具有缺陷的代码进行管理,包括:
对所述具有缺陷的代码监控缺陷状态;
若所述代码的缺陷被修复,则对该代码执行回归测试,并输出回归测试的结果。
作为本发明的进一步改进,在所述的输出回归测试的结果之后,还包括:
若所述代码回归测试通过,则自动关闭对所述缺陷状态的监控。
作为本发明的进一步改进,在所述的自动输出测试结果之后,还包括:
将所述测试结果存储为指定形式,并实时在持续集成平台中公示。
作为本发明的进一步改进,所述测试结果包括负责人、测试点、缺陷、覆盖度和符合度。
本发明还公开了一种电子设备,包括存储器和处理器;
所述存储器中存储有预先录入的测试需求和预先配置的参数规则;
所述处理器用于执行上述的自动化测试方法。
本发明还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时上述的自动化测试方法。
与现有技术相比,本发明的有益效果为:
本发明可解决持续中自动化测试过程中类型单一、覆盖不全面、软件质量难以控制的问题,能够提升测试的覆盖度,准确性,并完善测试类型,从而提供高集成软件整体质量。
附图说明
图1为本发明一种实施例公开的用于持续集成的自动化测试方法的流程图;
图2为本发明一种实施例公开的用于持续集成的自动化测试方法的具体流程图;
图3为本发明一种实施例1自动化测试方法的工作流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合附图对本发明做进一步的详细描述:
如图1、2所示,本发明提供一种用于持续集成的自动化测试方法,包括:
S1、根据预先录入的测试需求和预先配置的参数规则,生成测试用例;
其中,具体包括:
S11、将预先录入的测试需求拆分为子需求,并细分到测试点;
S12、针对测试点,配置参数规则,参数规则包括对测试点的每个参数化内容所规定的合理范围、以及入参值;
S13、根据参数规则,生成测试用例;进一步,根据参数规则,采取结对编程方式生成测试用例。
实现S11的一种实施例:
将被测系统的测试点梳理总结并归纳成测试用例模板,其中可以对业务进行参数化表达,通过把复杂业务拆分为简单业务,并拆分为多个测试点;例如:一个联通的全家福业务办理过程,由多个操作环节组成:查询商品分类下的所有商品信息及规格信息+查询默认发展人+查询商品分类下的所有商品信息及规格信息,商品下的子商品信息+查询是否收藏+校验,白名单校验接口+身份证校验服务--一证5户,黑名单、人证一致+主卡号空闲查询+移网号是否被预占查询+查询纳入移网号+主卡预占+查询宽带地址+查询纳入宽带号+查询固话地址+固话号查询+查询纳入固话+固话预占+规则预校验服务,订单校验接口+动态人像识别+查询配置信息+写卡服务+查询配置+商品信息是否为全家福或沃4G+预提交+查询费用+查支付方式+查订单状态与信息;每一个操作环节又可以细化成多个测试点,每个测试点由多个参数组成,例如,固话号查询的参数为:归属地编码,本地网络编码,操作编码,地址编码,密钥编码,查询类型,方法名称。
实现S12、S13的一种实施例:
根据的参数类型和参数规则,应用结对算法,对每个测试点形成独立的测试集合,并根据参数规则组合验证点和入参。例如,例如一个接口存在4参数,每个参数分别有4、4、4、3个入参,使用正交分析方法需要192个测试用例来进行覆盖,而使用结对算法只需要22个测试用例即可保证覆盖率,因此,当维度越多的时候,效果越明显。当有8个入参的时候,入参分别有4、4、4、3、2、4、5、6个入参时,正交分析需要4*4*4*3*2*4*5*6=30720个测试用例进行覆盖,正交方法仅需要31个。是正交测试用例规模的0.1%。
S2、根据生成的测试用例,配置测试套件;
其中,具体包括:
S21、配置功能测试套件,测试脚本由测试人员在开发人员实现过程中同步完成,并使用测试用例中的入参作为脚本入参,使用测试用例中的预期结果作为验证结果,形成测试套件:测试脚本,测试用例;
S22、配置性能测试套件,选取功能测试套件中的正向测试数据作为性能测试套件;
S23、配置易用性测试套件,使用不同的设备、浏览器、环境等,配置易用性套件。
S3、当持续集成中触发自动化测试的构建时,则调用对应的测试套件,并自动输出测试结果;
对测试结果中具有缺陷的代码进行管理;其中,对具有缺陷的代码监控缺陷状态;若代码的缺陷被修复,则对该代码执行回归测试,并输出回归测试的结果;若代码回归测试通过,则自动关闭对缺陷状态的监控;将测试结果存储为指定形式,并实时在持续集成平台中公示;进一步,测试结果包括负责人、测试点、缺陷、覆盖度和符合度。
例如,一个联通的全家福的测试,测试人员配置自动化测试场景后,调度引擎执行完成后,发现的缺陷自动提交到缺陷管理平台,并制定对应开发人员,开发人员,修复缺陷后,变更缺陷状态,调度引擎会监控缺陷状态,并执行回归测试,测试通过后,自动关闭缺陷,测试不通过,再次激活缺陷。
S4、测试总结与报告:每轮构建的测试验证执行完成后,发现的缺陷,则指定开发人员,并将测试结果汇总到持续集成平台呈现。
本发明还提供一种电子设备,包括存储器和处理器;
存储器中存储有预先录入的测试需求和预先配置的参数规则;
处理器用于执行上述的自动化测试方法。
本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时上述的自动化测试方法。
实施例:
本发明在持续集成中将ui层、接口层实现自动化测试回归,配合构建操作,提升了测试的效率;如图3所示,针对持续集成中有UI自动化测试和接口自动化测试需求的业务场景,本发明的操作实施步骤为:
S1、测试人员录入测试需求,拆分子需求,细化到测试点,例如:ID,名称,订单号等。
S2、测试人员配置参数规则,细化到每个测试点后,针对每个参数化内容规定其合理范围,和入参值。
S3、系统生成测试用例,程序使用结对算法,生成测试用例。
S4、组合测试套件,生成的测试用例,测试数据,预期结果形成测试套件。
S5、调度系统配置,将测试套件,测试环境,测试场景组合,形成不同用途的调度任务,功能测试,性能测试等,不限制。
S6、持续集成平台配置,配置工程的构建监控,构建触发机制,已经后建构的检测机制,构建完成后,同步开始测试验证。
S7、构建验证完成后,系统自动提交缺陷到缺陷管理平台,发送构建测试总结。
S8、开发人员修复缺陷、提交代码后,持续集成平台根据代码提交情况触发构建,根据缺陷管理平台中缺陷的状态修复情况触发回归验证。后续步骤,提交bug,发送回归测试总结。
S9、可以通过测试报告查看具体报错信息。
S10、构建通过,配置为稳定版本。
本发明的优点为:
1.提升持续集成中构建后测试类型的覆盖程度,完善测试用例的完善性。通过场景和参数结合结对算法保障功能测试场景覆盖率100%,性能测试场景提高复杂度,更接近生产环境,相比之前节约测试成本,提升工作效率;
2.测试准确率得到极大的提升,依赖测试套件组合,全部测试场景通过后,确保测试需求的准确100%,相比使用前此方法准确率提升5%以上;
3.自动化测试可适用于UI层、接口层、服务层,通过自动化测试,提升测试效率和测试质量,并极大的提高测试服用度,套件模板形成后,仅需要配置维护测试用例、规则即可,复用度提升30%以上;
4.测试结果存储为指定形式,便于整合和处理,实时在持续集成平台中公示,负责人,测试点、缺陷、覆盖度、符合度等主要指标一目了然,提升产品的配置化和智能化程度,降低人工工作量20%以上。
以上仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种用于持续集成的自动化测试方法,其特征在于,包括:
根据预先录入的测试需求和预先配置的参数规则,生成测试用例;
根据生成的所述测试用例,配置测试套件;
当持续集成中触发自动化测试的构建时,则调用对应的所述测试套件,并自动输出测试结果。
2.根据权利要求1所述的用于持续集成的自动化测试方法,其特征在于,所述的根据预先录入的测试需求和预先配置的参数规则,生成测试用例,包括:
将预先录入的测试需求拆分为子需求,并细分到测试点;
针对所述测试点,配置参数规则,所述参数规则包括对所述测试点的每个参数化内容所规定的合理范围、以及入参值;
根据所述参数规则,生成测试用例。
3.根据权利要求2所述的用于持续集成的自动化测试方法,其特征在于,所述的根据所述参数规则,生成测试用例,具体为:
根据所述参数规则,采取结对编程方式生成测试用例。
4.根据权利要求1所述的用于持续集成的自动化测试方法,其特征在于,在所述的自动输出测试结果之后,还包括:
对所述测试结果中具有缺陷的代码进行管理。
5.根据权利要求4所述的用于持续集成的自动化测试方法,其特征在于,所述的对所述测试结果中具有缺陷的代码进行管理,包括:
对所述具有缺陷的代码监控缺陷状态;
若所述代码的缺陷被修复,则对该代码执行回归测试,并输出回归测试的结果。
6.根据权利要求5所述的用于持续集成的自动化测试方法,其特征在于,在所述的输出回归测试的结果之后,还包括:
若所述代码回归测试通过,则自动关闭对所述缺陷状态的监控。
7.根据权利要求1所述的用于持续集成的自动化测试方法,其特征在于,在所述的自动输出测试结果之后,还包括:
将所述测试结果存储为指定形式,并实时在持续集成平台中公示。
8.根据权利要求7所述的用于持续集成的自动化测试方法,其特征在于,所述测试结果包括负责人、测试点、缺陷、覆盖度和符合度。
9.一种电子设备,其特征在于,包括存储器和处理器;
所述存储器中存储有预先录入的测试需求和预先配置的参数规则;
所述处理器用于执行如权利要求1至8中任一项所述的自动化测试方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8中任一项所述的自动化测试方法。
CN202010587648.9A 2020-06-24 2020-06-24 一种用于持续集成的自动化测试方法、设备及存储介质 Active CN111767218B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010587648.9A CN111767218B (zh) 2020-06-24 2020-06-24 一种用于持续集成的自动化测试方法、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010587648.9A CN111767218B (zh) 2020-06-24 2020-06-24 一种用于持续集成的自动化测试方法、设备及存储介质

Publications (2)

Publication Number Publication Date
CN111767218A true CN111767218A (zh) 2020-10-13
CN111767218B CN111767218B (zh) 2023-11-10

Family

ID=72722223

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010587648.9A Active CN111767218B (zh) 2020-06-24 2020-06-24 一种用于持续集成的自动化测试方法、设备及存储介质

Country Status (1)

Country Link
CN (1) CN111767218B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113238764A (zh) * 2021-05-17 2021-08-10 西安点告网络科技有限公司 基于dag图的软件交付方法、系统、电子设备及可读存储介质
CN113505077A (zh) * 2021-07-26 2021-10-15 平安信托有限责任公司 数据表的测试方法、装置、设备及存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104407971A (zh) * 2014-11-18 2015-03-11 中国电子科技集团公司第十研究所 自动化测试嵌入式软件的方法
CN106021111A (zh) * 2016-05-30 2016-10-12 上海携程商务有限公司 接口测试方法及系统
WO2016177124A1 (zh) * 2015-07-29 2016-11-10 中兴通讯股份有限公司 一种实现持续集成测试的方法及装置
US20170277624A1 (en) * 2016-03-22 2017-09-28 Tata Consultancy Services Limited Method and system for automated user interface (ui) testing through model driven techniques
CN107729243A (zh) * 2017-10-12 2018-02-23 上海携程金融信息服务有限公司 应用编程接口自动化测试方法、系统、设备及存储介质
CN109344053A (zh) * 2018-09-03 2019-02-15 平安科技(深圳)有限公司 接口覆盖测试方法、系统、计算机设备和存储介质
CN109522215A (zh) * 2018-10-12 2019-03-26 中国铁道科学研究院集团有限公司通信信号研究所 铁路信号系统安全苛求软件的自动化测试平台
CN109783383A (zh) * 2019-01-08 2019-05-21 郑州云海信息技术有限公司 一种代码级软件测试方法、装置、终端及存储介质
CN110245088A (zh) * 2019-06-21 2019-09-17 四川长虹电器股份有限公司 一种基于Jenkins的缺陷自动验证系统及验证方法
CN111026635A (zh) * 2019-09-27 2020-04-17 珠海随变科技有限公司 一种软件项目的测试系统、方法、装置及存储介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104407971A (zh) * 2014-11-18 2015-03-11 中国电子科技集团公司第十研究所 自动化测试嵌入式软件的方法
WO2016177124A1 (zh) * 2015-07-29 2016-11-10 中兴通讯股份有限公司 一种实现持续集成测试的方法及装置
US20170277624A1 (en) * 2016-03-22 2017-09-28 Tata Consultancy Services Limited Method and system for automated user interface (ui) testing through model driven techniques
CN106021111A (zh) * 2016-05-30 2016-10-12 上海携程商务有限公司 接口测试方法及系统
CN107729243A (zh) * 2017-10-12 2018-02-23 上海携程金融信息服务有限公司 应用编程接口自动化测试方法、系统、设备及存储介质
CN109344053A (zh) * 2018-09-03 2019-02-15 平安科技(深圳)有限公司 接口覆盖测试方法、系统、计算机设备和存储介质
CN109522215A (zh) * 2018-10-12 2019-03-26 中国铁道科学研究院集团有限公司通信信号研究所 铁路信号系统安全苛求软件的自动化测试平台
CN109783383A (zh) * 2019-01-08 2019-05-21 郑州云海信息技术有限公司 一种代码级软件测试方法、装置、终端及存储介质
CN110245088A (zh) * 2019-06-21 2019-09-17 四川长虹电器股份有限公司 一种基于Jenkins的缺陷自动验证系统及验证方法
CN111026635A (zh) * 2019-09-27 2020-04-17 珠海随变科技有限公司 一种软件项目的测试系统、方法、装置及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
E. COLLINS 等: "Strategies for Agile Software Testing Automation: An Industrial Experience", 《2012 IEEE 36TH ANNUAL COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE WORKSHOPS》, pages 440 - 445 *
王敏: ""敏捷开发"在大型核心银行系统中的应用", 《中国金融电脑》, no. 09, pages 70 - 77 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113238764A (zh) * 2021-05-17 2021-08-10 西安点告网络科技有限公司 基于dag图的软件交付方法、系统、电子设备及可读存储介质
CN113505077A (zh) * 2021-07-26 2021-10-15 平安信托有限责任公司 数据表的测试方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN111767218B (zh) 2023-11-10

Similar Documents

Publication Publication Date Title
CN107273286B (zh) 针对任务应用的场景自动化测试平台及方法
CN109302522B (zh) 测试方法、装置以及计算机系统和介质
CN109977012B (zh) 系统的联调测试方法、装置、设备及计算机可读存储介质
CN110188036A (zh) 一种软件测试方法及装置
CN110569159A (zh) 挡板生成方法、装置、设备及计算机存储介质
CN110659202A (zh) 客户端自动化测试方法及装置
CN107621963B (zh) 一种软件部署方法、软件部署系统及电子设备
CN112052172A (zh) 第三方通道的快速测试方法、装置和电子设备
CN112035344A (zh) 多场景测试方法、装置、设备和计算机可读存储介质
CN113238930A (zh) 软件系统的测试方法、装置、终端设备和存储介质
CN111767218A (zh) 一种用于持续集成的自动化测试方法、设备及存储介质
CN113094251B (zh) 嵌入式系统测试方法、装置、计算机设备和存储介质
CN110928777A (zh) 测试用例的处理方法、装置、设备及存储介质
CN110990249A (zh) 代码扫描结果处理方法、装置、计算机设备及存储介质
CN110990289B (zh) 一种自动提交bug的方法、装置、电子设备及存储介质
US10310962B2 (en) Infrastructure rule generation
CN117931620A (zh) 一种降低智能终端系统测试技术门槛的自动化测试方法
CN107679423A (zh) 分区完整性检查方法及装置
CN113434405A (zh) 测试文件的确定方法及装置、存储介质及电子装置
CN117493188A (zh) 接口测试方法及装置、电子设备及存储介质
KR102111392B1 (ko) 테스트 통합 관리시스템 및 그 제어방법
CN115934559A (zh) 表单智能测试系统的测试方法
CN114124769B (zh) 一种基站测试方法、装置、电子设备及存储介质
CN115269424A (zh) 生产流量的自动回归测试方法、装置、设备及存储介质
CN112100086B (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