CN108763009A - 服务器压力测试方法、系统、设备及计算机可读存储介质 - Google Patents
服务器压力测试方法、系统、设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN108763009A CN108763009A CN201810575797.6A CN201810575797A CN108763009A CN 108763009 A CN108763009 A CN 108763009A CN 201810575797 A CN201810575797 A CN 201810575797A CN 108763009 A CN108763009 A CN 108763009A
- Authority
- CN
- China
- Prior art keywords
- vehicle
- intelligent driving
- server
- vehicle terminal
- driving vehicle
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
Abstract
本公开实施例涉及一种服务器压力测试方法、系统、设备及计算机可读存储介质。该方法包括:在测试服务器上模拟智能驾驶车辆;模拟所述智能驾驶车辆与约车终端进行交互;模拟所述约车终端利用多个线程向被测服务器发送约车请求;收集所述被测试服务器的日志信息。
Description
技术领域
本公开的实施例涉及智能驾驶领域,尤其涉及一种服务器压力测试方法、系统、设备及计算机可读存储介质。
背景技术
智能驾驶车辆运营过程中,会有大量用户使用约车终端向智能驾驶车辆的调度服务器发送约车请求,调度服务器可能由于负载压力过大而导致响应缓慢,延迟较高,处理异常,甚至宕机。因此,有必要对调度服务器进行压力测试。
相关技术中,采用压力器对调度服务器施加压力。具体地,通过多线程的方式,每个线程按照极限压力向调度服务器发送约车请求,通过响应参数(例如:相应延迟、超时等),确定调度服务器能够承受的极限压力。然而,这种方法的缺陷包括:压力来源相对单一。仅单一地模拟了大量约车请求对调度服务器产生的压力,并没有模拟大量智能驾驶车辆对调度服务器产生的压力。难以获得线上运营的智能驾驶车辆的运营状态,无法根据实际需求和智能驾驶车辆的实时运营状态来决定测试步骤,进而无法实现闭环测试。没有灵活地模拟多人多车混合场景以及不同运营场景下的压力测试。没有提供更加定制化的输出,不能满足智能驾驶车辆调度算法和性能的定制化结果分析。
发明内容
本公开一个实施例的一个目的在于解决上述提到技术问题中的至少一个。
第一方面,本公开实施例提供了一种服务器压力测试方法,包括:
在测试服务器上模拟智能驾驶车辆;
模拟所述智能驾驶车辆与约车终端进行交互;
模拟所述约车终端利用多个线程向被测服务器发送约车请求;
收集所述被测试服务器的日志信息。
在一些实施方式中,所述方法还包括:
模拟所述智能驾驶车辆与所述被测服务器的交互;
收集所述智能驾驶车辆的日志信息。
在一些实施方式中,模拟所述智能驾驶车辆与所述约车终端进行交互,包括:
获取所述智能驾驶车辆的运营状态,将所述运营状态作为有限状态机的状态;
获取所述约车终端的用户能够进行的有限的动作,将所述动作作为有限状态机的响应;
在有限状态机中,定义所述智能驾驶车辆不同的运营状态下所述约车终端的用户所进行的操作,以模拟所述智能驾驶车辆接单及人机交互行为;
实时读取所述智能驾驶车辆的运营状态,根据有限状态机中运营状态与响应的定义,模拟所述智能驾驶车辆与所述约车终端进行交互的过程。
在一些实施方式中,在所述智能驾驶车辆为被预约状态时,模拟的交互行为包括:出发;在所述智能驾驶车辆为待客中时,模拟的交互行为包括:验票。
在一些实施方式中,所述方法还包括:设置需要模拟的智能驾驶车辆的数量以及约车终端的数量。
在一些实施方式中,模拟所述约车终端利用多个线程向被测服务器发送约车请求,包括:
模拟所述约车终端利用多个线程递增式向所述被测服务器发送约车请求。
在一些实施方式中,模拟所述约车终端利用多个线程向被测服务器发送约车请求,包括:
模拟所述约车终端随机生成用户约车信息,并将所述用户约车信息填充到JSON格式的数据中;
模拟所述约车终端利用多个线程向所述被测服务器发送Restful API请求,所述Restful API请求中携带有所述JSON格式的数据。
在一些实施方式中,所述测试服务器为多台。
第二方面,本公开实施例又提供一种服务器压力测试系统,所述系统包括多个设置在测试服务器中的虚拟机、人机交互单元、约车终端交互单元以及信息采集单元;
其中,每个虚拟机用于模拟一辆智能驾驶车辆;
所述人机交互单元,用于建立约车终端与每个虚拟机之间的连接,模拟所述智能驾驶车辆与所述约车终端进行交互;
所述约车终端交互单元,用于建立被测服务器与约车终端之间的连接,模拟所述约车终端利用多个线程向被测服务器发送约车请求;
所述信息采集单元,用于收集所述被测服务器的日志信息。
在一些实施方式中,所述系统还包括:智能车辆交互单元,用于:
建立所述被测服务器与每个虚拟机之间的链接,模拟所述智能驾驶车辆与所述被测服务器的交互;
所述信息采集单元还用于:收集所述智能驾驶车辆的日志信息。
在一些实施方式中,模拟所述智能驾驶车辆与所述约车终端进行交互,包括:
获取所述智能驾驶车辆的运营状态,将所述运营状态作为有限状态机的状态;
获取所述约车终端的用户能够进行的有限的动作,将所述动作作为有限状态机的响应;
在有限状态机中,定义所述智能驾驶车辆不同的运营状态下所述约车终端的用户所进行的操作,以模拟所述智能驾驶车辆接单及人机交互行为;
实时读取所述智能驾驶车辆的运营状态,根据有限状态机中运营状态与响应的定义,模拟所述智能驾驶车辆与所述约车终端进行交互的过程。
在一些实施方式中,在所述智能驾驶车辆为被预约状态时,模拟的交互行为包括:出发;在所述智能驾驶车辆为待客中时,模拟的交互行为包括:验票。
在一些实施方式中,所述系统还包括:参数设置单元,用于设置需要模拟的智能驾驶车辆的数量以及约车终端的数量。
在一些实施方式中,所述约车终端交互单元模拟所述约车终端利用多个线程向被测服务器发送约车请求,包括:
模拟所述约车终端利用多个线程递增式向所述被测服务器发送约车请求。
在一些实施方式中,所述约车终端交互单元模拟所述约车终端利用多个线程向被测服务器发送约车请求,包括:
模拟所述约车终端随机生成用户约车信息,并将所述用户约车信息填充到JSON格式的数据中;
模拟所述约车终端利用多个线程向所述被测服务器发送Restful API请求,所述Restful API请求中携带有所述JSON格式的数据。
在一些实施方式中,所述测试服务器为多台。
第三方面,本公开实施例提供又提供了一种服务器器压力测试设备,包括:至少一个存储器、至少一个处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现第一方面所述方法的步骤。
第四方面,本公开实施例提供又提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被至少一个处理器执行时实现本公开实施例提供的服务器压力测试方法的步骤。
本公开至少一个实施例,模拟用户使用的约车终端与被测服务器之间的约车行为,并模拟用户使用的约车终端与智能驾驶车辆之间的交互行为,进而模拟了完整的工作流程,实现了闭环测试,解决了传统压力测试无法实现闭环测试的缺陷。此外,多线程步进式模拟大量约车终端发出的约车请求,给被测服务器逐步施加压力,模拟方式更符合现实使用场景,同时对多样化运营场景随机分配约车请求,能覆盖不同场景下的需求。并且,提供一种智能驾驶车辆自动部署方案,在虚拟环境下模拟大量智能驾驶车辆在线及接单行为,能灵活地针对多样化运营场景随机分配智能驾驶车辆。并且,提供定制化的输出,便于后续对调度算法和性能做进一步分析。
附图说明
图1示出了本公开一实施例提供的服务器压力测试方法的流程图;
图2是本公开实施例中模拟所述智能驾驶车辆与约车终端进行交互的示意图;
图3是本公开实施例中模拟约车终端利用多个线程向被测服务器发送约车请求的示意图;
图4示出了本公开一实施例提供的服务器压力测试系统的示意图;
图5示出了本公开一实施例提供的服务器压力测试系统与被测服务器构成的测试环境的示意图;
图6示出了本公开一实施例提供的服务器压力测试设备的结构框图。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本公开,并不用于限定本公开。
参见图1,图1为本公开一实施例提供的服务器压力测试方法的流程图。如图1所示,本公开实施例提供的服务器压力测试方法包括以下步骤:
步骤S11:在测试服务器上模拟智能驾驶车辆;
步骤S12:模拟所述智能驾驶车辆与约车终端进行交互;
步骤S13:模拟所述约车终端利用多个线程向被测服务器发送约车请求;
步骤S14:收集所述被测试服务器的日志信息。
本公开实施例中,被测服务器即为智能驾驶车辆的调度服务器。测试服务器为用于对被测服务器进行压力测试的服务器。测试服务器的数量可以是一台或多台。为确保压力测试的效果,测试服务器可以为多台。
本公开实施例提供的服务器压力测试方法不考虑网络因素的影响,因此,为降低网络因素对压力测试结果的影响,测试服务器和被测试服务器在局域网同一网段内。
在开始对被测服务器进行压力测试之前,还可以设置需要模拟的智能驾驶车辆的数量以及约车终端的数量。具体地,通过配置文件的方式灵活配置供需:智能驾驶车辆的数量和约车终端的数量,在每种供需场景下,重复执行步骤S12至步骤S14。针对传统压力测试在模拟多人多车及多场景的灵活性和扩展性上存在的缺陷,本公开实施例通过配置文件的形式,能够解决不同混合场景测试需求,如,供需不同,运营场景不同下的压力测试。
此外,为了提高压力测试的灵活性,可以根据测试需求传递相应参数,例如:将运营地图、线路、智能驾驶车辆的数量、约车终端的数量等信息以入参的方式传递。根据测试需求及运营场景,定义运营地图,路线等信息,以配置文件的形式存储。
本公开实施例中,通过配置文件的形式,能够解决不同混合场景测试需求,如,供需不同、运营场景不同下的压力测试,解决了传统压力测试无法灵活模拟多人多车及多场景的缺陷。
在完成上述测试准备工作之后,在测试服务器上模拟智能驾驶车辆。一种可能的实施方式是:以脚本的方式,在测试服务器上部署大量虚拟机,每辆智能驾驶车辆运行在一台虚拟机中。
然后,模拟智能驾驶车辆与约车终端进行交互,并模拟约车终端利用多个线程向被测服务器发送约车请求。本发明一方面既能够模拟线上约车终端发出的约车请求,另一方面又能模拟大量无人驾驶车辆,解决了传统压力测试压力来源单一的问题。
最后,收集被测试服务器的日志信息,分析订单调度时间等数据。本公开实施例中,根据测试需求收集被测服务器的测试数据,以便定制化分析。解决了传统压力测试结果没法满足智能驾驶车辆调度算法和性能的定制化结果分析的问题。
采用上述技术方案,模拟用户使用的约车终端与被测服务器之间的约车行为,并模拟用户使用的约车终端与智能驾驶车辆之间的交互行为,进而模拟了完整的工作流程,实现了闭环测试。解决了传统压力测试无法实现闭环测试的缺陷。
在一种实施方式中,本发明实施例提供的服务器压力测试方法还包括以下步骤:
模拟所述智能驾驶车辆与所述被测服务器的交互;
收集所述智能驾驶车辆的日志信息。
本公开实施例提出,还可以模拟智能驾驶车辆与被测服务器之间的交互,将智能驾驶车辆对被测服务器的压力也加入到对被测服务器的压力测试中,更加全面、准确地对被测服务器进行压力测试。此外,还可以收集智能驾驶车辆的日志信息,分析智能驾驶车辆的接单率。根据测试需求收集智能驾驶车辆的测试数据,以便定制化分析。在一种实施方式中,还可以收集被测服务器的日志信息,分析订单调度时间等数据,同理,以便定制化分析。
参考图2,图2是本公开实施例中模拟所述智能驾驶车辆与约车终端进行交互的示意图。如图2所示,步骤S12的一种可能的实施方式包括以下步骤:
获取所述智能驾驶车辆的运营状态,将所述运营状态作为有限状态机的状态;
获取所述约车终端的用户能够进行的有限的动作,将所述动作作为有限状态机的响应;
在有限状态机中,定义所述智能驾驶车辆不同的运营状态下所述约车终端的用户所进行的操作,以模拟所述智能驾驶车辆接单及人机交互行为;
实时读取所述智能驾驶车辆的运营状态,根据有限状态机中运营状态与响应的定义,模拟所述智能驾驶车辆与所述约车终端进行交互的过程。
本公开实施例提出,通过有限状态机将智能驾驶车辆的运营状态与约车终端的用户所进行的操作相关联。通过建立有限的状态机,模拟用户约车后及无人车辆接单后,用户与无人驾驶车辆交互的行为,如验票上车、确认出发、确认到达等,进而实现闭环测试。解决了传统压力测试无法实现闭环测试的问题。
一方面,获取智能驾驶车辆的运营状态,然后将智能驾驶车辆的运营状态作为有限状态机的状态,其中,智能驾驶车辆的运营状态是智能驾驶车辆的运营商预先设定的有限数量个运营状态。另一方面,获取约车终端的用户能够进行的有限的动作,将这些动作作为有限状态机的响应,其中,约车终端的用户能够进行的每个动作,与智能驾驶车辆的一个运营状态相对应。
然后,定义智能驾驶车辆不同的运营状态下,约车终端的用户所进行的操作,以模拟智能驾驶车辆接单及人机交互行为。具体地,根据智能驾驶车辆的运营状态,推断下一时刻允许约车终端的用户所进行的操作,该操作可能只有一个或可能有多个。示例地,定义智能驾驶车辆的运营状态为被预约状态时,约车终端的用户所进行的操作是打开车门,进而模拟出发的交互行为。又例如,定义智能驾驶车辆的运营状态为待客中时,约车终端的用户所进行的操作是出示车票信息,进而模拟验票的交互行为。
最后,实时读取智能驾驶车辆的运营状态,根据有限状态机中运营状态与响应的定义,模拟智能驾驶车辆与约车终端进行交互的过程。
智能驾驶车辆的实时运营状态限定了约车终端的用户可以进行的操作,随着智能驾驶车辆的运营状态的改变,约车终端的用户可以进行的操作也发送改变。根据智能驾驶车辆的实时运营状态,约车终端进行相应的操作,以此实现模拟智能驾驶车辆与约车终端进行交互的过程。
在模拟智能驾驶车辆与约车终端交互的过程中,随着智能驾驶车辆的当前运营状态的改变,当智能驾驶车辆的当前运营状态为可被调度的状态时,约车终端的用户可以向被测服务器发送约车请求,进而被测服务器对当前可被调度的智能驾驶车辆进行调度。
在一种可能的实施方式中,模拟所述约车终端利用多个线程向被测服务器发送约车请求,包括:
模拟所述约车终端利用多个线程递增式向所述被测服务器发送约车请求。
本公开实施例中,模拟约车终端利用多个线程递增式向被测服务器发送约车请求,其中,多个线程递增式模拟大量用户的约车请求,给调度服务器逐步施加压力,模拟方式更符合实际使用场景。同时,对多样化运营场景随机分配约车请求,能覆盖不同场景下的需求。
在另一种可能的实施方式中,模拟所述约车终端利用多个线程向被测服务器发送约车请求,包括:
模拟所述约车终端随机生成用户约车信息,并将所述用户约车信息填充到JSON格式的数据中;
模拟所述约车终端利用多个线程向所述被测服务器发送Restful API请求,所述Restful API请求中携带有所述JSON格式的数据。
图3是本公开实施例中模拟约车终端利用多个线程向被测服务器发送约车请求的示意图。如图3所示,模拟约车终端发起多线程,递增式向被测服务器发送约车请求。该请求采用随机生成手机号、运营地图、线路、预约人数、预约时间等信息的方式,填充JSON格式的数据,向服务器发送Restful API请求,Restful API请求中携带有JSON格式的数据。
本公开实施例提供的服务器压力测试方法,可通过任意编程语言实现,包括但不局限于:python,JAVA,C++等。其中,用于模拟智能驾驶车辆的虚拟机可以运行在docker环境下,相应地,在对被测服务器进行压力测试之前,还需准备docker环境所需的Dockerfile,该文件定义所用的测试系统及版本,预装的系统软件,以及预装的无人车控制软件等信息。
基于同一发明构思,本公开实施例还提供的服务器压力测试系统。如图4所示,本公开实施例提供的服务器压力测试系统100包括:多个设置在测试服务器中的虚拟机101、人机交互单元102、约车终端交互单元103以及信息采集单元104。
其中,每个虚拟机101用于模拟一辆智能驾驶车辆。示例地,以脚本的方式,在测试服务器上一键部署大量智能驾驶车辆,每辆智能驾驶车辆运行在一台虚拟机中(例如:运行在docker环境下)。
人机交互单元102用于建立约车终端与每个虚拟机之间的连接,模拟智能驾驶车辆与约车终端进行交互。
约车终端交互单元103用于建立被测服务器与约车终端之间的连接,模拟所述约车终端利用多个线程向被测服务器发送约车请求。
信息采集单元104用于收集所述被测服务器的日志信息。
在一些实施方式中,所述系统还包括:智能车辆交互单元,用于:
建立所述被测服务器与每个虚拟机之间的链接,模拟所述智能驾驶车辆与所述被测服务器的交互;
所述信息采集单元还用于:收集所述智能驾驶车辆的日志信息。
在一些实施方式中,模拟所述智能驾驶车辆与所述约车终端进行交互,包括:
获取所述智能驾驶车辆的运营状态,将所述运营状态作为有限状态机的状态;
获取所述约车终端的用户能够进行的有限的动作,将所述动作作为有限状态机的响应;
在有限状态机中,定义所述智能驾驶车辆不同的运营状态下所述约车终端的用户所进行的操作,以模拟所述智能驾驶车辆接单及人机交互行为;
实时读取所述智能驾驶车辆的运营状态,根据有限状态机中运营状态与响应的定义,模拟所述智能驾驶车辆与所述约车终端进行交互的过程。
在一些实施方式中,在所述智能驾驶车辆为被预约状态时,模拟的交互行为包括:出发;在所述智能驾驶车辆为待客中时,模拟的交互行为包括:验票。
在一些实施方式中,所述系统还包括:参数设置单元,用于设置需要模拟的智能驾驶车辆的数量以及约车终端的数量。
在一些实施方式中,所述约车终端交互单元模拟所述约车终端利用多个线程向被测服务器发送约车请求,包括:
模拟所述约车终端利用多个线程递增式向所述被测服务器发送约车请求。
在一些实施方式中,所述约车终端交互单元模拟所述约车终端利用多个线程向被测服务器发送约车请求,包括:
模拟所述约车终端随机生成用户约车信息,并将所述用户约车信息填充到JSON格式的数据中;
模拟所述约车终端利用多个线程向所述被测服务器发送Restful API请求,所述Restful API请求中携带有所述JSON格式的数据。
在一些实施方式中,所述测试服务器为多台。
需要说明的是,由于上述所介绍的服务器压力测试系统为可以执行本发明实施例中的服务器压力测试方法的系统,故而基于本发明实施例中所介绍的服务器压力测试的方法,本领域所属技术人员能够了解本实施例的服务器压力测试系统的具体实施方式以及其各种变化形式,所以在此对于该服务器压力测试系统如何实现本发明实施例中的服务器压力测试方法不再详细介绍。只要本领域所属技术人员实施本发明实施例中服务器压力测试方法所采用的系统,都属于本申请所欲保护的范围。
参考图5,图5示出了本公开一实施例提供的服务器压力测试系统与被测服务器构成的测试环境的示意图。如图5所示,测试环境包括:被测服务器和压力测试系统,被测服务器与压力测试系统相连。被测服务器包括:智能驾驶车辆模拟器、人机交互模拟器以及约车终端模拟器。智能驾驶模拟器包括多个docker容器,每个docker容器用于模拟一辆智能驾驶车辆。人机交互模拟器模拟智能驾驶车辆与约车终端之间的交互。约车终端模拟器模拟多个约车终端,根据与智能驾驶车辆之间的交互信息,生成约车请求,并向被测服务器发送约车请求,以完成对被测服务器的压力测试。
采用上述技术方案,模拟用户使用的约车终端与被测服务器之间的约车行为,并模拟用户使用的约车终端与智能驾驶车辆之间的交互行为,进而模拟了完整的工作流程,实现了闭环测试。解决了传统压力测试无法实现闭环测试的缺陷。
基于同一发明构思,本公开的实施例提供了一种服务器压力测试设备,参见图6,该服务器压力测试设备,包括:至少一个处理器(processor)、至少一个存储器(memory)、总线以及至少一个总线接口;
其中,所述处理器以及存储器通过所述总线完成相互间的通信,所述处理器用于调用所述存储器中的程序指令,以执行本公开实施例所提供的服务器压力测试方法。所述总线接口用于与外部设备进行数据交互。
基于同一发明构思,本公开的实施例提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被至少一个处理器执行时实现本公开实施例提供的服务器压力测试方法的步骤。由于在前文中已经对于服务器压力测试方法进行了详细描述,在此不再赘述。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本申请的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个申请方面中的一个或多个,在上面对本申请的示例性实施例的描述中,本申请的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本申请要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,申请方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本申请的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本申请的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本申请的某些部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。
应该注意的是上述实施例对本申请进行说明而不是对本申请进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本申请可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二等的使用不表示任何顺序。可将这些单词解释为名称。
Claims (10)
1.一种服务器压力测试方法,其特征在于,包括:
在测试服务器上模拟智能驾驶车辆;
模拟所述智能驾驶车辆与约车终端进行交互;
模拟所述约车终端利用多个线程向被测服务器发送约车请求;
收集所述被测试服务器的日志信息。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
模拟所述智能驾驶车辆与所述被测服务器的交互;
收集所述智能驾驶车辆的日志信息。
3.根据权利要求1所述的方法,其特征在于,模拟所述智能驾驶车辆与所述约车终端进行交互,包括:
获取所述智能驾驶车辆的运营状态,将所述运营状态作为有限状态机的状态;
获取所述约车终端的用户能够进行的有限的动作,将所述动作作为有限状态机的响应;
在有限状态机中,定义所述智能驾驶车辆不同的运营状态下所述约车终端的用户所进行的操作,以模拟所述智能驾驶车辆接单及人机交互行为;
实时读取所述智能驾驶车辆的运营状态,根据有限状态机中运营状态与响应的定义,模拟所述智能驾驶车辆与所述约车终端进行交互的过程。
4.根据权利要求3所述的方法,其特征在于,在所述智能驾驶车辆为被预约状态时,模拟的交互行为包括:出发;在所述智能驾驶车辆为待客中时,模拟的交互行为包括:验票。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:设置需要模拟的智能驾驶车辆的数量以及约车终端的数量。
6.根据权利要求1所述的方法,其特征在于,模拟所述约车终端利用多个线程向被测服务器发送约车请求,包括:
模拟所述约车终端利用多个线程递增式向所述被测服务器发送约车请求。
7.根据权利要求1所述的方法,其特征在于,模拟所述约车终端利用多个线程向被测服务器发送约车请求,包括:
模拟所述约车终端随机生成用户约车信息,并将所述用户约车信息填充到JSON格式的数据中;
模拟所述约车终端利用多个线程向所述被测服务器发送Restful API请求,所述Restful API请求中携带有所述JSON格式的数据。
8.一种服务器压力测试系统,其特征在于,所述系统包括多个设置在测试服务器中的虚拟机、人机交互单元、约车终端交互单元以及信息采集单元;
其中,每个虚拟机用于模拟一辆智能驾驶车辆;
所述人机交互单元,用于建立约车终端与每个虚拟机之间的连接,模拟所述智能驾驶车辆与所述约车终端进行交互;
所述约车终端交互单元,用于建立被测服务器与约车终端之间的连接,模拟所述约车终端利用多个线程向被测服务器发送约车请求;
所述信息采集单元,用于收集所述被测服务器的日志信息。
9.一种服务器压力测试设备,包括:至少一个存储器、至少一个处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1-7任一所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被至少一个处理器执行时实现如权利要求1-7任一所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810575797.6A CN108763009B (zh) | 2018-06-06 | 2018-06-06 | 服务器压力测试方法、系统、设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810575797.6A CN108763009B (zh) | 2018-06-06 | 2018-06-06 | 服务器压力测试方法、系统、设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108763009A true CN108763009A (zh) | 2018-11-06 |
CN108763009B CN108763009B (zh) | 2021-08-20 |
Family
ID=63999166
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810575797.6A Active CN108763009B (zh) | 2018-06-06 | 2018-06-06 | 服务器压力测试方法、系统、设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108763009B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109560987A (zh) * | 2018-11-27 | 2019-04-02 | 中国电力科学研究院有限公司 | 一种用于用电信息采集系统主站压力测试的方法及系统 |
CN110175110A (zh) * | 2019-05-31 | 2019-08-27 | 深圳前海微众银行股份有限公司 | 压力测试方法、装置、系统、设备及计算机可读存储介质 |
CN111949504A (zh) * | 2020-08-19 | 2020-11-17 | 政采云有限公司 | 一种压力测试方法、装置及介质 |
CN113076238A (zh) * | 2021-03-25 | 2021-07-06 | 北京车和家信息技术有限公司 | 压力测试方法、装置、存储介质及电子设备 |
CN113177000A (zh) * | 2021-05-21 | 2021-07-27 | 拉扎斯网络科技(上海)有限公司 | 订单调度系统的测试方法、装置、存储介质及计算机设备 |
CN114528219A (zh) * | 2022-02-23 | 2022-05-24 | 阿波罗智联(北京)科技有限公司 | 约车流程测试方法、装置、设备、介质和程序产品 |
CN116483718A (zh) * | 2023-04-25 | 2023-07-25 | 无锡市软测认证有限公司 | 一种利用大数据实现大规模压力测试系统及方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6324492B1 (en) * | 1998-01-20 | 2001-11-27 | Microsoft Corporation | Server stress testing using multiple concurrent client simulation |
CN1728657A (zh) * | 2004-07-30 | 2006-02-01 | Ut斯达康通讯有限公司 | 用于流媒体服务的负载模拟器以及负载模拟系统 |
CN1859463A (zh) * | 2005-12-08 | 2006-11-08 | 华为技术有限公司 | 一种呼叫中心人工座席资源的模拟实现方法及其系统 |
CN104517154A (zh) * | 2014-12-17 | 2015-04-15 | 北京石油化工学院 | 一种基于物联网的电动自行车预约与租赁系统 |
CN107102935A (zh) * | 2017-03-01 | 2017-08-29 | 网易(杭州)网络有限公司 | 一种服务器压力测试方法及装置 |
-
2018
- 2018-06-06 CN CN201810575797.6A patent/CN108763009B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6324492B1 (en) * | 1998-01-20 | 2001-11-27 | Microsoft Corporation | Server stress testing using multiple concurrent client simulation |
CN1728657A (zh) * | 2004-07-30 | 2006-02-01 | Ut斯达康通讯有限公司 | 用于流媒体服务的负载模拟器以及负载模拟系统 |
CN1859463A (zh) * | 2005-12-08 | 2006-11-08 | 华为技术有限公司 | 一种呼叫中心人工座席资源的模拟实现方法及其系统 |
CN104517154A (zh) * | 2014-12-17 | 2015-04-15 | 北京石油化工学院 | 一种基于物联网的电动自行车预约与租赁系统 |
CN107102935A (zh) * | 2017-03-01 | 2017-08-29 | 网易(杭州)网络有限公司 | 一种服务器压力测试方法及装置 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109560987A (zh) * | 2018-11-27 | 2019-04-02 | 中国电力科学研究院有限公司 | 一种用于用电信息采集系统主站压力测试的方法及系统 |
CN110175110A (zh) * | 2019-05-31 | 2019-08-27 | 深圳前海微众银行股份有限公司 | 压力测试方法、装置、系统、设备及计算机可读存储介质 |
WO2020238345A1 (zh) * | 2019-05-31 | 2020-12-03 | 深圳前海微众银行股份有限公司 | 压力测试方法、装置、系统、设备及计算机可读存储介质 |
CN110175110B (zh) * | 2019-05-31 | 2022-04-01 | 深圳前海微众银行股份有限公司 | 压力测试方法、装置、系统、设备及计算机可读存储介质 |
CN111949504A (zh) * | 2020-08-19 | 2020-11-17 | 政采云有限公司 | 一种压力测试方法、装置及介质 |
CN113076238A (zh) * | 2021-03-25 | 2021-07-06 | 北京车和家信息技术有限公司 | 压力测试方法、装置、存储介质及电子设备 |
CN113076238B (zh) * | 2021-03-25 | 2023-12-01 | 北京车和家信息技术有限公司 | 压力测试方法、装置、存储介质及电子设备 |
CN113177000A (zh) * | 2021-05-21 | 2021-07-27 | 拉扎斯网络科技(上海)有限公司 | 订单调度系统的测试方法、装置、存储介质及计算机设备 |
CN114528219A (zh) * | 2022-02-23 | 2022-05-24 | 阿波罗智联(北京)科技有限公司 | 约车流程测试方法、装置、设备、介质和程序产品 |
CN116483718A (zh) * | 2023-04-25 | 2023-07-25 | 无锡市软测认证有限公司 | 一种利用大数据实现大规模压力测试系统及方法 |
CN116483718B (zh) * | 2023-04-25 | 2023-11-14 | 无锡市软测认证有限公司 | 一种利用大数据实现大规模压力测试系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108763009B (zh) | 2021-08-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108763009A (zh) | 服务器压力测试方法、系统、设备及计算机可读存储介质 | |
CN106484622B (zh) | 测试方法、装置及系统 | |
CN106055470B (zh) | 游戏程序的性能测试方法、装置及系统 | |
CN109446071A (zh) | 接口测试方法、接口测试装置、电子设备及存储介质 | |
CN108647141A (zh) | 自动测试方法、装置、计算机可读介质及电子设备 | |
CN110162471A (zh) | 一种基于容器云的压力测试方法及系统 | |
CN110275822A (zh) | 应用程序接口的性能测试方法、装置、设备及存储介质 | |
CN103209180B (zh) | 一种协议一致性测试的方法及系统 | |
CN110442524A (zh) | 一种针对带有认证授权的web服务接口测试方法和装置 | |
CN107018523A (zh) | Wifi模块测试方法及装置 | |
CN110162481A (zh) | 一种软件测试方法、装置、设备以及存储介质 | |
CN109740222A (zh) | 一种针对汽车网联化场景的测试装置和系统 | |
CN108228407A (zh) | 设备功能测试方法、装置及可读存储介质 | |
CN110058990A (zh) | 性能测试方法及装置、计算机设备、存储介质 | |
CN109376088A (zh) | 一种自动化测试系统及自动化测试方法 | |
CN108347356A (zh) | 一种多协议单元测试方法、装置、电子设备和存储介质 | |
Beilharz et al. | Continuously testing distributed iot systems: An overview of the state of the art | |
CN109100952B (zh) | 分布式半实物仿真航天器健康管理系统区域推理机 | |
CN114490356A (zh) | 压力测试方法、系统、设备及存储介质 | |
CN104008055A (zh) | 软件测试的方法、设备及系统 | |
CN108694120A (zh) | 测试服务组件的方法和装置 | |
KR101690948B1 (ko) | 타임라인 기반 항공기 장치의 입출력 이벤트 시나리오를 사용한 소프트웨어 검증 방법 및 이의 시스템 | |
CN112306857A (zh) | 用于测试应用的方法和装置 | |
CN114691529B (zh) | 一种gRPC接口性能测试的方法及装置 | |
CN113341767A (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 |