CN111309633A - 基于自动化运维的持续性能测试方法 - Google Patents

基于自动化运维的持续性能测试方法 Download PDF

Info

Publication number
CN111309633A
CN111309633A CN202010209089.8A CN202010209089A CN111309633A CN 111309633 A CN111309633 A CN 111309633A CN 202010209089 A CN202010209089 A CN 202010209089A CN 111309633 A CN111309633 A CN 111309633A
Authority
CN
China
Prior art keywords
performance
program
tested
monitoring
version
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
Application number
CN202010209089.8A
Other languages
English (en)
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.)
Shanghai New Torch Network Information Technology Ltd By Share Ltd
Original Assignee
Shanghai New Torch Network Information Technology Ltd By Share 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 Shanghai New Torch Network Information Technology Ltd By Share Ltd filed Critical Shanghai New Torch Network Information Technology Ltd By Share Ltd
Priority to CN202010209089.8A priority Critical patent/CN111309633A/zh
Publication of CN111309633A publication Critical patent/CN111309633A/zh
Pending legal-status Critical Current

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/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

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

本发明公开了一种基于自动化运维的持续性能测试方法,包括如下步骤:S1:对涉及更新的待测程序进行自动化监测的构建;S2:根据待测程序的业务逻辑设置性能测试参数;S3:对待测程序进行自动化监测和部署,并依据设置的性能测试参数持续对待测程序进行性能测试;S4:根据性能指标对待测程序更新过程中的各版本的性能测试结果进行统计,获得每个过程版本的性能情况。本发明在版本测试中对性能测试进行流程化,对重点性能指标进行持续测试,提高性能测试的效率;对每个过程版本都进行主要性能指标的性能测试,直观地得到目标程序每个过程版本的性能情况,快速、及时地发现性能问题。

Description

