CN116225944A - 一种预置组网环境的软件测试系统和方法 - Google Patents

一种预置组网环境的软件测试系统和方法 Download PDF

Info

Publication number
CN116225944A
CN116225944A CN202310220096.1A CN202310220096A CN116225944A CN 116225944 A CN116225944 A CN 116225944A CN 202310220096 A CN202310220096 A CN 202310220096A CN 116225944 A CN116225944 A CN 116225944A
Authority
CN
China
Prior art keywords
test
environment
module
test case
case
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
CN202310220096.1A
Other languages
English (en)
Other versions
CN116225944B (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.)
Matrix Time Digital Technology Co Ltd
Original Assignee
Matrix Time Digital 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 Matrix Time Digital Technology Co Ltd filed Critical Matrix Time Digital Technology Co Ltd
Priority to CN202310220096.1A priority Critical patent/CN116225944B/zh
Publication of CN116225944A publication Critical patent/CN116225944A/zh
Application granted granted Critical
Publication of CN116225944B publication Critical patent/CN116225944B/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/3664Environments for testing or debugging software
    • 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/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/14Arrangements for monitoring or testing data switching networks using software, i.e. software packages
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

本发明提供一种预置组网环境的软件测试系统和方法,所述软件测试系统包括测试用例管理模块、环境预置模块、测试用例执行模块、指标监控模块、信息收集模块、环境分析模块、测试报告生成模块,所述软件测试系统中各个模块相互之间通信连接,系统可根据需要自动记录和控制单个或多个网络节点的环境状态。本发明系统可以为不同的测试场景提供相对应的测试环境,无需测试人员在每条测试用例的开始为该条测试用例重新配置测试环境,避免大量的重复性工作以及因环境配置而导致工作间断等问题,有效地减少了测试前的准备工作,大大缩短了测试时间,有效提高组网测试的工作效率,进而为软件测试减少开销,缩短产品开发周期,大大降低测试成本。

Description

