CN114510428A - 软件研测自动化测试方法及系统 - Google Patents
软件研测自动化测试方法及系统 Download PDFInfo
- Publication number
- CN114510428A CN114510428A CN202210180175.XA CN202210180175A CN114510428A CN 114510428 A CN114510428 A CN 114510428A CN 202210180175 A CN202210180175 A CN 202210180175A CN 114510428 A CN114510428 A CN 114510428A
- Authority
- CN
- China
- Prior art keywords
- test
- software
- script
- warehouse
- terminal
- 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
Images
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/3664—Environments for testing or debugging software
-
- 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/3692—Test management for test results analysis
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
本发明的特别涉及一种软件研测自动化测试方法,包括如下步骤:S100、根据测试项目选择指定型号的硬件、指定类型的操作系统、部署所需要的各类软件生成运行环境;S200、在部署好的运行环境中,通过预设的测试脚本文件对待测试的代码进行测试;S300、对测试过程中产生的数据进行分析和处理后生成测试报告。通过自动化脚本部署,可以在很短的时间内对运行环境进行构建,当硬件平台资源足够时,这种构建的环境是可以大量复制的,而且由于人力介入少,部署反倒不容易出错;并且测试人员提供了几乎相同的测试环境,为缺陷复现提供了前提条件,出错率极低,利于研发人员更好的理解缺陷、复现缺陷、解决缺陷,给项目研发人员的研发工作带来了便利。
Description
技术领域
本发明涉及软件测试技术领域,特别涉及一种软件研测自动化测试方法及系统。
背景技术
当前,随着公司的发展,项目越来越多,不同的项目、产品都需要对产品进行开发测试,已有的测试方法中,存在以下不足之处:(1)研发、测试环境经常变动,在资源有限的情况下利用效率不高,往往还会出现一些资源上的相互占用;(2)测试与开发联系的不够紧密,资源信息不能得到充分的共享;(3)测试数据没有集中得到有效的利用、对比、分析,对产出的成果缺乏充分、统一的利用;(4)当面临员工突然离职时,前辈的方法不能得到充分的继承,测试成果没有得到有效的积累,宝贵的经验教训不能得到有效的利用,增加了不必要的人力成本。
作为测试的主要交付件,测试的自动化用例、测试数据、测试环境等测试资产,如何实现和研发的共享和重复使用,让测试的平台资源、成果可以跨研发、测试、运维等部门进行共享,通过标准化、流程化管理,实现环境的集中管理和充分共享,提高现有资产的利用率,在不断迭代中发挥公司重要资产的作用,成了开发和测试都需要共同思考的问题。因此,需要提供一种方案对该状况进行改善。
发明内容
本发明的目的在于提供一种软件研测自动化测试方法,能够方便的对待测试的代码进行自动化测试。
为实现以上目的,本发明采用的技术方案为:一种软件研测自动化测试方法,包括如下步骤:S100、根据测试项目自动从硬件仓库中选择指定型号的硬件、从操作系统仓库中选择指定类型的操作系统、从软件仓库中选择部署所需要的各类软件生成运行环境;S200、在部署好的运行环境中,通过预设的测试脚本文件对待测试的代码进行测试;S300、对测试过程中产生的数据进行分析和处理后生成测试报告。
与现有技术相比,本发明存在以下技术效果:此处从仓库里选取所需要的操作系统、硬件型号、软件类型进行耦合,通过自动化脚本部署,可以在很短的时间内对运行环境进行构建,当硬件平台资源足够时,这种构建的环境是可以大量复制的,而且由于人力介入少,部署反倒不容易出错;并且测试人员提供了几乎相同的测试环境,为缺陷复现提供了前提条件,出错率极低,利于研发人员更好的理解缺陷、复现缺陷、解决缺陷,给项目研发人员的研发工作带来了便利。
本发明的目的在于提供一种软件研测自动化测试系统,能够方便的对待测试的代码进行自动化测试。
为实现以上目的,本发明采用的技术方案为:一种软件研测自动化测试系统,包括硬件仓库,包括不同型号硬件的主机,每台主机都是一个测试终端;操作系统仓库,用于存储各种类型操作系统的安装镜像;软件仓库,用于存储部署所需要的各类软件;代码仓库,用于存储待测试的代码、部署脚本以及测试脚本;控制终端,用于和用户交互实现测试终端按设定的要求对待测试代码进行测试。
与现有技术相比,本发明存在以下技术效果:该系统在运行之前,只需要对硬件仓库、操作系统仓库、软件仓库进行一次收集,后续随着产品规模的不断扩大,只需要增加新的样本到资产管理仓库中去,维护成本低,性价比高,而且生成的仓库可以在研发、测试、运维平台流转,当需要部署的时候,很快就可以部署相同的环境,并且能最大限度的保证环境部署中不出错,大幅提高代码测试的速度和便利性。
附图说明
图1是本发明的流程图;
图2是运行环境部署流程图;
图3是本发明的原理框图。
具体实施方式
下面结合图1至图3,对本发明做进一步详细叙述。
参阅图1,一种软件研测自动化测试方法,包括如下步骤:S100、根据测试项目自动从硬件仓库中选择指定型号的硬件、从操作系统仓库中选择指定类型的操作系统、从软件仓库中选择部署所需要的各类软件生成运行环境;S200、在部署好的运行环境中,通过预设的测试脚本文件对待测试的代码进行测试;S300、对测试过程中产生的数据进行分析和处理后生成测试报告。
当某个项目需要进行软硬件定制时,按照以往的操作流程,需要首先选取硬件,人工安装操作系统,手动安装软件,然后设备运行,代码调试,这个流程往往需要几个小时甚至一天的时间,如果需要多个环境,这个流程还需要成倍的增加,往往宝贵的时间会被浪费。当后期由开发团队把产品交付给测试团队时,以上的流程还需要重复走一遍,而且在安装过程中会出现一些不可控因素,可能会对产品的稳定性有一些大的影响。并且,当测试团队发现缺陷时,需要研发人员进行确认,往往在复现过程中也耽误了测试的宝贵时间,如果特定缺陷需要在测试环境进行复现、调试,可能会对接下来的测试进程造成影响,拖累整个测试进程。
本发明中,从仓库里选取所需要的操作系统、硬件型号、软件类型进行耦合,通过自动化脚本部署,可以在很短的时间内对运行环境进行构建,当硬件平台资源足够时,这种构建的环境是可以大量复制的,而且由于人力介入少,部署反倒不容易出错;并且测试人员提供了几乎相同的测试环境,为缺陷复现提供了前提条件,出错率极低,利于研发人员更好的理解缺陷、复现缺陷、解决缺陷,给项目研发人员的研发工作带来了便利。
参阅图2,进一步地,所述的步骤S100中,包括如下步骤:S101、在控制终端打开第一软件,并对第一软件进行初始化;S102、新建自动化项目,选取对应配置的硬件、操作系统和软件信息;S103、选择待测试的第二软件,第一软件从代码仓库拉取第二软件的代码;S104、对第二软件的代码进行审查,查看该代码能否在步骤S102设置的硬件、操作系统上运行,若可以运行则执行下一步,否则结束测试并提示;S105、根据开发文档将第二软件的代码编译生成测试程序,并生成程序启停脚本;S106、通过第一软件从代码仓库中拉取用于测试第二软件的测试脚本,并设置好每个测试脚本的运行次数;S107、第一软件发送通信请求至对应硬件配置的测试终端,测试终端回复允许消息后,控制终端和测试终端建立连接并等待传输数据;S108、第一软件将操作系统镜像文件、软件文件、测试程序、程序启停脚本、测试脚本打包成第一镜像文件后上传至测试终端;S109、测试终端对接收到的镜像文件进行校验,校验成功后在测试终端上自动安装操作系统和软件完成运行环境的部署。通过上述步骤,可以方便的在测试终端上部署运行环境,且测试终端可根据各脚本自动执行代码测试任务。
进一步地,所述的步骤S200中,预设的测试脚本文件包括功能测试脚本、兼容性测试脚本、性能测试脚本、渗透测试脚本、稳定性测试脚本中的一种或多种。这些测试脚本是提前设置好的,也可以在后期不断的进行扩充。
进一步地,所述的步骤S200中,包括如下步骤:S201、测试终端根据程序启停脚本启动测试程序;S202、测试终端根据测试脚本及其运行次数对测试程序进行测试;S203、完成测试后,测试终端根据程序启停脚本停止测试程序。通过这些步骤,测试终端可以自动完成测试程序的测试,非常的方便。
进一步地,包括服务端,服务端由监控模块和质量评价模块构成,所述的监控模块用于收集测试终端测试时的运行数据、测试脚本运行时产生的日志、测试脚本的测试结果、并对所有数据进行整理校验后输出至质量评价模块;质量评价模块对数据进行分析和处理得到符合要求的测试报告。测试终端测试时的运行数据包括运行期间的CPU、内存、网络、I/O使用等数据,这些数据在测试的过程中被监测模块不断的收集,脚本运行结束后,监控模块经过对数据的校验和整理,确定数据的真实有效性,并将有效的数据上传给质量评价模块。在这里,监控模块仅用于采集和校验数据,质量评价模块对校验后的数据进行处理和分析,生成符合要求的质量报告。
进一步地,所述的步骤S203后还包括如下步骤:S204、测试完成后,将测试终端上的操作系统、软件、程序、脚本共同打包成第二镜像文件后保存至镜像仓库。这里将第二镜像文件保存到镜像仓库中以后,为后续的软件持续集成节约大量的适配成本,也为以后的缺陷复现、问题追溯、数据对比提供了可靠的现实基础。
参阅图3,本发明还公开了一种软件研测自动化测试系统,包括硬件仓库,包括不同型号硬件的主机,每台主机都是一个测试终端;操作系统仓库,用于存储各种类型操作系统的安装镜像;软件仓库,用于存储部署所需要的各类软件;代码仓库,用于存储待测试的代码、部署脚本以及测试脚本;控制终端,用于和用户交互实现测试终端按设定的要求对待测试代码进行测试。通过设置各仓库,后续随着产品规模的不断扩大,只需要增加新的样本到资产管理仓库中去,维护成本低,性价比高,并且整个系统使用起来非常的方便。
进一步地,包括镜像仓库,用于保存测试终端上针对操作系统、软件、程序、脚本共同打包的第二镜像文件。通过打包并保存第二镜像文件,提供了几乎相同的测试环境,为缺陷复现提供了前提条件,出错率极低,利于研发人员更好的理解缺陷、复现缺陷、解决缺陷,给项目研发人员的研发工作带来了便利。
Claims (8)
1.一种软件研测自动化测试方法,其特征在于:包括如下步骤:
S100、根据测试项目自动从硬件仓库中选择指定型号的硬件、从操作系统仓库中选择指定类型的操作系统、从软件仓库中选择部署所需要的各类软件生成运行环境;
S200、在部署好的运行环境中,通过预设的测试脚本文件对待测试的代码进行测试;
S300、对测试过程中产生的数据进行分析和处理后生成测试报告。
2.如权利要求1所述的软件研测自动化测试方法,其特征在于:所述的步骤S100中,包括如下步骤:
S101、在控制终端打开第一软件,并对第一软件进行初始化;
S102、新建自动化项目,选取对应配置的硬件、操作系统和软件信息;
S103、选择待测试的第二软件,第一软件从代码仓库拉取第二软件的代码;
S104、对第二软件的代码进行审查,查看该代码能否在步骤S102设置的硬件、操作系统上运行,若可以运行则执行下一步,否则结束测试并提示;
S105、根据开发文档将第二软件的代码编译生成测试程序,并生成程序启停脚本;
S106、通过第一软件从代码仓库中拉取用于测试第二软件的测试脚本,并设置好每个测试脚本的运行次数;
S107、第一软件发送通信请求至对应硬件配置的测试终端,测试终端回复允许消息后,控制终端和测试终端建立连接并等待传输数据;
S108、第一软件将操作系统镜像文件、软件文件、测试程序、程序启停脚本、测试脚本打包成第一镜像文件后上传至测试终端;
S109、测试终端对接收到的镜像文件进行校验,校验成功后在测试终端上自动安装操作系统和软件完成运行环境的部署。
3.如权利要求1所述的软件研测自动化测试方法,其特征在于:所述的步骤S200中,预设的测试脚本文件包括功能测试脚本、兼容性测试脚本、性能测试脚本、渗透测试脚本、稳定性测试脚本中的一种或多种。
4.如权利要求1所述的软件研测自动化测试方法,其特征在于:所述的步骤S200中,包括如下步骤:
S201、测试终端根据程序启停脚本启动测试程序;
S202、测试终端根据测试脚本及其运行次数对测试程序进行测试;
S203、完成测试后,测试终端根据程序启停脚本停止测试程序。
5.如权利要求4所述的软件研测自动化测试方法,其特征在于:包括服务端,服务端由监控模块和质量评价模块构成,所述的监控模块用于收集测试终端测试时的运行数据、测试脚本运行时产生的日志、测试脚本的测试结果、并对所有数据进行整理校验后输出至质量评价模块;质量评价模块对数据进行分析和处理得到符合要求的测试报告。
6.如权利要求4所述的软件研测自动化测试方法,其特征在于:所述的步骤S203后还包括如下步骤:
S204、测试完成后,将测试终端上的操作系统、软件、程序、脚本共同打包成第二镜像文件后保存至镜像仓库。
7.一种软件研测自动化测试系统,其特征在于:包括
硬件仓库,包括不同型号硬件的主机,每台主机都是一个测试终端;
操作系统仓库,用于存储各种类型操作系统的安装镜像;
软件仓库,用于存储部署所需要的各类软件;
代码仓库,用于存储待测试的代码、部署脚本以及测试脚本;
控制终端,用于和用户交互实现测试终端按设定的要求对待测试代码进行测试。
8.如权利要求7所述的软件研测自动化测试系统,其特征在于:包括镜像仓库,用于保存测试终端上针对操作系统、软件、程序、脚本共同打包的第二镜像文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210180175.XA CN114510428A (zh) | 2022-02-26 | 2022-02-26 | 软件研测自动化测试方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210180175.XA CN114510428A (zh) | 2022-02-26 | 2022-02-26 | 软件研测自动化测试方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114510428A true CN114510428A (zh) | 2022-05-17 |
Family
ID=81553146
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210180175.XA Pending CN114510428A (zh) | 2022-02-26 | 2022-02-26 | 软件研测自动化测试方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114510428A (zh) |
-
2022
- 2022-02-26 CN CN202210180175.XA patent/CN114510428A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7895565B1 (en) | Integrated system and method for validating the functionality and performance of software applications | |
US11281570B2 (en) | Software testing method, system, apparatus, device medium, and computer program product | |
CN105094783B (zh) | 安卓应用稳定性测试的方法及装置 | |
CN111651366B (zh) | Sdk测试方法、装置、设备及存储介质 | |
CN108845940B (zh) | 一种企业级信息系统自动化功能测试方法和系统 | |
US20040153837A1 (en) | Automated testing | |
CN112363953B (zh) | 基于爬虫技术和规则引擎的接口测试用例生成方法及系统 | |
CN109977012B (zh) | 系统的联调测试方法、装置、设备及计算机可读存储介质 | |
CN112241360A (zh) | 一种测试用例生成方法、装置、设备及存储介质 | |
CN114297056A (zh) | 一种自动化测试方法及系统 | |
CN113032240A (zh) | 一种软件测试自动化管理系统及方法 | |
CN110908708B (zh) | 一种代码发布方法、装置和系统 | |
CN112231206A (zh) | 应用程序测试的脚本编辑方法、计算机可读存储介质及测试平台 | |
CN110928796A (zh) | 一种自动化测试平台 | |
CN107122307B (zh) | 一种物联网执行系统 | |
CN112527312B (zh) | 一种嵌入式系统的测试方法和测试装置 | |
CN116069334B (zh) | 一种基于云原生的在线开发与代码托管方法及系统 | |
CN114510428A (zh) | 软件研测自动化测试方法及系统 | |
CN114996039A (zh) | 基于第三方系统对接的云原生系统联调方法、系统及介质 | |
CN114968819A (zh) | 面向微服务持续集成的代码质量问题检测及修复方法 | |
CN113934642B (zh) | 一种基于动静态结合的软件兼容性测试方法 | |
CN114124769B (zh) | 一种基站测试方法、装置、电子设备及存储介质 | |
CN113886262A (zh) | 软件自动化测试方法、装置、计算机设备和存储介质 | |
CN111881056A (zh) | 一种自动化测试框架及测试方法 | |
CN116225441B (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 |