基于自动化运维的持续性能测试方法
技术领域
本发明涉及一种性能测试方法,尤其涉及一种基于自动化运维的持续性能测试方法。
背景技术
在程序软件发布前需要进行性能测试,现有的方案是根据需要在版本发版前对程序做性能测试,通常是人工部署到性能测试环境,人工进行性能测试,如果程序存在性能问题,只能在最后阶段才能被发现,也无法知道哪次更新引入此问题。目前的技术方案存在如下问题:
1.性能测试在版本测试中并没有作为常规流程,即使某个版本安排了性能测试,也是发版前才开始,有可能由于发版时间紧急而缺少时间进行测试和修复。
2.性能测试较多人工介入,不但效率不高,而且容易出错。
发明内容
本发明要解决的技术问题是提供一种基于自动化运维的持续性能测试方法,解决上述问题。
本发明为解决上述技术问题而采用的技术方案是提供一种基于自动化运维的持续性能测试方法,包括如下步骤:S1:对涉及更新的待测程序进行自动化监测的构建;S2:根据待测程序的业务逻辑设置性能测试参数;S3:对待测程序进行自动化监测和部署,并依据设置的性能测试参数持续对待测程序进行性能测试;S4:根据性能指标对待测程序更新过程中的各版本的性能测试结果进行统计,获得每个过程版本的性能情况。
进一步的,所述步骤S1具体包括:S11:确认待测程序中需要关注的工程,并设置为目标工程;S12:在待测程序中部署监测模式,所述监测模式包括定时模式和自动模式。
进一步的,所述步骤S12中根据待测程序的目标工程的每天发版次数选择监测模式,对于每天发版次数少于10次的工程,采用定时模式;对于每天发版次数大于等于10次的工程,采用自动模式;所述定时模式通过crontab命令设置定时策略,定时对目标工程进行扫描,判断该工程代码是否有更新,发现更新时发送更新信息到服务端;所述自动模式通过在目标工程的gitlab仓库中设置Webhook接口获取监测信息,在对目标工程的代码进行更新时,gitlab把更新信息通过设置的Webhook接口发送到服务端。
进一步的,所述步骤S3具体包括:S31:通过自动化监测在服务端获得更新信息,确认待测程序的目标工程代码进行了更新;S32:服务端对进行了更新的工程分支的代码进行拉取,并进行编译构建,获得编译后的程序包;S33:将编译后的程序包分发到指定的服务器,进行更新部署;S34:对完成更新部署的目标工程根据设置的性能测试参数进行性能测试,获取测试结果;S35:重复步骤S31-S35获取更新过程中的各版本的性能测试结果。
进一步的,所述步骤S34具体包括将目标工程是作为被监控程序,在服务端将性能测试参数设为监控指标,并设定采集监控指标频率,采集监控数据并与预设阈值进行比较来进行性能评价,得到性能测试结果。
进一步的,所述步骤S4包括对更新过程中的各版本的性能测试结果进行统计整理,并按照预设的模板生成报告。
进一步的,所述步骤S4还包括根据统计规则对监控数据进行统计,所述统计规则包括:周期性统计从上一次更新到当前时间的监控数据,如果在最近的统计周期内都没有更新,则将统计周期加长;在目标工程每次更新部署前,统计从上一次更新到当前时间的监控数据;将监控数据的项目数与性能测试参数的项目数进行比对,判断是否出现采集遗漏,若监控数据的项目数少于性能测试参数的项目数则说明出现了采集遗漏,当某次更新后的采集遗漏率变高时,对该过程版本的代码进行检查,判断是否存在性能问题。
本发明对比现有技术有如下的有益效果:本发明提供的基于自动化运维的持续性能测试方法,在版本测试中对性能测试进行流程化,对重点性能指标进行持续测试,提高性能测试的效率;对每个过程版本都进行主要性能指标的性能测试,直观地得到目标程序每个过程版本的性能情况,快速、及时地发现性能问题。
附图说明
图1为本发明实施例中基于自动化运维的持续性能测试方法流程图。
具体实施方式
下面结合附图和实施例对本发明作进一步的描述。
图1为本发明实施例中基于自动化运维的持续性能测试方法结构示意图。
请参见图1,本发明实施例的基于自动化运维的持续性能测试方法,包括如下步骤:
步骤1:对涉及更新的待测程序进行自动化监测的构建;
首先确认待测程序中需要关注的工程,并设置为目标工程;在待测程序中部署监测模式,所述监测模式包括定时模式和自动模式;根据待测程序的目标工程的每天发版次数选择监测模式,对于每天发版次数少于10次的工程,采用定时模式;对于每天发版次数大于等于10次的工程,采用自动模式;所述定时模式通过crontab命令设置定时策略,定时对目标工程进行扫描,判断该工程代码是否有更新,发现更新时发送更新信息到服务端;所述自动模式通过在目标工程的gitlab仓库中设置Webhook接口获取监测信息,在对目标工程的代码进行更新时,gitlab把更新信息通过设置的Webhook接口发送到服务端。
步骤2:根据待测程序的业务逻辑设置性能测试参数;
步骤3:对待测程序进行自动化监测和部署,并依据设置的性能测试参数持续对待测程序进行性能测试,具体包括:
步骤31:通过自动化监测在服务端获得更新信息,确认待测程序的目标工程代码进行了更新;
步骤32:服务端对进行了更新的工程分支的代码进行拉取,并进行编译构建,获得编译后的程序包;
步骤33:将编译后的程序包分发到指定的服务器,进行更新部署;
步骤34:对完成更新部署的目标工程根据设置的性能测试参数进行性能测试,获取测试结果;将目标工程是作为被监控程序,在服务端将性能测试参数设为监控指标,并设定采集监控指标频率,采集监控数据并与预设阈值进行比较来进行性能评价,得到性能测试结果。
步骤35:重复步骤S31-S35获取更新过程中的各版本的性能测试结果。
步骤4:根据性能指标对待测程序更新过程中的各版本的性能测试结果进行统计,获得每个过程版本的性能情况,并按照预设的模板生成报告。还包括根据统计规则对监控数据进行统计,所述统计规则包括:周期性统计从上一次更新到当前时间的监控数据,如果在最近的统计周期内都没有更新,则将统计周期加长;在目标工程每次更新部署前,统计从上一次更新到当前时间的监控数据;将监控数据的项目数与性能测试参数的项目数进行比对,判断是否出现采集遗漏,若监控数据的项目数少于性能测试参数的项目数则说明出现了采集遗漏,当某次更新后的采集遗漏率变高时,对该过程版本的代码进行检查,判断是否存在性能问题。
综上所述,本发明实施例的基于自动化运维的持续性能测试方法,在版本测试中对性能测试进行流程化,对重点性能指标进行持续测试,提高性能测试的效率;对每个过程版本都进行主要性能指标的性能测试,直观地得到目标程序每个过程版本的性能情况,快速、及时地发现性能问题。
虽然本发明已以较佳实施例揭示如上,然其并非用以限定本发明,任何本领域技术人员,在不脱离本发明的精神和范围内,当可作些许的修改和完善,因此本发明的保护范围当以权利要求书所界定的为准。