一种预置组网环境的软件测试系统和方法
技术领域
本发明属于复杂组网下的接口测试领域,具体涉及一种预置组网环境的软件测试系统和方法。
背景技术
现有组网结构是复合网络拓扑结构,其网络节点繁多,例如密钥分发网络节点、中继基站网络节点、密钥缓存中心节点、根密钥中心节点、CA认证中心节点以及服务器终端节点等诸多节点,网络节点越多测试难度也越复杂。
在传统的软件测试中,需要人工模拟不同的测试条件,对结果进行验证,从而找出程序中潜在的错误。当测试密钥分发时,需要对各个配对的网络节点进行密钥分发,其过程还包括了密钥的跟踪与统计;而密钥中继过程涉及了各个节点的密钥消耗等。因此,对于软件测试人员来说,需要关注的并不仅仅是软件本身,对于这些环节中的网络节点,其密钥量、密钥消耗情况、网络带宽、内存、CPU、I/O等都是需要记录和分析的,就目前现有测试工具而言,并未提供与此相对应的记录模块,同时也无法自动记录和分析这些重要数据,只能暂由人工手动记录和分析。与此同时,现有测试工具要么只能进行用例管理,要么仅能提供执行报告,并没有和系统环境挂钩,形成闭环。在这种情况下,面对如此复杂庞大的组网体系,测试人员每测试一个网络节点,便需要为其重新配置对应的密钥和密钥量,特别是在测试异常场景时,需要手工构造每个网络节点的测试环境,测试异常场景结束后还需还原测试环境。测试不同场景用例过程中,每恢复一次环境都需人工手动配置来还原,复用性差,进而导致系统的可维护性低,也会难以避免大量的重复劳动,消耗很多不必要的人力和物力,耗时长,以及因环境配置而导致工作间断等问题,这无疑会大大降低组网测试的工作效率,导致软件测试开销高,产品开发周期长,测试成本大幅增加。因此,急需一种软件测试系统和方法来解决现有技术中的上述问题。
发明内容
发明目的:本发明的目的是提供一种预置组网环境的软件测试系统和方法,能够自动记录和分析组网数据,在工作效率和复用性两方面为组网测试提供自动化保障,为测试工作节约时间和资源,提高组网测试的工作效率,降低测试成本,解决了现有技术中存在的问题。
本发明提供一种预置组网环境的软件测试系统,其包含以下模块:
指标监控模块,与信息收集模块通信,用于实时监控并记录当前组网信息,为信息收集模块提供所有测试操作前的初始测试环境和每条测试用例的末端测试环境;
信息收集模块,与指标监控模块和测试用例执行模块通信,用于主动抓取指标监控模块记录的当前组网信息,存储指标监控模块中所有测试操作前的初始测试环境和每条测试用例的末端测试环境并发送至测试用例执行模块;
测试用例管理模块,与环境预置模块和测试用例执行模块通信,用于创建所有测试用例,为所有测试用例排序后调用环境预置块为每条测试用例配置实际测试环境,环境预置模块返回实际测试环境至测试用例管理模块,测试用例管理模块将顺序排列的所有测试用例以及其一一对应的实际测试环境形成待测表单,随后将待测表单输出至测试用例执行模块;
环境预置模块,与测试用例管理模块通信,用于为每条测试用例配置实际测试环境:自测试用例管理模块接收到顺序排列的所有测试用例后,依序根据判断标准为当前测试用例配置实际测试环境,其中依序根据判断标准为当前测试用例配置实际测试环境的具体过程为,依序判断当前测试用例与上一条测试用例相比功能是否相同,若是,则不需要为当前测试用例配置期望测试环境,直接调用上一条测试用例的末端期望环境作为其实际测试环境,若否,则继续判断当前测试用例与上一条测试用例相比目的是否相同,若是,则不需要为当前测试用例配置期望测试环境,直接调用上一条测试用例的末端期望环境作为其实际测试环境,若否,则需要为当前测试用例配置期望测试环境作为其实际测试环境;
测试用例执行模块,与测试用例管理模块、信息收集模块和环境分析模块通信,用于自测试用例管理模块接收到待测表单后,首先与信息收集模块通信,由信息收集模块抓取到所有测试操作前的初始测试环境后反馈给测试用例执行模块,更新至待测表单,再根据待测表单,按顺序针对每条测试用例在其对应的实际测试环境下执行测试操作,每条测试用例的测试操作结束时都从信息收集模块中获取该条测试用例的末端测试环境并反馈给测试用例执行模块,更新至待测表单,所有测试用例执行结束后将测试用例执行模块中的全部数据发送至环境分析模块;
环境分析模块,与测试用例执行模块和测试报告生成模块通信,用于存储自测试用例执行模块接收到的全部数据,其中所述全部数据包括待测表单,所述待测表单中包括初始测试环境、顺序排列的所有测试用例、为每条测试用例配置的实际测试环境以及其一一对应的末端测试环境,将每条测试用例的实际测试环境与末端测试环境进行对比,并将初始测试环境与测试表单中最后一条测试环境的末端测试环境进行对比,将所有对比结果以及待测表单一同输出至测试报告生成模块;
测试报告生成模块,与环境分析模块通信,用于将自环境分析模块接收到的对比结果以及初始测试环境和待测表单以文字或图或表的形式输出,生成完整的用例执行报告。
作为本发明的一种改进,在所述环境预置模块中,首条测试用例的上一条测试用例为空,为首条测试用例配置期望测试环境作为其实际测试环境。
作为本发明的一种改进,所述指标监控模块实时监控并记录组网环境下各个网络节点的组网信息,当信息收集模块接收到请求命令时,主动向指标监控模块发起通讯,指标监控模块接收到通讯请求后将当前组网信息反馈给信息收集模块,信息收集模块收到后存储,所述组网信息包括初始测试环境、每条测试用例的末端测试环境,为向测试用例执行模块提供数据做准备;测试用例管理模块创建所有测试用例,并管理所有测试用例的测试顺序,随后发送至环境预置模块,调用环境预置模块为每条测试用例配置实际测试环境,最后将顺序排列的所有测试用例以及其一一对应的实际测试环境返回至测试用例管理模块,由测试用例管理模块形成待测表单,并输出至测试用例执行模块,测试用例执行模块接收到待测表单后按顺序对每条测试用例在其一一对应的实际测试环境下开始执行测试操作,在开始执行测试操作的同时,从信息收集模块中获取所有测试操作前的初始测试环境,并反馈给待测表单,在每条测试用例的测试操作结束时都从信息收集模块中获取该条测试用例的末端测试环境并反馈给待测表单,所有测试用例执行结束后测试用例执行模块将其中的全部数据都发送至环境分析模块,环境分析模块存储自测试用例执行模块接收到的全部数据,并将每条测试用例的实际测试环境与末端测试环境进行对比,将初始测试环境与最后一条测试环境的末端测试环境进行对比,将所有对比结果以及待测表单一同输出至测试报告生成模块,由测试报告生成模块生成用例执行报告。
作为本发明的一种改进,所述环境预置模块根据预先配置生成脚本,通过远程控制的方式对受控网络节点进行环境预置。
作为本发明的一种改进,节点控制单元集成于预置组网环境的软件测试系统中,所述节点控制单元包括信息收集模块、环境预置模块、环境分析模块,其中各个模块可相互通讯并共享数据库表。
作为本发明的一种改进,所述指标监控模块预先配置在各个网络节点,并调用密钥分发系统预留的查询接口,记录各个网络节点的密钥和密钥量,其中所述网络节点包括接入基站、网管服务器、密钥分发服务器、安全服务器、终端系统。
作为本发明的一种改进,所述指标监控模块监控并记录的当前组网信息包括密钥、剩余密钥量、网络带宽、内存、CPU、I/O。
作为本发明的一种改进,本发明还提供一种基于本发明预置组网环境的软件测试系统的测试方法,其包含以下步骤:
S1、在测试用例管理模块中创建所有测试用例,测试用例管理模块为所有测试用例排序并发送至环境预置模块;
S2、环境预置模块为每条测试用例配置对应的实际测试环境:依序判断当前测试用例与上一条测试用例相比功能是否相同,若是,则不需要为当前测试用例配置期望测试环境,直接调用上一条测试用例的末端期望环境作为其实际测试环境,若否,则继续判断当前测试用例与上一条测试用例相比目的是否相同,若是,则不需要为当前测试用例配置期望测试环境,直接调用上一条测试用例的末端期望环境作为其实际测试环境,若否,则需要为当前测试用例配置期望测试环境作为其实际测试环境,其中首条测试用例的上一条测试用例为空,为首条测试用例配置期望测试环境作为其实际测试环境;为每条测试用例配置完成实际测试环境后,将顺序排列的所有测试用例以及其一一对应的实际测试环境返回至测试用例管理模块,由测试用例管理模块生成待测表单,所述待测表单中包括初始测试环境、顺序排列的所有测试用例、为每条测试用例配置的实际测试环境以及其一一对应的末端测试环境,随后测试用例管理模块将待测表单发送至测试用例执行模块;
S3、测试用例执行模块接收到待测表单后开始执行测试操作,首条测试用例开始执行测试操作时,测试用例执行模块将该时刻发送至信息收集模块,信息收集模块从指标监控模块抓取该时刻下的组网环境作为该待测表单的初始测试环境,并发送至测试用例执行模块保存,测试用例执行模块将该初始测试环境反馈给待测表单;
S4、获得初始测试环境后,测试用例执行模块按顺序对每条测试用例在待测表单中其对应的实际测试环境下进行测试操作;测试操作完成时,测试用例执行模块将该时刻发送至信息收集模块,信息收集模块从指标监控模块抓取该测试操作完成时刻下的组网环境作为该条测试用例的末端测试环境,并发送至测试用例执行模块保存,测试用例执行模块将该末端测试环境反馈给待测表单;
S5、按顺序将待测表单中的所有测试用例执行完成后,测试用例执行模块将待测表单发送至环境分析模块,所述待测表单中包括初始测试环境、顺序排列的所有测试用例、为每条测试用例配置的实际测试环境以及其一一对应的末端测试环境,由环境分析模块对每条测试用例的实际测试环境和末端测试环境进行对比得到两者的差异数据,并对初始测试环境和最后一条测试用例的末端测试环境进行对比得到两者的差异数据,将所有差异数据以及待测表单汇总并输出至测试报告生成模块,由测试报告生成模块生成用例执行报告。
作为本发明的一种改进,在步骤S4中,所述测试用例执行模块按顺序对每条测试用例在待测表单中其对应的实际测试环境下进行测试操作,当该测试用例为待测表单中的首条测试用例时,当前测试用例的上一条测试用例的末端测试环境为空,为首条测试用例配置期望测试环境作为其实际测试环境。
作为本发明的一种改进,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述测试方法。
本发明的有益效果为:
1、提供各个网络节点的指标数据相对应的监控和记录模块,自动记录,方便测试人员了解当前各个网络节点数据状态,对比测试用例执行前后的环境差异,分析测试结果;
2、系统中各个模块相互之间通信连接,相辅相成,使得测试用例的管理与报告生成相结合,系统可根据需要自动控制单个或多个网络节点的环境状态;
3、环境预置模块根据判断标准为不同的测试场景提供相对应的测试环境,无需测试人员在每条测试用例的开始为该条测试用例重新配置测试环境,避免大量的重复性工作以及因环境配置而导致的工作间断的等问题,有效地减少了测试前的准备工作,大大缩短了测试时间,减少了劳动量,避免不必要的人力和物力消耗,有效提高组网测试的工作效率;同时复用性高,改善了系统的可维护性和客观性以及准确性,进而为软件测试减少开销,缩短产品开发周期,大大降低测试成本。
附图说明
图1为本发明预置组网环境的软件测试系统;
图2为参数说明表;
图3为组网示意图;
图4为本发明预置组网环境的软件测试方法流程图。
具体实施方式
下面结合附图和具体实施方式,进一步阐明本发明,应理解下述具体实施方式仅用于说明本发明而不用于限制本发明的范围。
本发明提供一种预置组网环境的软件测试系统,其中核心组成结构包括指标监控模块、信息收集模块、环境预置模块和环境分析模块,其中各个模块可相互通讯并共享数据库表,该四个模块集成于节点控制单元中,该节点控制单元位于本发明的软件测试系统内,如图1所示。
在本发明的实施例中,指标监控模块与信息收集模块通信,用于实时获取并记录组网中每个网络节点的各项指标数据,数据包括密钥、密钥量、密钥消耗情况、网络带宽、内存、CPU、I/O、服务或设备的工作状态等,为信息收集模块提供所有测试操作前的初始测试环境和每条测试用例的末端测试环境。该模块需要提前部署在各个待测网络节点,例如接入基站、网管服务器、密钥分发服务器、安全服务器、终端系统等。
在本发明的实施例中,指标监控模块linux版基于开源的Node_exporter二次开发,而windows版基于WMI-exporter二次开发,两者原理相似,区别在于系统内核不同,一个支持监控UNIX内核操作系统,一个支持监控NT内核操作系统。因此,可以根据网络节点的类型选择使用版本。
在本发明的实施例中,因为需要监控量子组网特定的业务,例如密钥量、密钥的消耗情况、或者是控制随机数生成速率等,需要在collect[]列表中,添加监控指标,在本发明的实施例中只需要调通密钥分发系统的密钥查询接口,将数据存入列表中即可,参数如图2所示。
在本发明的实施例中,当指标监控模块实时将数据存入临时内存中,只需要等待信息收集模块定时发起抓取请求
curl-g-X GET http://192.168.70.X:9100/metrics?collect[]=encrypt,
此时指标监控模块将会返回指标数据至信息收集模块并清空临时内存。
在本发明的实施例中,信息收集模块主动请求抓取指标监控模块中的数据,并将返回的结果存储下来作为后续的比对数据或测试结果。同时在测试过程中,当测试人员执行第一个测试场景前,需要记录当前各个网络节点的环境状态,存储指标监控模块中所有测试操作前的初始测试环境发送至测试用例执行模块。每条测试用例的测试结束时,同样需要记录结束时刻的各个网络节点的环境状态,存储为该条测试用例的末端测试环境并发送至测试用例执行模块。
在本发明的实施例中,环境预置模块与测试用例管理模块通信,用于为每条测试用例配置实际测试环境:自测试用例管理模块接收到顺序排列的所有测试用例后,依序判断当前测试用例与上一条测试用例相比功能是否相同,若是,则不需要为当前测试用例配置期望测试环境,直接调用上一条测试用例的末端期望环境作为其实际测试环境,若否,则继续判断当前测试用例与上一条测试用例相比目的是否相同,若是,则不需要为当前测试用例配置期望测试环境,直接调用上一条测试用例的末端期望环境作为其实际测试环境,若否,则需要为当前测试用例配置期望测试环境作为其实际测试环境;如此一来,不需要为每条测试用例重新配置测试环境,有效地减少了测试前的准备工作,提高测试效率;其中首条测试用例的上一条测试用例的末端期望环境为空,因此首条测试用例的实际测试环境即为期望测试环境。在本发明的实施例中,环境预置模块根据测试人员的配置,生成脚本,通过远程控制的方式对受控节点进行环境预置。界面中包含了当前局域网所有网络节点IP,可以供测试选择。举例来说,测试密钥分发服务器A的cpu负载过高的场景,可以选择服务器A的IP,选择cpu选项,值域选择90%,这样配置完成后,系统会远程访问服务器A,执行推送过来的脚本将环境cpu负载至90%,然后再执行相应的接口测试用例。
在本发明的实施例中,环境分析模块与测试用例执行模块和测试报告生成模块通信,用于计算并记录测试结果,存储自测试用例执行模块接收到的全部数据并进行对比分析,接收到的全部数据和最终的对比分析结果一同发送至测试报告生成模块;需要的数据信息包括待测表单,待测表单中包括所有测试用例开始前的初始测试环境信息、顺序排列的所有测试用例、每条测试用例的实际测试环境信息以及该条测试用例执行结束时的末端测试环境信息等,环境分析模块会比对每条测试用例的实际测试环境信息与该条测试用例的末端测试环境信息以及初始测试环境信息与最后一条测试用例的末端测试环境信息的差异。举例来说,一条测试用例的实际测试环境的密钥量为200M,经过对测试用例执行测试操作,系统经过了一次密钥的下发,再测试结束之后再次通过信息收集模块抓取了当前测试环境数据作为末端测试环境,得到密钥量变为1G,这里系统便会记录前后的测试环境结果,即该实际测试环境和该末端测试环境。在本发明的其他实施例中,如果指标是cpu或内存,那么会记录cpu或内存提高的比例。
特别说明,在每一次执行完测试场景前后,都需要收集前后测试环境的数据并进行对比分析,此时也需要调用信息收集模块。
以上说明介绍了核心模块间的统筹与协作,因此本实施例的模块可以集成到本发明的组网测试系统中,参见图1。以上模块使用范围不仅仅限于传统的组网系统,也可用于例如量子组网系统、接口测试用例执行系统、设备调试系统、设备出厂检测系统等等。
在本发明的实施例中,还包含测试用例管理模块,其与环境预置模块和测试用例执行模块通信,用于创建所有测试用例,为测试用例排序后调用环境预置模块为每条测试用例配置实际测试环境,环境预置模块返回实际测试环境至测试用例管理模块,测试用例管理模块将顺序排列的所有测试用例以及其一一对应的实际测试环境形成待测表单,随后测试用例管理模块将待测表单输出至测试用例执行模块。在本发明的实施例中,本测试系统还包含测试用例执行模块,其与测试用例管理模块、信息收集模块和环境分析模块通信,用于自测试用例管理模块接收到待测表单后,首先与信息收集模块通信,由信息收集模块抓取到所有测试操作前的初始测试环境后反馈给测试用例执行模块,更新至待测表单,再根据待测表单,按顺序针对每条测试用例在其对应的实际测试环境下执行测试操作,每条测试用例的测试操作结束时都从信息收集模块中获取该条测试用例的末端测试环境并反馈给测试用例执行模块,更新至待测表单,所有测试用例执行结束后将测试用例执行模块中的全部数据发送至环境分析模块。除上述模块外,本发明系统还包含测试报告生成模块,其与环境分析模块通信,用于将自环境分析模块接收到的对比结果以及初始测试环境和待测表单以文字或图或表的形式输出,生成完整的用例执行报告。
在本发明的实施例中,本发明系统中的各个系统之间的通信联系如下:所述指标监控模块实时监控并记录组网环境下各个网络节点的组网信息,当信息收集模块接收到请求命令时,主动向指标监控模块发起通讯,指标监控模块接收到通讯请求后将当前组网信息反馈给信息收集模块,信息收集模块收到后存储,所述组网信息包括初始测试环境、每条测试用例的末端测试环境,为向测试用例执行模块提供数据做准备;测试用例管理模块创建所有测试用例,并管理所有测试用例的测试顺序,随后发送至环境预置模块,调用环境预置模块为每条测试用例配置实际测试环境,最后将顺序排列的所有测试用例以及其一一对应的实际测试环境返回至测试用例管理模块,由测试用例管理模块形成待测表单,并输出至测试用例执行模块,测试用例执行模块接收到待测表单后按照顺序对每条测试用例在其一一对应的实际测试环境下开始执行测试操作,在开始执行测试操作的同时,从信息收集模块中获取所有测试操作前的初始测试环境,并反馈给待测表单,在每条测试用例的测试操作结束时都从信息收集模块中获取该条测试用例的末端测试环境并反馈给待测表单,所有测试用例执行结束后测试用例执行模块将其中的全部数据都发送至环境分析模块,环境分析模块存储自测试用例执行模块接收到的全部数据,并将每条测试用例的实际测试环境与末端测试环境进行对比,将初始测试环境与最后一条测试环境的末端测试环境进行对比,将所有对比结果以及待测表单一同输出至测试报告生成模块,由测试报告生成模块生成用例执行报告。
在本发明的又一实施例中,主要结合组网结构说明上文所提供的软件测试方法及实现流程。以多个用户终端、接入基站和密钥中心为例:组网图如图3所示,其包含密钥分发服务器,即图3中的密钥中心,该网络节点主要是给配对的网络节点下发密钥,而配对的网元是接入基站与用户终端。此外,不同的小区会配置相应的接入基站及其他网络节点、服务器及用户终端设备等。真实环境下的组网图不限于图3,会有若干个小区、大区或运营商,这里本发明举例仅关注部分组网即可。下文根据图4描述相应的具体步骤:
S1、在测试用例管理模块中创建所有测试用例,测试用例管理模块为所有测试用例排序并发送至环境预置模块;在步骤S1中,测试用例通过数据帧或者http请求组成测试场景;
S2、环境预置模块为每条测试用例配置对应的实际测试环境:依序判断当前测试用例与上一条测试用例相比功能是否相同,若是,则不需要为当前测试用例配置期望测试环境,直接调用上一条测试用例的末端期望环境作为其实际测试环境,若否,则继续判断当前测试用例与上一条测试用例相比目的是否相同,若是,则不需要为当前测试用例配置期望测试环境,直接调用上一条测试用例的末端期望环境作为其实际测试环境,若否,则需要为当前测试用例配置期望测试环境作为其实际测试环境,其中首条测试用例的上一条测试用例为空,为首条测试用例配置期望测试环境作为其实际测试环境;为每条测试用例配置完成实际测试环境后,将顺序排列的所有测试用例以及其一一对应的实际测试环境返回至测试用例管理模块,由测试用例管理模块生成待测表单,所述待测表单中包括初始测试环境、顺序排列的所有测试用例、以及实时更新的为每条测试用例配置的实际测试环境和其一一对应的末端测试环境;随后测试用例管理模块将待测表单发送至测试用例执行模块;在步骤S2中,根据测试用例的前置条件以及需要模拟的测试环境,控制网络节点的网络状态、磁盘内存、当前节点密钥量、服务或设备工作状态等;
举例来说,测试接入基站密钥自动分发过程,接入基站密钥量在低于阈值20%时,自动请求密钥中心下发密钥,此时为了创造低于阈值20%的条件,传统做法中测试人员会找到相应的待测基站,消耗基站密钥或是直接修改数据库,但是在集成节点控制单元的测试用例系统中,只需要配置待测基站的密钥量,即可进行自动处理。当需要控制较多的网络节点时,只需要在该条测试用例前,配置预置条件即可完成多节点控制。假设需要测试不同的网络状态下的终端用户密钥分发的实际情况:环境预置模块配置多个用户终端处于不同的网络状态,例如用户终端A配置正常的网络环境,用户终端B配置丢包率5%的网络环境,用户终端C配置丢包率10%的网络环境,用户终端D配置丢包率20%的网络环境,因此在执行测试用例前先添加4条测试环境配置,再结合配置好的测试用例,系统会根据参数分别模拟四台用户终端分别向密钥中心申请密钥。为避免与现有技术重复,本文不再详细阐述测试用例的编写过程。
S3、测试用例执行模块接收到待测表单后,测试人员就可以开始执行测试操作,首条测试用例开始执行测试操作开始时,测试用例执行模块将该时刻发送至信息收集模块,信息收集模块从指标监控模块抓取该时刻下的组网环境作为该待测表单的初始测试环境,并发送至测试用例执行模块保存,测试用例执行模块将该初始测试环境反馈给待测表单;在本发明的实施例中,每条测试用例执行前,均会根据预设条件判断实际测试环境选用的是期望测试环境还是上一条的末端测试环境,若上一条的末端测试环境为空,则直接选用上一条的末端测试环境数据,若选用期望环境配置,则根据期望测试环境,再执行测试用例;
S4、获得初始测试环境后,测试用例执行模块按顺序对每条测试用例在待测表单中其对应的实际测试环境下进行测试操作;测试操作完成时,测试用例执行模块将该时刻发送至信息收集模块,信息收集模块从指标监控模块抓取该测试操作完成时刻下的组网环境作为该条测试用例的末端测试环境,并发送至测试用例执行模块保存,测试用例执行模块将该末端测试环境反馈给待测表单;在步骤S4中,所述将测试用例在该实际测试环境下进行测试操作,当该测试用例为待测表单中的首条测试用例时,当前测试用例的上一条测试用例的末端测试环境不可选,因此首条测试用例的实际测试环境为期望测试环境;
S5、按顺序将待测表单中的所有测试用例执行完成后,测试用例执行模块将实时更新的待测表单发送至环境分析模块,节点控制单元的环境分析模块,会比对前后环境的结果,为最后的测试报告提供数据所述待测表单中包括初始测试环境、顺序排列的所有测试用例、为每条测试用例配置的实际测试环境以及其一一对应的末端测试环境,由环境分析模块对每条测试用例的实际测试环境和末端测试环境进行对比得到两者的差异数据,并对初始测试环境和最后一条测试用例的末端测试环境进行对比得到两者的差异数据,将所有差异数据以及待测表单汇总并输出至测试报告生成模块,由测试报告生成模块生成用例执行报告。这样执行完整的待测表单的所有测试用例后,测试报告生成模块会出具一份完整的用例执行报告,其包含整个待测表单开始前的初始测试环境以及每条测试用例执行开始时的实际测试环境和其对应执行结束时的末端测试环境数据。应注意,测试完成后,测试环境受到污染,此时应将测试环境恢复至初始测试环境。
以上步骤说明,是将节点控制单元集成在测试用例管理系统中,使得整个测试过程自动化,大大提高了测试效率,且在复杂的组网环境中,测试可以更系统、更清晰的分析环境数据,让测试结果更完整、更准确。

