CN115733741B - 一种针对待测系统的异常场景测试方法和装置 - Google Patents
一种针对待测系统的异常场景测试方法和装置 Download PDFInfo
- Publication number
- CN115733741B CN115733741B CN202211392206.4A CN202211392206A CN115733741B CN 115733741 B CN115733741 B CN 115733741B CN 202211392206 A CN202211392206 A CN 202211392206A CN 115733741 B CN115733741 B CN 115733741B
- Authority
- CN
- China
- Prior art keywords
- fault
- triggering mode
- type
- target
- tested
- 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.)
- Active
Links
- 230000002159 abnormal effect Effects 0.000 title claims abstract description 75
- 238000010998 test method Methods 0.000 title claims abstract description 9
- 230000004044 response Effects 0.000 claims abstract description 33
- 238000012360 testing method Methods 0.000 claims description 73
- 238000000034 method Methods 0.000 claims description 45
- 238000004590 computer program Methods 0.000 claims description 16
- 230000006870 function Effects 0.000 claims description 16
- 230000001960 triggered effect Effects 0.000 claims description 9
- 238000004458 analytical method Methods 0.000 claims description 6
- 230000010485 coping Effects 0.000 abstract description 7
- 230000001360 synchronised effect Effects 0.000 abstract description 6
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000015556 catabolic process Effects 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011056 performance test Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明实施例提供了一种针对待测系统的异常场景测试方法和装置,在获取第三方系统故障的故障类型后,响应于针对故障触发方式的选择指令,确定目标故障触发方式,从故障类型中确定采用目标故障触发方式的目标故障类型,并根据目标故障触发方式和目标故障类型,配置挡板程序并运行挡板程序,使得挡板程序模拟第三方系统出现故障的各种复杂多样的异常场景,从而将故障类型返回待测系统,使得测试人员获取在异常场景下待测系统的运行状态,提前预警待测系统在多样故障发生时能否具有应对故障的能力,便于提前做好防范措施,有利于保障待测系统稳定运行,避免其他系统出现故障时待测系统无法兼容故障,导致待测系统同步崩溃或者造成数据丢失的问题。
Description
技术领域
本发明涉及测试技术领域,特别是涉及一种针对待测系统的异常场景测试方法、一种针对待测系统的异常场景测试装置、一种电子设备和一种计算机可读存储介质。
背景技术
在跨系统的测试项目中,通常会由于测试硬件资源有限、难以进行多系统之间的协调等客观因素的限制,导致无法搭建一个完整的测试环境来完成测试工作,此时,通常可以利用挡板程序等软件程序来模拟其他相关系统的功能。
但是,在现有的针对待测系统的测试方法中,通常是利用挡板程序做常规的功能或者性能测试,无法模拟其他系统出现异常的情况,当其他系统出现故障时,待测系统可能会无法兼容这种故障,导致待测系统同步崩溃或者造成数据丢失。
发明内容
鉴于上述问题,提出了本发明实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种针对待测系统的异常场景测试方法、一种针对待测系统的异常场景测试装置、一种电子设备和一种计算机可读存储介质。
为了解决上述问题,本发明实施例公开了一种针对待测系统的异常场景测试方法,应用于服务器,所述待测系统与所述服务器连接,所述服务器上运行有挡板程序,所述挡板程序用于模拟第三方系统的功能,所述方法包括:
获取第三方系统故障的故障类型;
响应于针对故障触发方式的选择指令,确定目标故障触发方式;
从所述故障类型中,确定采用所述目标故障触发方式的目标故障类型;
根据所述目标故障触发方式和所述目标故障类型,配置所述挡板程序并运行所述挡板程序,以模拟第三方系统出现故障的异常场景;
当接收到所述待测系统发送的测试请求时,将所述目标故障类型返回至所述待测系统,以使测试人员获取在所述异常场景下所述待测系统的运行状态。
可选地,所述从所述故障类型中,确定采用所述目标故障触发方式的目标故障类型,包括:
若所述目标故障触发方式为单个触发方式,则从所述故障类型中,随机选择采用所述单个触发方式的一种故障类型;
若所述目标故障触发方式为组合触发方式,则从所述故障类型中,随机选择采用所述组合触发方式的至少两种故障类型。
可选地,所述从所述故障类型中,确定采用所述目标故障触发方式的目标故障类型,包括:
若所述目标故障触发方式为单个触发方式,则响应于针对所述故障类型的选择指令,确定采用所述单个触发方式的一种故障类型;
若所述目标故障触发方式为组合触发方式,则响应于针对所述故障类型的选择指令,确定采用所述组合触发方式的至少两种故障类型。
可选地,若所述目标故障触发方式为组合触发方式,所述根据所述目标故障触发方式和所述目标故障类型,配置所述挡板程序并运行所述挡板程序,以模拟第三方系统出现故障的异常场景,包括:
根据所述组合触发方式和所述至少两种故障类型,配置所述挡板程序;
按照所述至少两种故障类型的选择顺序,依次触发所述至少两种故障类型对应的系统故障,以模拟第三方系统依次出现所述系统故障的异常场景。
可选地,在所述响应于针对故障触发方式的选择指令,确定目标故障触发方式之前,还包括:
获取用于指示是否触发故障的控制指令;
若所述控制指令指示不触发故障,则向所述待测系统返回正常参数;
若所述控制指令指示触发故障,则执行所述响应于针对故障触发方式的选择指令,确定目标故障触发方式的步骤。
可选地,所述第三方系统故障的故障类型从预设数据库中获取,所述故障类型包括线上故障类型,在所述获取第三方系统故障的故障类型之前,还包括:
获取线上环境的第三方系统发生故障时的故障日志;
对所述故障日志进行故障分析,得到线上故障类型,并将所述线上故障类型写入预设数据库中。
可选地,所述故障类型还包括非线上故障类型,在所述获取第三方系统故障的故障类型之前,还包括:
获取测试人员输入的非线上故障类型;
将所述非线上故障类型写入所述预设数据库中。
本发明实施例还公开了一种针对待测系统的异常场景测试装置,应用于服务器,所述待测系统与所述服务器连接,所述服务器上运行有挡板程序,所述挡板程序用于模拟第三方系统的功能,所述装置包括:
获取模块,用于获取第三方系统故障的故障类型;
响应模块,用于响应于针对故障触发方式的选择指令,确定目标故障触发方式;
确定模块,用于从所述故障类型中,确定采用所述目标故障触发方式的目标故障类型;
配置模块,用于根据所述目标故障触发方式和所述目标故障类型,配置所述挡板程序并运行所述挡板程序,以模拟第三方系统出现故障的异常场景;
接收模块,用于当接收到所述待测系统发送的测试请求时,将所述目标故障类型返回至所述待测系统,以使测试人员获取在所述异常场景下所述待测系统的运行状态。
可选地,所述确定模块,包括:
第一随机选择子模块,用于若所述目标故障触发方式为单个触发方式,则从所述故障类型中,随机选择采用所述单个触发方式的一种故障类型;
第二随机选择子模块,用于若所述目标故障触发方式为组合触发方式,则从所述故障类型中,随机选择采用所述组合触发方式的至少两种故障类型。
可选地,所述确定模块,包括:
第一响应确定子模块,用于若所述目标故障触发方式为单个触发方式,则响应于针对所述故障类型的选择指令,确定采用所述单个触发方式的一种故障类型;
第二响应确定子模块,用于若所述目标故障触发方式为组合触发方式,则响应于针对所述故障类型的选择指令,确定采用所述组合触发方式的至少两种故障类型。
可选地,若所述目标故障触发方式为组合触发方式,所述配置模块,包括:
挡板程序配置子模块,用于根据所述组合触发方式和所述至少两种故障类型,配置所述挡板程序;
依次触发子模块,用于按照所述至少两种故障类型的选择顺序,依次触发所述至少两种故障类型对应的系统故障,以模拟第三方系统依次出现所述系统故障的异常场景。
可选地,在所述响应于针对故障触发方式的选择指令,确定目标故障触发方式之前,还包括:
控制指令获取模块,用于获取用于指示是否触发故障的控制指令;
参数返回模块,用于若所述控制指令指示不触发故障,则向所述待测系统返回正常参数;
继续执行模块,用于若所述控制指令指示触发故障,则执行所述响应于针对故障触发方式的选择指令,确定目标故障触发方式的步骤。
可选地,所述第三方系统故障的故障类型从预设数据库中获取,所述故障类型包括线上故障类型,在所述获取第三方系统故障的故障类型之前,还包括:
故障日志获取模块,用于获取线上环境的第三方系统发生故障时的故障日志;
线上故障类型写入模块,用于对所述故障日志进行故障分析,得到线上故障类型,并将所述线上故障类型写入预设数据库中。
可选地,所述故障类型还包括非线上故障类型,在所述获取第三方系统故障的故障类型之前,还包括:
非线上故障类型获取模块,用于获取测试人员输入的非线上故障类型;
非线上故障类型写入模块,用于将所述非线上故障类型写入所述预设数据库中。
本发明实施例还公开了一种电子设备,包括:处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如上所述的针对待测系统的异常场景测试方法的步骤。
本发明实施例还公开了一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如上所述的针对待测系统的异常场景测试方法的步骤。
本发明实施例包括以下优点:
在本发明实施例中,在获取第三方系统故障的故障类型后,可以响应于针对故障触发方式的选择指令,确定目标故障触发方式,接着从故障类型中确定采用目标故障触发方式的目标故障类型,并根据目标故障触发方式和目标故障类型,配置挡板程序并运行挡板程序,使得挡板程序可以模拟第三方系统出现故障的各种复杂多样的异常场景,从而在接收到待测系统发送的测试请求后,将目标故障类型返回待测系统,使得测试人员获取在异常场景下待测系统的运行状态,提前预警待测系统在多样故障发生的情况下能否具有应对故障的能力,便于提前做好防范措施,有利于保障待测系统稳定运行,避免其他系统出现故障时待测系统无法兼容这种故障,导致待测系统同步崩溃或者造成数据丢失的问题。
附图说明
图1是本发明实施例提供的一种针对待测系统的异常场景测试方法的步骤流程图;
图2是本发明实施例提供的另一种针对待测系统的异常场景测试方法的步骤流程图;
图3是本发明实施例提供的另一种针对待测系统的异常场景测试方法的流程图;
图4是本发明实施例提供的一种针对待测系统的异常场景测试装置的结构框图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
在跨系统的测试项目中,通常会由于测试硬件资源有限、难以进行多系统之间的协调等客观因素的限制,导致无法搭建一个完整的测试环境来完成测试工作。此时,通常可以利用软件程序来模拟其他相关系统的功能,其中,挡板测试在平时测试联调级联中起着重要的作用。
可以利用挡板程序来模拟其他系统,模拟待测系统与其他系统间的相互调用。然而,在现有的针对待测系统的测试方法中,通常是利用挡板程序做常规的功能或者性能测试,无法模拟其他系统出现异常的情况,当其他系统出现故障时,待测系统可能会无法兼容这种故障,导致待测系统同步崩溃或者造成数据丢失。
本发明实施例的核心构思之一在于,在获取第三方系统故障的故障类型后,可以响应于针对故障触发方式的选择指令,确定目标故障触发方式,接着从故障类型中确定采用目标故障触发方式的目标故障类型,并根据目标故障触发方式和目标故障类型,配置挡板程序并运行挡板程序,使得挡板程序可以模拟第三方系统出现故障的各种复杂多样的异常场景,从而在接收到待测系统发送的测试请求后,将目标故障类型返回待测系统,使得测试人员获取在异常场景下待测系统的运行状态,提前预警待测系统在多样故障发生的情况下能否具有应对故障的能力,便于提前做好防范措施,有利于保障待测系统稳定运行,避免其他系统出现故障时待测系统无法兼容这种故障,导致待测系统同步崩溃或者造成数据丢失的问题。
参照图1,示出了本发明实施例提供的一种针对待测系统的异常场景测试方法的步骤流程图,应用于服务器,所述待测系统与所述服务器连接,所述服务器上运行有挡板程序,所述挡板程序用于模拟第三方系统的功能,所述方法具体可以包括如下步骤:
步骤101,获取第三方系统故障的故障类型。
本发明实施例的针对待测系统的异常场景测试方法可以应用于服务器,服务器可以与待测系统通信连接,服务器上可以有挡板程序,通过运行挡板程序可以模拟第三方系统的功能从而模拟待测系统与第三方系统间的相互调用。
第三方系统出现故障的故障类型可以为多种,服务器可以获取第三方系统故障的故障类型,在用户选择故障触发方式后,服务器可以响应于用户针对故障触发方式的选择指令,确定用户选择的一种故障触发方式以及采用用户选择的故障触发方式来触发故障的目标故障类型,从而配置并运行挡板程序来模拟第三方系统出现故障的异常场景。在开始测试后,待测系统可以发送测试请求,服务器可以接收待测系统发送的测试请求,并将目标故障类型返回至待测系统,从而使得测试人员可以获取待测系统在第三方系统出现故障异常场景下的运行状态,从而检测待测系统对异常情况能否正常进行处理,便于提前做好防范措施。
挡板程序可以是一种用于模拟第三方系统的功能的软件程序,通常可以用于分布式系统。可以通过在待测系统与该待测系统依赖的测试环境之间建立一个挡板,模拟测试环境返回,降低对测试环境的依赖性。
步骤102,响应于针对故障触发方式的选择指令,确定目标故障触发方式。
在本发明实施例中,用户可以选择一种故障触发方式,服务器可以响应于用户针对故障触发方式的选择指令,从而获取并确定用户选择的目标故障触发方式。
步骤103,从所述故障类型中,确定采用所述目标故障触发方式的目标故障类型。
在本发明实施例中,在确定目标故障触发方式后,服务器可以从多种第三方系统故障的故障类型中,确定采用该种用户选择的目标故障触发方式来触发故障的目标故障类型。其中,目标故障类型可以为一种,可以为两种,也可以为多种。
步骤104,根据所述目标故障触发方式和所述目标故障类型,配置所述挡板程序并运行所述挡板程序,以模拟第三方系统出现故障的异常场景。
可以根据用户选择的目标故障触发方式和采用该种用户选择的目标故障触发方式来触发故障的目标故障类型,配置并运行挡板程序,从而在跨系统的测试项目中,使得挡板程序可以模拟第三方系统出现故障的异常场景。
在本发明实施例中,根据目标故障触发方式和目标故障类型,配置挡板程序并运行挡板程序,可以使得挡板程序可以模拟第三方系统出现故障的各种复杂多样的异常场景,从而使得测试人员获取待测系统在各种复杂多样的异常场景下的运行状态,提前预警待测系统在多样故障发生的情况下能否具有应对故障的能力,便于提前做好防范措施,进而有利于保障待测系统稳定运行。
步骤105,当接收到所述待测系统发送的测试请求时,将所述目标故障类型返回至所述待测系统,以使测试人员获取在所述异常场景下所述待测系统的运行状态。
在跨系统的测试开始后,待测系统可以发送测试请求,服务器可以接收待测系统发送的测试请求,并将目标故障类型返回至待测系统,从而使得测试人员可以获取待测系统在第三方系统出现故障异常场景下的运行状态,从而检测待测系统对异常情况能否正常进行处理,便于测试人员提前做好防范措施。
在本发明实施例中,在获取第三方系统故障的故障类型后,可以响应于针对故障触发方式的选择指令,确定目标故障触发方式,接着从故障类型中确定采用目标故障触发方式的目标故障类型,并根据目标故障触发方式和目标故障类型,配置挡板程序并运行挡板程序,使得挡板程序可以模拟第三方系统出现故障的各种复杂多样的异常场景,从而在接收到待测系统发送的测试请求后,将目标故障类型返回待测系统,使得测试人员获取在异常场景下待测系统的运行状态,提前预警待测系统在多样故障发生的情况下能否具有应对故障的能力,便于提前做好防范措施,有利于保障待测系统稳定运行,避免其他系统出现故障时待测系统无法兼容这种故障,导致待测系统同步崩溃或者造成数据丢失的问题。
参照图2,示出了本发明实施例提供的另一种针对待测系统的异常场景测试方法的步骤流程图,应用于服务器,所述待测系统与所述服务器连接,所述服务器上运行有挡板程序,所述挡板程序用于模拟第三方系统的功能,所述方法具体可以包括如下步骤:
步骤201,获取第三方系统故障的故障类型。
在一种可选的实施例中,所述第三方系统故障的故障类型从预设数据库中获取,所述故障类型包括线上故障类型,在所述获取第三方系统故障的故障类型之前,还包括:获取线上环境的第三方系统发生故障时的故障日志;对所述故障日志进行故障分析,得到线上故障类型,并将所述线上故障类型写入预设数据库中。
预设数据库可以用于存储第三方系统故障的故障类型,在测试开始时,可以从预设数据库中获取第三方系统故障的故障类型。
线上故障类型可以是指线上环境的第三方系统发生故障的故障类型。示例性地,线上故障类型可以有连接池的连接数耗尽、进程hang住、磁盘空间不足、网络超时等。在测试开始之前,服务器可以获取线上环境的第三方系统发生故障时的故障日志,通过机器学习的方式对故障日志进行故障分析,得到线上故障类型并写入预设数据库中。
在一种可选的实施例中,所述故障类型还包括非线上故障类型,在所述获取第三方系统故障的故障类型之前,还包括:获取测试人员输入的非线上故障类型;将所述非线上故障类型写入所述预设数据库中。
非线上故障类型可以是指非线上环境的第三方系统发生故障的故障类型。示例性地,非线上故障类型可以有信息拦截后篡改、注入特殊字符以及不安全的代码等。在测试开始之前,测试人员可以搜集并输入非线上故障类型,服务器可以获取测试人员输入的非线上故障类型并写入预设数据库中。
在一种示例中,在测试开始时,服务器可以从预设数据库存储的多种第三方系统故障的线上故障类型和非线上故障类型中,获取任意数量的故障类型作为第三方系统故障的故障类型;在另一种示例中,在测试开始时,测试人员可以从预设数据库中选择任意数量的故障类型,并将任意数量的故障类型作为第三方系统故障的故障类型编译进挡板程序,服务器可以获取到测试人员选择的任意数量的故障类型作为第三方系统故障的故障类型。
其中,获取的第三方系统故障的故障类型可以包括线上故障类型和非线上故障类型,可以仅包括线上故障类型,也可以仅包括非线上故障类型。
本领域技术人员应该可以理解,上述线上故障类型和非线上故障类型的具体故障类型仅仅是本发明的示例,在实际应用中,可以获取到其他具体故障类型作为第三方系统故障的故障类型,本发明在此不作限制。
步骤202,获取用于指示是否触发故障的控制指令。
在本发明实施例中,测试人员可以自行选择是否触发故障,服务器可以获取测试人员发出的用于指示是否触发故障的控制指令。
步骤203,若所述控制指令指示不触发故障,则向所述待测系统返回正常参数。
在本发明实施例中,若测试人员选择不触发故障,服务器获取到的控制指令指示不触发故障,则挡板程序不模拟第三方系统故障的异常场景,可以向待测系统返回正常测试参数。
步骤204,若所述控制指令指示触发故障,则执行所述响应于针对故障触发方式的选择指令,确定目标故障触发方式的步骤。
在本发明实施例中,若测试人员选择触发故障,服务器获取到的控制指令指示不触发故障,则需要进行针对待测系统的异常场景测试,挡板程序需要模拟第三方系统故障的异常场景。
步骤205,响应于针对故障触发方式的选择指令,确定目标故障触发方式。
在本发明实施例中,用户可以选择一种故障触发方式,服务器可以响应于用户针对故障触发方式的选择指令,从而获取并确定用户选择的目标故障触发方式。
步骤206,从所述故障类型中,确定采用所述目标故障触发方式的目标故障类型。
在一种可选的实施例中,所述步骤206可以包括以下子步骤S11-S12:
子步骤S11,若所述目标故障触发方式为单个触发方式,则从所述故障类型中,随机选择采用所述单个触发方式的一种故障类型。
当用户选择故障类型单个触发时,服务器可以从故障类型中,随机选择采用单个触发方式的一种故障类型。示例性地,第三方故障的故障类型可以为类型A、类型B、类型C、类型D,服务器可以随机选择到类型B用于进行故障单个触发,也可以随机选择到类型D用于进行故障单个触发。
子步骤S12,若所述目标故障触发方式为组合触发方式,则从所述故障类型中,随机选择采用所述组合触发方式的至少两种故障类型。
当用户选择故障类型组合触发时,服务器可以从故障类型中,随机选择采用组合触发方式的至少两种故障类型。示例性地,第三方系统故障的故障类型可以为类型A、类型B、类型C、类型D,服务器可以随机选择到类型A和类型B用于进行故障组合触发,可以随机选择到类型B和类型D用于进行故障组合触发,可以随机选择到类型A、类型B和类型D用于进行故障组合触发,可以随机选择到类型A、类型B、类型C和类型D用于进行故障组合触发。
在一种可选的实施例中,所述步骤206可以包括以下子步骤S21-S22:
子步骤S21,若所述目标故障触发方式为单个触发方式,则响应于针对所述故障类型的选择指令,确定采用所述单个触发方式的一种故障类型。
当用户选择故障类型单个触发时,用户还可以从多种第三方系统故障的故障类型中,选择一种故障类型用于进行单个触发,服务器可以响应于用户针对该故障类型的选择指令,确定采用单个触发方式的一种故障类型。示例性地,第三方系统故障的故障类型可以为类型A、类型B、类型C、类型D,用户可以选择类型B,服务器可以确定类型B用于进行故障单个触发;用户也可以选择类型D,服务器可以确定类型D用于进行故障单个触发。
子步骤S22,若所述目标故障触发方式为组合触发方式,则响应于针对所述故障类型的选择指令,确定采用所述组合触发方式的至少两种故障类型。
当用户选择故障类型组合触发时,用户还可以从多种第三方系统故障的故障类型中,选择至少两种故障类型用于进行组合触发,服务器可以响应于用户针对该至少两种故障类型的选择指令,确定采用组合触发方式的至少两种故障类型。示例性地,第三方系统故障的故障类型可以为类型A、类型B、类型C、类型D,用户可以选择类型A和类型B,服务器可以确定类型A和类型B用于进行故障组合触发;用户可以选择类型A、类型B和类型D,服务器可以确定类型A、类型B和类型D用于进行故障组合触发;用户可以选择类型A、类型B、类型C和类型D,服务器可以确定类型A、类型B、类型C和类型D用于进行故障组合触发。
步骤207,根据所述目标故障触发方式和所述目标故障类型,配置所述挡板程序并运行所述挡板程序,以模拟第三方系统出现故障的异常场景。
在一种可选的实施例中,若所述目标故障触发方式为组合触发方式,所述根据所述目标故障触发方式和所述目标故障类型,配置所述挡板程序并运行所述挡板程序,以模拟第三方系统出现故障的异常场景,可以包括:根据所述组合触发方式和所述至少两种故障类型,配置所述挡板程序;按照所述至少两种故障类型的选择顺序,依次触发所述至少两种故障类型对应的系统故障,以模拟第三方系统依次出现所述系统故障的异常场景。
示例性地,第三方系统故障的故障类型可以为类型A、类型B、类型C、类型D,若服务器在随机选择时,依次选择到类型B、类型A和类型D用于进行故障组合触发,则依次触发类型B、类型A和类型D对应的系统故障,从而模拟第三方系统依次出现类型B、类型A和类型D对应系统故障的异常场景,并依次返回类型B、类型A和类型D至待测系统。
步骤208,当接收到所述待测系统发送的测试请求时,将所述目标故障类型返回至所述待测系统,以使测试人员获取在所述异常场景下所述待测系统的运行状态。
在跨系统的测试开始后,待测系统可以发送测试请求,服务器可以接收待测系统发送的测试请求,并将目标故障类型返回至待测系统,从而使得测试人员可以获取待测系统在第三方系统出现故障异常场景下的运行状态,从而检测待测系统对异常情况能否正常进行处理,便于测试人员提前做好防范措施。
在本发明实施例中,在获取第三方系统故障的故障类型后,可以响应于针对故障触发方式的选择指令,确定目标故障触发方式,接着从故障类型中确定采用目标故障触发方式的目标故障类型,并根据目标故障触发方式和目标故障类型,配置挡板程序并运行挡板程序,使得挡板程序可以模拟第三方系统出现故障的各种复杂多样的异常场景,从而在接收到待测系统发送的测试请求后,将目标故障类型返回待测系统,使得测试人员获取在异常场景下待测系统的运行状态,提前预警待测系统在多样故障发生的情况下能否具有应对故障的能力,便于提前做好防范措施,有利于保障待测系统稳定运行,避免其他系统出现故障时待测系统无法兼容这种故障,导致待测系统同步崩溃或者造成数据丢失的问题。
为了使本领域技术人员更好地理解本发明实施例,下面通过一个示例加以说明:
参照图3,为本发明实施例提供的一种针对待测系统的异常场景测试方法的流程图。
1、获取线上故障类型和非线上故障类型,并将故障类型写入数据库中;
2、将故障类型编译进挡板程序;
3、根据目标故障触发方式和目标故障类型,配置挡板程序并运行挡板程序;
4、若不触发故障,则正常返回参数;
5、若触发故障,若故障触发方式为组合触发,则对目标故障类型进行随机故障,并依次返回故障类型;若故障触发方式为单个触发,则进行单个触发,并返回故障类型;
6、测试结束。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图4,示出了本发明实施例提供的一种针对待测系统的异常场景测试装置的结构框图,应用于服务器,所述待测系统与所述服务器连接,所述服务器上运行有挡板程序,所述挡板程序用于模拟第三方系统的功能,具体可以包括如下模块:
获取模块401,用于获取第三方系统故障的故障类型;
响应模块402,用于响应于针对故障触发方式的选择指令,确定目标故障触发方式;
确定模块403,用于从所述故障类型中,确定采用所述目标故障触发方式的目标故障类型;
配置模块404,用于根据所述目标故障触发方式和所述目标故障类型,配置所述挡板程序并运行所述挡板程序,以模拟第三方系统出现故障的异常场景;
接收模块405,用于当接收到所述待测系统发送的测试请求时,将所述目标故障类型返回至所述待测系统,以使测试人员获取在所述异常场景下所述待测系统的运行状态。
在一种可选的实施例中,所述确定模块,包括:
第一随机选择子模块,用于若所述目标故障触发方式为单个触发方式,则从所述故障类型中,随机选择采用所述单个触发方式的一种故障类型;
第二随机选择子模块,用于若所述目标故障触发方式为组合触发方式,则从所述故障类型中,随机选择采用所述组合触发方式的至少两种故障类型。
在一种可选的实施例中,所述确定模块,包括:
第一响应确定子模块,用于若所述目标故障触发方式为单个触发方式,则响应于针对所述故障类型的选择指令,确定采用所述单个触发方式的一种故障类型;
第二响应确定子模块,用于若所述目标故障触发方式为组合触发方式,则响应于针对所述故障类型的选择指令,确定采用所述组合触发方式的至少两种故障类型。
在一种可选的实施例中,若所述目标故障触发方式为组合触发方式,所述配置模块,包括:
挡板程序配置子模块,用于根据所述组合触发方式和所述至少两种故障类型,配置所述挡板程序;
依次触发子模块,用于按照所述至少两种故障类型的选择顺序,依次触发所述至少两种故障类型对应的系统故障,以模拟第三方系统依次出现所述系统故障的异常场景。
在一种可选的实施例中,在所述响应于针对故障触发方式的选择指令,确定目标故障触发方式之前,还包括:
控制指令获取模块,用于获取用于指示是否触发故障的控制指令;
参数返回模块,用于若所述控制指令指示不触发故障,则向所述待测系统返回正常参数;
继续执行模块,用于若所述控制指令指示触发故障,则执行所述响应于针对故障触发方式的选择指令,确定目标故障触发方式的步骤。
在一种可选的实施例中,所述第三方系统故障的故障类型从预设数据库中获取,所述故障类型包括线上故障类型,在所述获取第三方系统故障的故障类型之前,还包括:
故障日志获取模块,用于获取线上环境的第三方系统发生故障时的故障日志;
线上故障类型写入模块,用于对所述故障日志进行故障分析,得到线上故障类型,并将所述线上故障类型写入预设数据库中。
在一种可选的实施例中,所述故障类型还包括非线上故障类型,在所述获取第三方系统故障的故障类型之前,还包括:
非线上故障类型获取模块,用于获取测试人员输入的非线上故障类型;
非线上故障类型写入模块,用于将所述非线上故障类型写入所述预设数据库中。
在本发明实施例中,在获取第三方系统故障的故障类型后,可以响应于针对故障触发方式的选择指令,确定目标故障触发方式,接着从故障类型中确定采用目标故障触发方式的目标故障类型,并根据目标故障触发方式和目标故障类型,配置挡板程序并运行挡板程序,使得挡板程序可以模拟第三方系统出现故障的各种复杂多样的异常场景,从而在接收到待测系统发送的测试请求后,将目标故障类型返回待测系统,使得测试人员获取在异常场景下待测系统的运行状态,提前预警待测系统在多样故障发生的情况下能否具有应对故障的能力,便于提前做好防范措施,有利于保障待测系统稳定运行,避免其他系统出现故障时待测系统无法兼容这种故障,导致待测系统同步崩溃或者造成数据丢失的问题。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本发明实施例还提供了一种电子设备,包括:
包括处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,该计算机程序被处理器执行时实现上述针对待测系统的异常场景测试方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储计算机程序,计算机程序被处理器执行时实现上述针对待测系统的异常场景测试方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、装置、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明实施例范围的所有变更和修改。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
以上对本发明所提供的一种针对待测系统的异常场景测试方法和装置,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种针对待测系统的异常场景测试方法,其特征在于,应用于服务器,所述待测系统与所述服务器连接,所述服务器上运行有挡板程序,所述挡板程序用于模拟第三方系统的功能,所述方法包括:
获取第三方系统故障的故障类型;
响应于针对故障触发方式的选择指令,确定目标故障触发方式;
从所述故障类型中,确定采用所述目标故障触发方式的目标故障类型;
根据所述目标故障触发方式和所述目标故障类型,配置所述挡板程序并运行所述挡板程序,以模拟第三方系统出现故障的异常场景;
当接收到所述待测系统发送的测试请求时,将所述目标故障类型返回至所述待测系统,以使测试人员获取在所述异常场景下所述待测系统的运行状态。
2.根据权利要求1所述的方法,其特征在于,所述从所述故障类型中,确定采用所述目标故障触发方式的目标故障类型,包括:
若所述目标故障触发方式为单个触发方式,则从所述故障类型中,随机选择采用所述单个触发方式的一种故障类型;
若所述目标故障触发方式为组合触发方式,则从所述故障类型中,随机选择采用所述组合触发方式的至少两种故障类型。
3.根据权利要求1所述的方法,其特征在于,所述从所述故障类型中,确定采用所述目标故障触发方式的目标故障类型,包括:
若所述目标故障触发方式为单个触发方式,则响应于针对所述故障类型的选择指令,确定采用所述单个触发方式的一种故障类型;
若所述目标故障触发方式为组合触发方式,则响应于针对所述故障类型的选择指令,确定采用所述组合触发方式的至少两种故障类型。
4.根据权利要求2或3所述的方法,其特征在于,若所述目标故障触发方式为组合触发方式,所述根据所述目标故障触发方式和所述目标故障类型,配置所述挡板程序并运行所述挡板程序,以模拟第三方系统出现故障的异常场景,包括:
根据所述组合触发方式和所述至少两种故障类型,配置所述挡板程序;
按照所述至少两种故障类型的选择顺序,依次触发所述至少两种故障类型对应的系统故障,以模拟第三方系统依次出现所述系统故障的异常场景。
5.根据权利要求1所述的方法,其特征在于,在所述响应于针对故障触发方式的选择指令,确定目标故障触发方式之前,还包括:
获取用于指示是否触发故障的控制指令;
若所述控制指令指示不触发故障,则向所述待测系统返回正常参数;
若所述控制指令指示触发故障,则执行所述响应于针对故障触发方式的选择指令,确定目标故障触发方式的步骤。
6.根据权利要求1所述的方法,其特征在于,所述第三方系统故障的故障类型从预设数据库中获取,所述故障类型包括线上故障类型,在所述获取第三方系统故障的故障类型之前,还包括:
获取线上环境的第三方系统发生故障时的故障日志;
对所述故障日志进行故障分析,得到线上故障类型,并将所述线上故障类型写入预设数据库中。
7.根据权利要求6所述的方法,其特征在于,所述故障类型还包括非线上故障类型,在所述获取第三方系统故障的故障类型之前,还包括:
获取测试人员输入的非线上故障类型;
将所述非线上故障类型写入所述预设数据库中。
8.一种针对待测系统的异常场景测试装置,其特征在于,应用于服务器,所述待测系统与所述服务器连接,所述服务器上运行有挡板程序,所述挡板程序用于模拟第三方系统的功能,所述装置包括:
获取模块,用于获取第三方系统故障的故障类型;
响应模块,用于响应于针对故障触发方式的选择指令,确定目标故障触发方式;
确定模块,用于从所述故障类型中,确定采用所述目标故障触发方式的目标故障类型;
配置模块,用于根据所述目标故障触发方式和所述目标故障类型,配置所述挡板程序并运行所述挡板程序,以模拟第三方系统出现故障的异常场景;
接收模块,用于当接收到所述待测系统发送的测试请求时,将所述目标故障类型返回至所述待测系统,以使测试人员获取在所述异常场景下所述待测系统的运行状态。
9.一种电子设备,其特征在于,包括:处理器、存储器及存储在所述存储器上并能够在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1-7中任一项所述的针对待测系统的异常场景测试方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述的针对待测系统的异常场景测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211392206.4A CN115733741B (zh) | 2022-11-08 | 2022-11-08 | 一种针对待测系统的异常场景测试方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211392206.4A CN115733741B (zh) | 2022-11-08 | 2022-11-08 | 一种针对待测系统的异常场景测试方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115733741A CN115733741A (zh) | 2023-03-03 |
CN115733741B true CN115733741B (zh) | 2024-05-14 |
Family
ID=85294878
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211392206.4A Active CN115733741B (zh) | 2022-11-08 | 2022-11-08 | 一种针对待测系统的异常场景测试方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115733741B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116915583B (zh) * | 2023-09-12 | 2024-01-26 | 苏州浪潮智能科技有限公司 | 通信异常的诊断方法、其装置及电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109144856A (zh) * | 2018-07-27 | 2019-01-04 | 北京皮尔布莱尼软件有限公司 | 一种ui自动化测试方法、计算设备及存储介质 |
CN113487186A (zh) * | 2021-07-07 | 2021-10-08 | 中国工商银行股份有限公司 | 客户端故障演练方法、装置、计算机系统、可读存储介质 |
CN114168371A (zh) * | 2021-10-14 | 2022-03-11 | 广州易起行信息技术有限公司 | 一种故障智能自动报警系统 |
CN114205248A (zh) * | 2021-12-15 | 2022-03-18 | 建信金融科技有限责任公司 | 模拟超时响应方法、装置、设备、存储介质及程序产品 |
CN114924990A (zh) * | 2022-06-21 | 2022-08-19 | 中国农业银行股份有限公司 | 一种异常场景测试方法及电子设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10742483B2 (en) * | 2018-05-16 | 2020-08-11 | At&T Intellectual Property I, L.P. | Network fault originator identification for virtual network infrastructure |
-
2022
- 2022-11-08 CN CN202211392206.4A patent/CN115733741B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109144856A (zh) * | 2018-07-27 | 2019-01-04 | 北京皮尔布莱尼软件有限公司 | 一种ui自动化测试方法、计算设备及存储介质 |
CN113487186A (zh) * | 2021-07-07 | 2021-10-08 | 中国工商银行股份有限公司 | 客户端故障演练方法、装置、计算机系统、可读存储介质 |
CN114168371A (zh) * | 2021-10-14 | 2022-03-11 | 广州易起行信息技术有限公司 | 一种故障智能自动报警系统 |
CN114205248A (zh) * | 2021-12-15 | 2022-03-18 | 建信金融科技有限责任公司 | 模拟超时响应方法、装置、设备、存储介质及程序产品 |
CN114924990A (zh) * | 2022-06-21 | 2022-08-19 | 中国农业银行股份有限公司 | 一种异常场景测试方法及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN115733741A (zh) | 2023-03-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12086051B2 (en) | Automated application testing system | |
CN109698771B (zh) | 游戏服务器压力测试方法及装置 | |
CN112631846B (zh) | 一种故障演练方法、装置、计算机设备及存储介质 | |
CN109522181B (zh) | 一种分布式存储系统的性能测试方法、装置和设备 | |
CN115733741B (zh) | 一种针对待测系统的异常场景测试方法和装置 | |
CN115470141A (zh) | 一种故障模拟方法、装置及相关设备 | |
CN110990289B (zh) | 一种自动提交bug的方法、装置、电子设备及存储介质 | |
CN114609995B (zh) | 故障控制方法、装置、系统、设备、介质及产品 | |
CN108572892B (zh) | 一种基于PowerPC多核处理器的离线测试方法和装置 | |
CN115269384A (zh) | 集成测试方法、系统、电子设备及存储介质 | |
CN111159023A (zh) | 测试方法、装置、电子设备及计算机可读存储介质 | |
CN116909800B (zh) | 崩溃信息的定位方法、崩溃信息的定位装置及存储介质 | |
CN109460366A (zh) | 一种软件稳定性测试方法、装置、设备及介质 | |
CN115617668A (zh) | 一种兼容性测试方法、装置及设备 | |
CN115759518A (zh) | 基于混沌工程的可用性治理系统 | |
CN115061450A (zh) | 一种车载控制器的刷写测试方法、装置、设备及存储介质 | |
CN112905445B (zh) | 一种基于日志的测试方法、装置及计算机系统 | |
CN108965053A (zh) | 上位机软件压力测试方法、装置及系统 | |
CN110978051B (zh) | 机器人模拟装置、系统、方法、可读介质及电子设备 | |
CN106446400B (zh) | 一种机电系统性能的测试方法及装置 | |
CN111782499A (zh) | 测试用例生成方法及系统 | |
CN116610557B (zh) | 动作绑定信息排错方法、装置、存储介质及电子设备 | |
CN115883431B (zh) | 一种终端通讯协议性能测试系统、方法、车辆及存储介质 | |
CN111031089A (zh) | 一种用于web会议控制客户端的测试方法及计算机设备 | |
CN116893976A (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 |