Claims (7)

1.一种基于自动化运维的持续性能测试方法,其特征在于,包括如下步骤:
S1:对涉及更新的待测程序进行自动化监测的构建;
S2:根据待测程序的业务逻辑设置性能测试参数;
S3:对待测程序进行自动化监测和部署,并依据设置的性能测试参数持续对待测程序进行性能测试;
S4:根据性能指标对待测程序更新过程中的各版本的性能测试结果进行统计,获得每个过程版本的性能情况。
2.如权利要求1所述的基于自动化运维的持续性能测试方法,其特征在于,所述步骤S1具体包括:
S11:确认待测程序中需要关注的工程,并设置为目标工程;
S12:在待测程序中部署监测模式,所述监测模式包括定时模式和自动模式。
3.如权利要求2所述的基于自动化运维的持续性能测试方法,其特征在于,所述步骤S12中根据待测程序的目标工程的每天发版次数选择监测模式,对于每天发版次数少于10次的工程,采用定时模式;对于每天发版次数大于等于10次的工程,采用自动模式;所述定时模式通过crontab命令设置定时策略,定时对目标工程进行扫描,判断该工程代码是否有更新,发现更新时发送更新信息到服务端;所述自动模式通过在目标工程的gitlab仓库中设置Webhook接口获取监测信息,在对目标工程的代码进行更新时,gitlab把更新信息通过设置的Webhook接口发送到服务端。
4.如权利要求3所述的基于自动化运维的持续性能测试方法,其特征在于,所述步骤S3具体包括:
S31:通过自动化监测在服务端获得更新信息,确认待测程序的目标工程代码进行了更新;
S32:服务端对进行了更新的工程分支的代码进行拉取,并进行编译构建,获得编译后的程序包;
S33:将编译后的程序包分发到指定的服务器,进行更新部署;
S34:对完成更新部署的目标工程根据设置的性能测试参数进行性能测试,获取测试结果;
S35:重复步骤S31-S35获取更新过程中的各版本的性能测试结果。
5.如权利要求4所述的基于自动化运维的持续性能测试方法,其特征在于,所述步骤S34具体包括将目标工程是作为被监控程序,在服务端将性能测试参数设为监控指标,并设定采集监控指标频率,采集监控数据并与预设阈值进行比较来进行性能评价,得到性能测试结果。
6.如权利要求5所述的基于自动化运维的持续性能测试方法,其特征在于,所述步骤S4包括对更新过程中的各版本的性能测试结果进行统计整理,并按照预设的模板生成报告。
7.如权利要求5所述的基于自动化运维的持续性能测试方法,其特征在于,所述步骤S4还包括根据统计规则对监控数据进行统计,所述统计规则包括:周期性统计从上一次更新到当前时间的监控数据,如果在最近的统计周期内都没有更新,则将统计周期加长;在目标工程每次更新部署前,统计从上一次更新到当前时间的监控数据;将监控数据的项目数与性能测试参数的项目数进行比对,判断是否出现采集遗漏,若监控数据的项目数少于性能测试参数的项目数则说明出现了采集遗漏,当某次更新后的采集遗漏率变高时,对该过程版本的代码进行检查,判断是否存在性能问题。
CN202010209089.8A 2020-03-23 2020-03-23 基于自动化运维的持续性能测试方法 Pending CN111309633A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010209089.8A CN111309633A (zh) 2020-03-23 2020-03-23 基于自动化运维的持续性能测试方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010209089.8A CN111309633A (zh) 2020-03-23 2020-03-23 基于自动化运维的持续性能测试方法