Claims (10)

1.一种预置组网环境的软件测试系统,其特征在于,包含以下模块:
指标监控模块,与信息收集模块通信,用于实时监控并记录当前组网信息,为信息收集模块提供所有测试操作前的初始测试环境和每条测试用例的末端测试环境;
信息收集模块,与指标监控模块和测试用例执行模块通信,用于主动抓取指标监控模块记录的当前组网信息,存储指标监控模块中所有测试操作前的初始测试环境和每条测试用例的末端测试环境并发送至测试用例执行模块;
测试用例管理模块,与环境预置模块和测试用例执行模块通信,用于创建所有测试用例,为所有测试用例排序后调用环境预置块为每条测试用例配置实际测试环境,环境预置模块返回实际测试环境至测试用例管理模块,测试用例管理模块将顺序排列的所有测试用例以及其一一对应的实际测试环境形成待测表单,随后将待测表单输出至测试用例执行模块;
环境预置模块,与测试用例管理模块通信,用于为每条测试用例配置实际测试环境:自测试用例管理模块接收到顺序排列的所有测试用例后,依序根据判断标准为当前测试用例配置实际测试环境,其中依序根据判断标准为当前测试用例配置实际测试环境的具体过程为,依序判断当前测试用例与上一条测试用例相比功能是否相同,若是,则不需要为当前测试用例配置期望测试环境,直接调用上一条测试用例的末端期望环境作为其实际测试环境,若否,则继续判断当前测试用例与上一条测试用例相比目的是否相同,若是,则不需要为当前测试用例配置期望测试环境,直接调用上一条测试用例的末端期望环境作为其实际测试环境,若否,则需要为当前测试用例配置期望测试环境作为其实际测试环境;
测试用例执行模块,与测试用例管理模块、信息收集模块和环境分析模块通信,用于自测试用例管理模块接收到待测表单后,首先与信息收集模块通信,由信息收集模块抓取到所有测试操作前的初始测试环境后反馈给测试用例执行模块,更新至待测表单,再根据待测表单,按顺序针对每条测试用例在其对应的实际测试环境下执行测试操作,每条测试用例的测试操作结束时都从信息收集模块中获取该条测试用例的末端测试环境并反馈给测试用例执行模块,更新至待测表单,所有测试用例执行结束后将测试用例执行模块中的全部数据发送至环境分析模块;
环境分析模块,与测试用例执行模块和测试报告生成模块通信,用于存储自测试用例执行模块接收到的全部数据,其中所述全部数据包括待测表单,所述待测表单中包括初始测试环境、顺序排列的所有测试用例、为每条测试用例配置的实际测试环境以及其一一对应的末端测试环境,将每条测试用例的实际测试环境与末端测试环境进行对比,并将初始测试环境与测试表单中最后一条测试环境的末端测试环境进行对比,将所有对比结果以及待测表单一同输出至测试报告生成模块;
测试报告生成模块,与环境分析模块通信,用于将自环境分析模块接收到的对比结果以及初始测试环境和待测表单以文字或图或表的形式输出,生成完整的用例执行报告。
2.根据权利要求1所述的预置组网环境的软件测试系统,其特征在于,在所述环境预置模块中,首条测试用例的上一条测试用例为空,为首条测试用例配置期望测试环境作为其实际测试环境。
3.根据权利要求1所述的预置组网环境的软件测试系统,其特征在于,所述指标监控模块实时监控并记录组网环境下各个网络节点的组网信息,当信息收集模块接收到请求命令时,主动向指标监控模块发起通讯,指标监控模块接收到通讯请求后将当前组网信息反馈给信息收集模块,信息收集模块收到后存储,所述组网信息包括初始测试环境、每条测试用例的末端测试环境,为向测试用例执行模块提供数据做准备;测试用例管理模块创建所有测试用例,并管理所有测试用例的测试顺序,随后发送至环境预置模块,调用环境预置模块为每条测试用例配置实际测试环境,最后将顺序排列的所有测试用例以及其一一对应的实际测试环境返回至测试用例管理模块,由测试用例管理模块形成待测表单,并输出至测试用例执行模块,测试用例执行模块接收到待测表单后按顺序对每条测试用例在其一一对应的实际测试环境下开始执行测试操作,在开始执行测试操作的同时,从信息收集模块中获取所有测试操作前的初始测试环境,并反馈给待测表单,在每条测试用例的测试操作结束时都从信息收集模块中获取该条测试用例的末端测试环境并反馈给待测表单,所有测试用例执行结束后测试用例执行模块将其中的全部数据都发送至环境分析模块,环境分析模块存储自测试用例执行模块接收到的全部数据,并将每条测试用例的实际测试环境与末端测试环境进行对比,将初始测试环境与最后一条测试环境的末端测试环境进行对比,将所有对比结果以及待测表单一同输出至测试报告生成模块,由测试报告生成模块生成用例执行报告。
4.根据权利要求1所述的预置组网环境的软件测试系统,其特征在于,所述环境预置模块根据预先配置生成脚本,通过远程控制的方式对受控网络节点进行环境预置。
5.根据权利要求1所述的预置组网环境的软件测试系统,其特征在于,节点控制单元集成于预置组网环境的软件测试系统中,所述节点控制单元包括信息收集模块、环境预置模块、环境分析模块,其中各个模块可相互通讯并共享数据库表。
6.根据权利要求1所述的预置组网环境的软件测试系统,其特征在于,所述指标监控模块预先配置在各个网络节点,并调用密钥分发系统预留的查询接口,记录各个网络节点的密钥和密钥量,其中所述网络节点包括接入基站、网管服务器、密钥分发服务器、安全服务器、终端系统。
7.根据权利要求1所述的预置组网环境的软件测试系统,其特征在于,所述指标监控模块监控并记录的当前组网信息包括密钥、剩余密钥量、网络带宽、内存、CPU、I/O。
8.一种基于权利要求1所述的预置组网环境的软件测试系统的测试方法,其特征在于,包含以下步骤:
S1、在测试用例管理模块中创建所有测试用例,测试用例管理模块为所有测试用例排序并发送至环境预置模块;
S2、环境预置模块为每条测试用例配置对应的实际测试环境:依序判断当前测试用例与上一条测试用例相比功能是否相同,若是,则不需要为当前测试用例配置期望测试环境,直接调用上一条测试用例的末端期望环境作为其实际测试环境,若否,则继续判断当前测试用例与上一条测试用例相比目的是否相同,若是,则不需要为当前测试用例配置期望测试环境,直接调用上一条测试用例的末端期望环境作为其实际测试环境,若否,则需要为当前测试用例配置期望测试环境作为其实际测试环境,其中首条测试用例的上一条测试用例为空,为首条测试用例配置期望测试环境作为其实际测试环境;为每条测试用例配置完成实际测试环境后,将顺序排列的所有测试用例以及其一一对应的实际测试环境返回至测试用例管理模块,由测试用例管理模块生成待测表单,所述待测表单中包括初始测试环境、顺序排列的所有测试用例、为每条测试用例配置的实际测试环境以及其一一对应的末端测试环境,随后测试用例管理模块将待测表单发送至测试用例执行模块;
S3、测试用例执行模块接收到待测表单后开始执行测试操作,首条测试用例开始执行测试操作时,测试用例执行模块将该时刻发送至信息收集模块,信息收集模块从指标监控模块抓取该时刻下的组网环境作为该待测表单的初始测试环境,并发送至测试用例执行模块保存,测试用例执行模块将该初始测试环境反馈给待测表单;
S4、获得初始测试环境后,测试用例执行模块按顺序对每条测试用例在待测表单中其对应的实际测试环境下进行测试操作;测试操作完成时,测试用例执行模块将该时刻发送至信息收集模块,信息收集模块从指标监控模块抓取该测试操作完成时刻下的组网环境作为该条测试用例的末端测试环境,并发送至测试用例执行模块保存,测试用例执行模块将该末端测试环境反馈给待测表单;
S5、按顺序将待测表单中的所有测试用例执行完成后,测试用例执行模块将待测表单发送至环境分析模块,所述待测表单中包括初始测试环境、顺序排列的所有测试用例、为每条测试用例配置的实际测试环境以及其一一对应的末端测试环境,由环境分析模块对每条测试用例的实际测试环境和末端测试环境进行对比得到两者的差异数据,并对初始测试环境和最后一条测试用例的末端测试环境进行对比得到两者的差异数据,将所有差异数据以及待测表单汇总并输出至测试报告生成模块,由测试报告生成模块生成用例执行报告。
9.根据权利要求8所述的测试方法,其特征在于,在步骤S4中,所述测试用例执行模块按顺序对每条测试用例在待测表单中其对应的实际测试环境下进行测试操作,当该测试用例为待测表单中的首条测试用例时,当前测试用例的上一条测试用例的末端测试环境为空,为首条测试用例配置期望测试环境作为其实际测试环境。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求8或9所述的测试方法。
CN202310220096.1A 2023-03-09 2023-03-09 一种预置组网环境的软件测试系统和方法 Active CN116225944B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310220096.1A CN116225944B (zh) 2023-03-09 2023-03-09 一种预置组网环境的软件测试系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310220096.1A CN116225944B (zh) 2023-03-09 2023-03-09 一种预置组网环境的软件测试系统和方法