Publications (1)

Publication Number Publication Date
CN111309633A true CN111309633A (zh) 2020-06-19

Family

ID=71145871

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010209089.8A Pending CN111309633A (zh) 2020-03-23 2020-03-23 基于自动化运维的持续性能测试方法

Country Status (1)

Country Link
CN (1) CN111309633A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117348861A (zh) * 2023-10-31 2024-01-05 慧之安信息技术股份有限公司 一种面向设备端应用的低代码开发方法和系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016206505A1 (zh) * 2015-06-26 2016-12-29 中兴通讯股份有限公司 自动化测试系统及测试方法
CN107807877A (zh) * 2016-09-08 2018-03-16 北京京东尚科信息技术有限公司 一种代码性能测试的方法和装置
CN110275822A (zh) * 2019-04-26 2019-09-24 武汉众邦银行股份有限公司 应用程序接口的性能测试方法、装置、设备及存储介质
CN110377334A (zh) * 2019-07-25 2019-10-25 北京奇艺世纪科技有限公司 持续集成方法及设备
CN110532189A (zh) * 2019-07-18 2019-12-03 中国人民财产保险股份有限公司 一种持续集成系统、方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016206505A1 (zh) * 2015-06-26 2016-12-29 中兴通讯股份有限公司 自动化测试系统及测试方法
CN107807877A (zh) * 2016-09-08 2018-03-16 北京京东尚科信息技术有限公司 一种代码性能测试的方法和装置
CN110275822A (zh) * 2019-04-26 2019-09-24 武汉众邦银行股份有限公司 应用程序接口的性能测试方法、装置、设备及存储介质
CN110532189A (zh) * 2019-07-18 2019-12-03 中国人民财产保险股份有限公司 一种持续集成系统、方法及装置
CN110377334A (zh) * 2019-07-25 2019-10-25 北京奇艺世纪科技有限公司 持续集成方法及设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
姜文;刘立康;: "基于持续集成的软件度量" *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117348861A (zh) * 2023-10-31 2024-01-05 慧之安信息技术股份有限公司 一种面向设备端应用的低代码开发方法和系统

Similar Documents

Publication Publication Date Title
CN109062817B (zh) 自动化测试方法及系统
DE102012213521A1 (de) Nachverfolgen einer Verbindung einer Codebasis und einer Mängeldiagnose mit automatisierter Triage
CN108733569B (zh) 一种接口自动化测试方法、装置、存储介质及设备
CN110727531A (zh) 一种线上系统的故障预测及处理方法及系统
CN111309633A (zh) 基于自动化运维的持续性能测试方法
CN114757142A (zh) 自纠错芯片验证方法、装置、设备及计算机可读介质
CN111309581A (zh) 一种数据库升级场景下的应用性能检测方法及装置
CN107180267B (zh) 一种二次运维管理系统的家族性缺陷诊断方法
CN112882927A (zh) 一种接口自动化测试方法、装置、设备及介质
EP3663874A1 (en) Method and system for optimizing a manufacturing process based on a surrogate model of a part
CN114326677A (zh) 车机测试方法及装置
CN111858292A (zh) 测试用例的筛选方法、筛选系统、计算机设备及存储介质
CN116980278B (zh) 一种域控制器的自动化测试方法和系统
CN110532122B (zh) 故障分析方法及系统、电子设备、存储介质
CN109218113B (zh) 通信网络故障定位方法及故障监测装置
US10310840B2 (en) Computer system, method of managing transmission of software with computer system, program therefor, and recording medium
CN112161705B (zh) 用于脉冲激光器的功率复测方法及系统
CN111078466B (zh) 传感器数据丢失分析方法及系统
CN107102938B (zh) 测试脚本的更新方法及装置
CN110175127B (zh) 一种远程自动质检ems设备安装质量的方法
CN114817077B (zh) 测试质量及规范的判断方法、系统和网络设备
CN113138875B (zh) 一种故障检测方法、终端以及计算机存储介质
CN113852417B (zh) 光模块故障定位方法、装置、设备及存储介质
CN117436541A (zh) 机器学习系统中的运行时数据收集和监视
CN114356758A (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