Publications (2)

Publication Number Publication Date
CN116225944A true CN116225944A (zh) 2023-06-06
CN116225944B CN116225944B (zh) 2024-05-07

Family

ID=86580353

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310220096.1A Active CN116225944B (zh) 2023-03-09 2023-03-09 一种预置组网环境的软件测试系统和方法

Country Status (1)

Country Link
CN (1) CN116225944B (zh)

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106874159A (zh) * 2016-12-30 2017-06-20 北京同有飞骥科技股份有限公司 一种集群式自动化测试方法
CN107577600A (zh) * 2017-08-23 2018-01-12 国家新闻出版广电总局广播科学研究院 一种设备的测试方法、装置和计算机设备
WO2018066040A1 (ja) * 2016-10-03 2018-04-12 株式会社日立製作所 管理計算機及びテスト環境決定方法
CN109766271A (zh) * 2018-12-22 2019-05-17 中国平安人寿保险股份有限公司 混合应用自动化测试方法、装置、电子设备及存储介质
CN110928774A (zh) * 2019-11-07 2020-03-27 杭州顺网科技股份有限公司 一种基于节点式的自动化测试系统
CN112052161A (zh) * 2020-08-06 2020-12-08 中信银行股份有限公司 一种接口测试方法、装置、电子设备及介质
CN113051155A (zh) * 2021-03-11 2021-06-29 中国信息通信研究院 一种自动化测试平台的控制系统和控制方法
CN113326209A (zh) * 2021-08-03 2021-08-31 航天中认软件测评科技(北京)有限责任公司 面向大规模并行测试任务的分层分段的监控和干预方法
CN113342698A (zh) * 2021-07-21 2021-09-03 统信软件技术有限公司 一种测试环境调度方法、计算设备及存储介质
CN114116496A (zh) * 2021-11-30 2022-03-01 中国平安人寿保险股份有限公司 自动化测试方法、装置、设备及介质
CN114328275A (zh) * 2022-03-10 2022-04-12 太平金融科技服务(上海)有限公司深圳分公司 系统测试方法、装置、计算机设备和存储介质
CN115687006A (zh) * 2022-10-18 2023-02-03 中电云数智科技有限公司 基于反馈机制的云平台交付流水线监控方法及系统
CN115712529A (zh) * 2022-10-31 2023-02-24 济南博观智能科技有限公司 一种边缘智能设备测试方法、装置、设备及存储介质

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018066040A1 (ja) * 2016-10-03 2018-04-12 株式会社日立製作所 管理計算機及びテスト環境決定方法
CN106874159A (zh) * 2016-12-30 2017-06-20 北京同有飞骥科技股份有限公司 一种集群式自动化测试方法
CN107577600A (zh) * 2017-08-23 2018-01-12 国家新闻出版广电总局广播科学研究院 一种设备的测试方法、装置和计算机设备
CN109766271A (zh) * 2018-12-22 2019-05-17 中国平安人寿保险股份有限公司 混合应用自动化测试方法、装置、电子设备及存储介质
CN110928774A (zh) * 2019-11-07 2020-03-27 杭州顺网科技股份有限公司 一种基于节点式的自动化测试系统
CN112052161A (zh) * 2020-08-06 2020-12-08 中信银行股份有限公司 一种接口测试方法、装置、电子设备及介质
CN113051155A (zh) * 2021-03-11 2021-06-29 中国信息通信研究院 一种自动化测试平台的控制系统和控制方法
CN113342698A (zh) * 2021-07-21 2021-09-03 统信软件技术有限公司 一种测试环境调度方法、计算设备及存储介质
CN113326209A (zh) * 2021-08-03 2021-08-31 航天中认软件测评科技(北京)有限责任公司 面向大规模并行测试任务的分层分段的监控和干预方法
CN114116496A (zh) * 2021-11-30 2022-03-01 中国平安人寿保险股份有限公司 自动化测试方法、装置、设备及介质
CN114328275A (zh) * 2022-03-10 2022-04-12 太平金融科技服务(上海)有限公司深圳分公司 系统测试方法、装置、计算机设备和存储介质
CN115687006A (zh) * 2022-10-18 2023-02-03 中电云数智科技有限公司 基于反馈机制的云平台交付流水线监控方法及系统
CN115712529A (zh) * 2022-10-31 2023-02-24 济南博观智能科技有限公司 一种边缘智能设备测试方法、装置、设备及存储介质

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
孙磊;张怡;张志正;: "私有云平台测试方案与实践", 信息技术与标准化, no. 06, 10 June 2018 (2018-06-10) *
陈征;: "基于STAF/STAX的消息中间件自动化测试系统的研究", 电子制作, no. 15, 1 August 2018 (2018-08-01) *
黄清清, 许宏斌: "软件测试计划与测试用例在嵌入系统中的应用", 舰船电子工程, no. 01, 20 February 2005 (2005-02-20) *

Also Published As

Publication number Publication date
CN116225944B (zh) 2024-05-07

Similar Documents

Publication Publication Date Title
CN110928774B (zh) 一种基于节点式的自动化测试系统
CN113014449B (zh) 一种用电信息采集系统的本地通信协议压力测试方法及系统
CN112714047A (zh) 基于工控协议流量的测试方法、装置、设备及存储介质
CN107819611B (zh) 基于iec61850多服务端仿真的客户端测试方法
CN111259073A (zh) 基于日志、流量和业务访问的业务系统运行状态智能研判系统
CN106411637A (zh) 物联网设备场景测试方法
CN111930078B (zh) 一种面向核控系统的网络测试装置
CN113704089A (zh) 一种全场景的gsm-r接口服务器测试平台系统
CN111181800A (zh) 测试数据处理方法、装置、电子设备及存储介质
CN113747150B (zh) 一种基于容器云实现的视频服务系统的测试方法和系统
CN101098259B (zh) 一种实现大数据冲击的自动化测试的方法和系统
CN116225944B (zh) 一种预置组网环境的软件测试系统和方法
CN107342904B (zh) 一种用于变电站站控层设备测试的数据模拟方法及装置
CN113946559A (zh) 数据处理方法、目标数据库系统及数据处理系统
CN108462709B (zh) 一种客户端采集电能质量监测终端测量数据的方法
CN114443488A (zh) 一种arinc664网络配置测试框架构建方法
CN111459795A (zh) 集群的压力测试方法及装置、计算机设备、存储介质
CA2285585A1 (en) Network testing
Yang et al. A technical research towards 5G SLA: System definition, sense and assurance solution
CN115914039B (zh) 一种网络性能监测装置及其监测方法
CN111240920B (zh) 性能测试方法、装置、服务器及存储介质
CN114915562A (zh) Iec 61850站控层网络通讯服务仿真的服务端和仿真方法
CN114286378B (zh) 一种自组网无线通信设备网络性能测试系统及方法
CN110213783B (zh) 基站的监测方法及装置、系统
Bi et al. VECROsim: A Versatile Metric-oriented Microservice Fault Simulation System (Tools and Artifact Track)

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