CN116483718A - System and method for realizing large-scale pressure test by utilizing big data - Google Patents
System and method for realizing large-scale pressure test by utilizing big data Download PDFInfo
- Publication number
- CN116483718A CN116483718A CN202310456875.1A CN202310456875A CN116483718A CN 116483718 A CN116483718 A CN 116483718A CN 202310456875 A CN202310456875 A CN 202310456875A CN 116483718 A CN116483718 A CN 116483718A
- Authority
- CN
- China
- Prior art keywords
- server
- test
- pressure test
- interactive
- press
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 348
- 238000000034 method Methods 0.000 title claims abstract description 29
- 230000002452 interceptive effect Effects 0.000 claims abstract description 107
- 238000004458 analytical method Methods 0.000 claims abstract description 36
- 230000003068 static effect Effects 0.000 claims abstract description 16
- 238000011156 evaluation Methods 0.000 claims abstract description 15
- 238000011002 quantification Methods 0.000 claims abstract description 5
- 238000011084 recovery Methods 0.000 claims description 30
- 238000010276 construction Methods 0.000 claims description 16
- 230000015556 catabolic process Effects 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 9
- 230000003993 interaction Effects 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 9
- 230000008859 change Effects 0.000 claims description 6
- 238000004891 communication Methods 0.000 claims description 6
- 230000006399 behavior Effects 0.000 claims description 3
- 230000010485 coping Effects 0.000 claims description 3
- 238000012937 correction Methods 0.000 claims description 3
- 238000007405 data analysis Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 claims description 3
- 238000012544 monitoring process Methods 0.000 claims description 3
- 238000004088 simulation Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 description 12
- 238000013139 quantization Methods 0.000 description 2
- 230000007547 defect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000002360 explosive Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000009295 sperm incapacitation Effects 0.000 description 1
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/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- 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
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal 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)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
The invention discloses a system and a method for realizing large-scale pressure test by utilizing big data, and particularly relates to the technical field of server test, wherein a first pressure test module tests the performance of a server based on the static information of the server, and executes a request task to acquire the dynamic information of the server to obtain the performance parameters of the server under the non-interactive condition; the second pressure test module is used for executing the interactive pressure test case and feeding back a test result to the press, the press simulates a user to send a new request task to the server, the server executes the request task and requests the task concurrently, and the server performance parameters under the interactive condition are obtained; the second pressure test result analysis module is used for comprehensively analyzing the result of the second pressure test and acquiring the load limit of the server; the comprehensive performance evaluation module is used for evaluating the results of the first pressure test and the second pressure test to obtain the performance quantification index of the server.
Description
Technical Field
The invention relates to the technical field of server testing, in particular to a system and a method for realizing large-scale pressure testing by utilizing big data.
Background
The game jamming seriously affects the user experience, the explosive growth of game players is quite common, when the online number exceeds a preset value and the game load is too high, and the performance is insufficient, the progress is jammed or crashed, even the product loss caused by the logic loophole is caused, and the performance of a game server affects the experience of game participants.
Obtaining the stress limit of the game server helps to avoid a stuck or crashed game, the game server being characterized in that: a game is a long running program and is to serve multiple sporadic, erratic network requests. Therefore, the stability and performance of the game server are particularly concerned, and the limitation of bearing stress of the server is obtained through large-scale stress test on the game server, so that the server is protected from being damaged by increasing the server according to the concurrency quantity of the game.
In the prior art, when the game server is subjected to stress test, the problems are as follows: 1. the test cases are not properly selected, so that the test cost is increased; 2. the interactivity of the existing robot pressure test is insufficient, so that the test is inaccurate, and a method for obtaining the pressure limit of the server is unavailable.
Disclosure of Invention
In order to overcome the defects in the prior art, the embodiment of the invention provides a system and a method for realizing large-scale pressure test by utilizing big data, wherein the performance of a server facing a non-interactive concurrent request is obtained through violence test, an interactive test case is constructed by extracting game running big data, the interactive operation of a game server and a client in practice is simulated, the interactive pressure test is carried out around a critical interval, the performance of the server facing the interactive concurrent request is obtained, and finally the performance of the server is comprehensively evaluated, so that the problems in the background technology are solved.
In order to achieve the above purpose, the present invention provides the following technical solutions: a system for realizing large-scale pressure test by utilizing big data, which comprises a first pressure test module, an interactive test case construction module, a second pressure test result analysis module and a comprehensive performance evaluation module,
the first pressure testing module tests the performance of the server based on the static information of the server, the single testing process is that the server executes a request task after receiving a request of the press, and the testing result is fed back to the press to complete one-time testing, so that the dynamic information of the server is obtained to obtain the performance parameters of the server under the non-interactive condition;
the interactive test case construction module is used for constructing an interactive test case, specifically based on server performance parameters under the non-interactive condition and large data of interactive operation between the game server and the client, and then constructing the interactive test case;
the second pressure test module is used for executing the interactive pressure test case, wherein the single test process is that the server executes a request task after receiving a request of the press, and feeds a test result back to the press, a press simulation user sends a new request task to the server, and the server executes the request task and sends the request task simultaneously to obtain the server performance parameters under the interactive condition;
the second pressure test result analysis module is used for comprehensively analyzing the result of the second pressure test and acquiring the load limit of the server;
the comprehensive performance evaluation module is used for evaluating the results of the first pressure test and the second pressure test to obtain the performance quantization index of the server.
Preferably, the first pressure test module comprises a non-interactive test case construction unit, a non-interactive pressure test execution unit and a non-interactive pressure test analysis unit, wherein the non-interactive test case construction unit is used for constructing a non-interactive pressure test case and obtaining a critical pressure value of a server based on the performance of the server; the non-interactive pressure test execution unit is used for executing the non-interactive pressure test cases, building a test environment, importing the test cases into the press, sending a request command to the game server by the press, executing the request command by the server, summarizing the feedback result of the request task and transmitting the feedback result to the non-interactive pressure test analysis module; the non-interactive pressure test analysis unit is used for analyzing the obtained feedback result, analyzing the performance of the server for coping with violent tests, summarizing the feedback result of the request task, and judging whether the test environment meets the requirements.
Preferably, the first pressure testing module and the second pressure testing module include a building unit of a testing environment, and the building process of the testing environment is as follows: the method comprises the steps of importing test cases into a press, performing a distributed pressure test mode by using the press to obtain the maximum concurrency quantity and network card parameters of the press, constructing corresponding interfaces, parameters and request modes of test request commands, distributing large-scale concurrency users and concurrency operations needing pressure test into n presses, sending the request commands to a game server by the press, executing the request commands by the server, summarizing feedback results of request tasks and transmitting the feedback results to a response performance analysis step.
Preferably, the first pressure testing module acquires a testing case based on static information of the server, acquires performance of the dynamic information analysis server of the server, and acquires performance parameters of the server under the non-interactive condition, and the method comprises the following steps:
step S01, obtaining a test case: acquiring static information of a server, wherein the static information comprises parameters of CPU core number, memory, network bandwidth, network card and hard disk, obtaining a server performance upper limit value based on hardware performance parameters of the server, and constructing a large-scale non-interactive pressure test case;
step S02, building and verifying a test environment: building a test environment, wherein the test environment comprises a press, a server and network communication, a request is sent through the press, and the test environment is verified before the test is executed;
step S03, executing a non-interactive pressure test: the press sends a request command to the server, and the server receives a request task sent by the press, including concurrent pressure test:
step S04, the server executes the request command, and records the feedback result of each request task to obtain the dynamic information in the test;
step S05, analyzing the performance of the pressure test: and acquiring parameters of the server performance according to the dynamic information.
Preferably, in step S05, the calculation of the performance parameter of the server includes the following steps:
step S11, the press sends a request command to the server according to the test case;
step S12, a server receives a request task sent by a press machine, concurrent pressure test is carried out, the pressure test is stopped after throughput performance analysis task requests are accumulated to a certain number, and then the upper limit value of the number of database requests processed by the current server per second is calculated and obtained according to the change value of a task queue divided by a time interval and is recorded as maxQ;
step S13, testing the components by multiples of the upper limit value: calculating the time of system breakdown and recovery time, and sending (1+n x a) a maxQ request task to a server through a press, wherein a represents a pressure test parameter, the value is 5% -20%, and n represents an nth large-scale pressure test;
step S14, executing large-scale pressure test, and sending a (1+n x a) maxQ request task to a server by a press;
step S15, recording the time ta of the breakdown of the server and the recovery time tb;
step S16, repeating the steps S14-S15 until the recovery time exceeds the limit value of the preset recovery time, obtaining the number of times of finishing the large-scale pressure test as m, wherein mi is used for representing the ith execution, and when the first execution is performed, mi=1, and m is less than or equal to n;
step S17, collecting crash time and recovery time of the server, which are marked as (t) a1 ,t b1 )、(t a2 ,t b2 ) …, evaluating the performance parameters FYC of the server, wherein the calculation formula satisfies
Including absolute concurrency and relative leanness
Preferably, the method for constructing the interactive test case comprises the following steps:
step S21, a data acquisition unit: the method is used for collecting historical data of the game client to obtain big data of user operation, and the obtained operation is divided into the following steps according to functions: game registration, game login, picture loading, game skill operation and data query;
step S22, big data analysis: analyzing the collected big data, constructing the interaction behavior of the client and the server, and counting to obtain the frequency of each operation of the client;
step S23, a test case construction unit: and generating an interactive test case based on the probability of each operation, wherein the interactive test case is a set of request commands, each subset in the set has relevance, and the occurrence frequency of the subset accords with the probability in big data of a user.
Preferably, the second pressure testing module is configured to execute an interactive pressure test, first achieve a full-load operation condition of the server, perform the interactive test under the full-load operation condition, and determine whether the pressure test is continued or stopped based on a feedback condition of the server.
Preferably, the second pressure test result analysis module includes the following steps:
step S31, the press sends a request command to the server according to the test case;
step S32, a server receives request tasks sent by a press machine, concurrent pressure test is carried out, the pressure test is stopped after throughput performance analysis task requests are accumulated to a certain number, and then the upper limit value of the number of database requests processed by the current server per second is calculated and obtained according to the change value of a task queue divided by a time interval and is recorded as maxQ';
step S33, testing the components by multiples of the upper limit value: calculating the time of system breakdown and recovery time, and sending a (1+n x b) maxQ request task to a server through a press, wherein b represents a pressure test parameter, the value is 5% -10%, and n represents an nth large-scale pressure test;
step S34, executing large-scale pressure test, and sending a (1+n x b) maxQ' request task to a server by a press;
step S35, recording the time ta of the breakdown of the server and the recovery time tb;
step S36, repeating the steps S14-S15 until the recovery time exceeds the limit value of the preset recovery time, obtaining the completion times of the large-scale pressure test as m ', and using m'. i Represents the ith execution, mi=1 at the first execution, and m ". Ltoreq.n;
step S37, collecting crash time and recovery time of the server, which are marked as (t) a1 ,t b1 )、(t a2 ,t b2 ) …, evaluating the performance parameter JYC of the server, and the calculation formula satisfies
Preferably, the comprehensive performance evaluation module obtains the comprehensive performance parameter ZH of the server based on the performance parameter FYC of the server and the performance parameter JYC of the server, monitors the state of the early warning server based on the comprehensive performance parameter, and satisfies the formulaWherein η1 and η2 are coefficient parameters, c is a correction factor constant, η1 is obtained by monitoring the server conditions, and η2=1 to η1, representing the number of brute force attacks.
In order to achieve the above purpose, the present invention provides the following technical solutions: a method for realizing large-scale pressure test by using big data comprises the following steps:
s001, first pressure test: acquiring a test case of a non-interactive pressure test based on static information of a server, building a test environment to perform a large-scale pressure test, and acquiring dynamic performance parameters FYC of the server, which are represented by the large-scale pressure test under non-interaction;
s002, generating an interaction pressure test case: collecting historical data of a game client to obtain big data of user operation, constructing an interactive test case based on the big data, and transmitting the obtained interactive pressure test to a second pressure test step;
s003, second pressure test: setting up a test environment for interactive test, sending a request command to a server by a press according to a test case, receiving a request task sent by the press by the server, calculating to obtain an upper limit value of the number of database requests processed by the current server per second, and performing large-scale test by multiple of the upper limit value;
s004, collecting data of a second pressure test, and calculating dynamic performance parameters JYC of the server under non-interactive large-scale pressure test performance in the test;
s005, the comprehensive performance evaluation module is used for evaluating the results of the first pressure test and the second pressure test to obtain the performance quantification index of the server.
The invention has the technical effects and advantages that:
according to the invention, the first pressure test module is used as a violent test to obtain the performance of the server when facing a non-interactive request, the second pressure test module is used for carrying out an interactive test to simulate the actual operation of a user, the test case is constructed based on real user operation big data, the test case is used for carrying out a large-scale pressure test in a gradient manner to obtain the performance of the server when facing the interactive request, and finally the condition of the server is monitored through comprehensive performance evaluation, so that the problems of inaccurate test caused by the selection of the current test case, increased test cost, insufficient interactivity of the robot pressure test, inaccurate test and incapacitation of obtaining the pressure limit of the server are solved.
Drawings
Fig. 1 is a block diagram of a system architecture of the present invention.
FIG. 2 is a flow chart of non-interactive stress test performance analysis according to the present invention.
FIG. 3 is a flow chart of the interactive pressure test performance analysis of the present invention.
Fig. 4 is a flow chart of the method of the present invention.
Detailed Description
The following description of the embodiments of the present invention will be made clearly and completely with reference to the accompanying drawings, in which it is apparent that the embodiments described are only some embodiments of the present invention, but not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the invention without making any inventive effort, are intended to be within the scope of the invention.
The large-scale pressure test in this embodiment is based on an intranet environment, without considering extranet performance.
Example 1
The embodiment provides a large-scale pressure test system realized by big data, which is shown in figure 1 and comprises a first pressure test module, an interactive test case construction module, a second pressure test result analysis module and a comprehensive performance evaluation module,
the first pressure testing module tests the performance of the server based on the static information of the server, the single testing process is that the server executes a request task after receiving a request of the press, and the testing result is fed back to the press to complete one-time testing, so that the dynamic information of the server is obtained to obtain the performance parameters of the server under the non-interactive condition;
the interactive test case construction module is used for constructing an interactive test case, and particularly, based on server performance parameters under the non-interactive condition and big data of interactive operation between the game server and the client, the interactive test case is built again;
the second pressure test module is used for executing the interactive pressure test case, the single test process is that the server executes a request task after receiving a request of the press, a test result is fed back to the press, a simulation user of the press sends a new request task to the server, the server executes the request task and sends the request task simultaneously, and the server performance parameters under the interactive condition are obtained;
the second pressure test result analysis module is used for comprehensively analyzing the result of the second pressure test and acquiring the load limit of the server;
the comprehensive performance evaluation module is used for evaluating the results of the first pressure test and the second pressure test to obtain the performance quantization index of the server.
Further, the first pressure test module comprises a non-interactive test case construction unit, a non-interactive pressure test execution unit and a non-interactive pressure test analysis unit, wherein the non-interactive test case construction unit is used for constructing a non-interactive pressure test case and obtaining a critical pressure value of a server based on the performance of the server; the non-interactive pressure test execution unit is used for executing the non-interactive pressure test cases, building a test environment, importing the test cases into the press, sending a request command to the game server by the press, executing the request command by the server, summarizing the feedback result of the request task and transmitting the feedback result to the non-interactive pressure test analysis module; the non-interactive pressure test analysis unit is used for analyzing the obtained feedback result, analyzing and obtaining the performance of the server for coping with the violent test, and transmitting the obtained performance to the comprehensive performance evaluation module.
Further, the first pressure testing module and the second pressure testing module comprise building units of testing environments, and the building process of the testing environments is as follows: the method comprises the steps of importing test cases into a press, performing a distributed pressure test mode by using the press to obtain the maximum concurrency quantity and network card parameters of the press, constructing corresponding interfaces, parameters and request modes of test request commands, distributing large-scale concurrency users and concurrency operations needing pressure test into n presses, sending the request commands to a game server by the press, executing the request commands by the server, summarizing feedback results of request tasks and transmitting the feedback results to a response performance analysis unit.
Further, the response performance analysis unit is used for respectively analyzing the CPU response time, the memory response time analysis and the communication network card response time, and when the time of the CPU response time, the memory response time analysis and the communication network card response time are in a normal range and the resource utilization rates of the CPU response time, the memory response time analysis and the communication network card response time are equivalent, the built test environment meets the requirements.
In the non-interactive pressure test performance analysis flow chart of the invention, as shown in fig. 2, the first pressure test module acquires test cases based on static information of a server, acquires the performance of the server by analyzing the dynamic information of the server, and acquires the performance parameters of the server under the non-interactive condition, and the method comprises the following steps:
step S01, obtaining a test case: acquiring static information of a server, wherein the static information comprises parameters of CPU core number, memory, network bandwidth, network card and hard disk, obtaining a server performance upper limit value based on hardware performance parameters of the server, and constructing a large-scale non-interactive pressure test case;
step S02, building and verifying a test environment: building a test environment, wherein the test environment comprises a press, a server and network communication, a request is sent through the press, and the test environment is verified before the test is executed;
step S03, executing a non-interactive pressure test: the press sends a request command to the server, and the server receives a request task sent by the press, including concurrent pressure test:
step S04, the server executes the request command, and records the feedback result of each request task to obtain the dynamic information in the test;
step S05, analyzing the performance of the pressure test: and acquiring parameters of the server performance according to the dynamic information.
In the interactive pressure test performance analysis flowchart of the present invention, as shown in fig. 3, in step S05, the calculation of the performance parameters of the server includes the following steps:
step S11, the press sends a request command to the server according to the test case;
step S12, a server receives a request task sent by a press machine, concurrent pressure test is carried out, the pressure test is stopped after throughput performance analysis task requests are accumulated to a certain number, and then the upper limit value of the number of database requests processed by the current server per second is calculated and obtained according to the change value of a task queue divided by a time interval and is recorded as maxQ;
step S13, testing the components by multiples of the upper limit value: calculating the time of system breakdown and recovery time, and sending (1+n x a) a maxQ request task to a server through a press, wherein a represents a pressure test parameter, the value is 5% -20%, and n represents an nth large-scale pressure test;
step S14, executing large-scale pressure test, and sending a (1+n x a) maxQ request task to a server by a press;
step S15, recording the time ta of the breakdown of the server and the recovery time tb;
step S16, repeating the steps S14-S15 until the recovery time exceeds the limit value of the preset recovery time, obtaining the number of times of finishing the large-scale pressure test as m, wherein mi is used for representing the ith execution, and when the first execution is performed, mi=1, and m is less than or equal to n;
in step S17, the crash time and the recovery time of the server are collected and denoted as (ta 1, tb 1), (ta 2, tb 2) …, and the performance parameter FYC of the server is evaluated.
Further, what is said isThe calculation formula of FYC satisfies
Further, the construction method of the interactive test case comprises the following steps:
step S21, a data acquisition unit: the method is used for collecting historical data of the game client to obtain big data of user operation, and the obtained operation is divided into the following steps according to functions: game registration, game login, picture loading, game skill operation and data query;
step S22, big data analysis: analyzing the collected big data, constructing the interaction behavior of the client and the server, and counting to obtain the frequency of each operation of the client;
step S23, a test case construction unit: and generating an interactive test case based on the probability of each operation, wherein the interactive test case is a set of request commands, each subset in the set has relevance, and the occurrence frequency of the subset accords with the probability in big data of a user.
Further, the second pressure testing module is configured to execute an interactive pressure test, first achieve a full-load operation condition of the server, perform the interactive test under the full-load operation condition, and determine whether the pressure test is continued or stopped based on a feedback condition of the server.
Further, the second pressure test result analysis module includes the following steps:
step S31, the press sends a request command to the server according to the test case;
step S32, a server receives request tasks sent by a press machine, concurrent pressure test is carried out, the pressure test is stopped after throughput performance analysis task requests are accumulated to a certain number, and then the upper limit value of the number of database requests processed by the current server per second is calculated and obtained according to the change value of a task queue divided by a time interval and is recorded as maxQ';
step S33, testing the components by multiples of the upper limit value: calculating the time of system breakdown and recovery time, and sending a (1+n x b) maxQ request task to a server through a press, wherein b represents a pressure test parameter, the value is 5% -10%, and n represents an nth large-scale pressure test;
step S34, executing large-scale pressure test, and sending a (1+n x b) maxQ' request task to a server by a press;
step S35, recording the time ta of the breakdown of the server and the recovery time tb;
step S36, repeating the steps S14-S15 until the recovery time exceeds the limit value of the preset recovery time, obtaining the completion times of the large-scale pressure test as m ', wherein m ' i is used for representing the ith execution, and when the first execution is performed, the mi=1, and m ' -is less than or equal to n;
step S37, collecting the crash time and the recovery time of the server, denoted as (ta 1, tb 1), (ta 2, tb 2) …, evaluating the performance parameter JYC of the server, and the calculation formula satisfies
Further, the comprehensive performance evaluation module obtains the comprehensive performance parameter ZH of the server based on the performance parameter FYC of the server and the performance parameter JYC of the server, monitors the state of the early warning server based on the comprehensive performance parameter, and satisfies the formulaWherein η1 and η2 are coefficient parameters, c is a correction factor constant, η1 is obtained by monitoring the server conditions, and η2=1 to η1, representing the number of brute force attacks.
In order to achieve the above object, as shown in fig. 4, the present invention provides the following technical solutions: a method for realizing large-scale pressure test by using big data comprises the following steps:
s001, first pressure test: acquiring a test case of a non-interactive pressure test based on static information of a server, building a test environment to perform a large-scale pressure test, and acquiring dynamic performance parameters FYC of the server, which are represented by the large-scale pressure test under non-interaction;
s002, generating an interaction pressure test case: collecting historical data of a game client to obtain big data of user operation, constructing an interactive test case based on the big data, and transmitting the obtained interactive pressure test to a second pressure test step;
s003, second pressure test: setting up a test environment for interactive test, sending a request command to a server by a press according to a test case, receiving a request task sent by the press by the server, calculating to obtain an upper limit value of the number of database requests processed by the current server per second, and performing large-scale test by multiple of the upper limit value;
s004, collecting data of a second pressure test, and calculating dynamic performance parameters JYC of the server under non-interactive large-scale pressure test performance in the test;
s005, the comprehensive performance evaluation module is used for evaluating the results of the first pressure test and the second pressure test to obtain the performance quantification index of the server.
The present embodiment provides only one implementation and does not specifically limit the protection scope of the present invention.
Finally: the foregoing description of the preferred embodiments of the invention is not intended to limit the invention to the precise form disclosed, and any such modifications, equivalents, and alternatives falling within the spirit and principles of the invention are intended to be included within the scope of the invention.
Claims (10)
1. A system for implementing large-scale pressure testing using big data, comprising the following modules:
the first pressure testing module tests the performance of the server based on the static information of the server, and the single testing process is that the server executes a request task after receiving a request of the press, and the dynamic information of the server is obtained to obtain the performance parameters of the server under the non-interactive condition;
the interactive test case construction module is used for constructing an interactive test case, specifically based on server performance parameters under the non-interactive condition and large data of interactive operation between the game server and the client, and then constructing the interactive test case;
the second pressure test module is used for executing the interactive pressure test case, wherein the single test process is that the server executes a request task after receiving a request of the press, and feeds a test result back to the press, a press simulation user sends a new request task to the server, and the server executes the request task and sends the request task simultaneously to obtain the server performance parameters under the interactive condition;
the second pressure test result analysis module is used for comprehensively analyzing the result of the second pressure test and acquiring the load limit of the server;
the comprehensive performance evaluation module is used for evaluating the results of the first pressure test and the second pressure test to obtain the performance quantification index of the server.
2. A system for implementing large scale pressure testing using big data according to claim 1, wherein: the first pressure test module comprises a non-interactive test case construction unit, a non-interactive pressure test execution unit and a non-interactive pressure test analysis unit, wherein the non-interactive test case construction unit is used for constructing a non-interactive pressure test case and obtaining a critical pressure value of a server based on the performance of the server; the non-interactive pressure test execution unit is used for executing the non-interactive pressure test cases, building a test environment, importing the test cases into the press, sending a request command to the game server by the press, executing the request command by the server, summarizing the feedback result of the request task and transmitting the feedback result to the non-interactive pressure test analysis module; the non-interactive pressure test analysis unit is used for analyzing the obtained feedback result, analyzing and obtaining the performance of the server for coping with the violent test, and transmitting the obtained performance to the comprehensive performance evaluation module.
3. A system for implementing large scale pressure testing using big data according to claim 1, wherein: the first pressure test module and the second pressure test module comprise building units of test environments, and the building process of the test environments is as follows: the method comprises the steps of importing test cases into a press, performing a distributed pressure test mode by using the press to obtain the maximum concurrency quantity and network card parameters of the press, constructing corresponding interfaces, parameters and request modes of test request commands, distributing large-scale concurrency users and concurrency operations needing pressure test into n presses, sending the request commands to a game server by the press, executing the request commands by the server, and summarizing feedback results of request tasks to judge whether a test environment meets requirements.
4. A system for implementing large scale pressure testing using big data according to claim 1, wherein: the first pressure test module acquires test cases based on static information of the server, acquires performance of the dynamic information analysis server of the server, and acquires performance parameters of the server under the non-interactive condition, and the method comprises the following steps:
step S01, obtaining a test case: acquiring static information of a server, wherein the static information comprises parameters of CPU core number, memory, network bandwidth, network card and hard disk, obtaining a server performance upper limit value based on hardware performance parameters of the server, and constructing a large-scale non-interactive pressure test case;
step S02, building and verifying a test environment: building a test environment, wherein the test environment comprises a press, a server and network communication, a request is sent through the press, and the test environment is verified before the test is executed;
step S03, executing a non-interactive pressure test: the press sends a request command to the server, and the server receives a request task sent by the press, including concurrent pressure test:
step S04, the server executes the request command, and records the feedback result of each request task to obtain the dynamic information in the test;
step S05, analyzing the performance of the pressure test: and acquiring parameters of the server performance according to the dynamic information.
5. A system for implementing large scale pressure testing using big data as defined in claim 4, wherein: in step S05, the calculation of the performance parameter of the server includes the following steps:
step S11, the press sends a request command to the server according to the test case;
step S12, a server receives a request task sent by a press machine, concurrent pressure test is carried out, the pressure test is stopped after throughput performance analysis task requests are accumulated to a certain number, and then the upper limit value of the number of database requests processed by the current server per second is calculated and obtained according to the change value of a task queue divided by a time interval and is recorded as maxQ;
step S13, testing the components by multiples of the upper limit value: calculating the time of system breakdown and recovery time, and sending (1+n x a) a maxQ request task to a server through a press, wherein a represents a pressure test parameter, the value is 5% -20%, and n represents an nth large-scale pressure test;
step S14, executing large-scale pressure test, and sending a (1+n x a) maxQ request task to a server by a press;
step S15, recording the time ta of the breakdown of the server and the recovery time tb;
step S16, repeating the steps S14-S15 until the recovery time exceeds the limit value of the preset recovery time, obtaining the number of times of finishing the large-scale pressure test as m, wherein mi is used for representing the ith execution, and when the first execution is performed, mi=1, and m is less than or equal to n;
step S17, collecting crash time and recovery time of the server, which are marked as (t) a1 ,t b1 )、(t a2 ,t b2 ) …, evaluating the performance parameters FYC of the server, wherein the calculation formula satisfies
6. A system for implementing large scale pressure testing using big data according to claim 1, wherein: the construction method of the interactive test case comprises the following steps:
step S21, a data acquisition unit: the method is used for collecting historical data of the game client to obtain big data of user operation, and the obtained operation is divided into the following steps according to functions: game registration, game login, picture loading, game skill operation and data query;
step S22, big data analysis: analyzing the collected big data, constructing the interaction behavior of the client and the server, and counting to obtain the frequency of each operation of the client;
step S23, a test case construction unit: and generating an interactive test case based on the probability of each operation, wherein the interactive test case is a set of request commands, each subset in the set has relevance, and the occurrence frequency of the subset accords with the probability in big data of a user.
7. A system for implementing large scale pressure testing using big data according to claim 1, wherein: the second pressure test module is used for executing the interactive pressure test, firstly achieving the full-load running condition of the server, executing the interactive test under the full-load running condition, and determining whether the pressure test is continued or stopped based on the feedback condition of the server.
8. A system for implementing large scale pressure testing using big data according to claim 1, wherein: the second pressure test result analysis module comprises the following steps:
step S31, the press sends a request command to the server according to the test case;
step S32, a server receives request tasks sent by a press machine, concurrent pressure test is carried out, the pressure test is stopped after throughput performance analysis task requests are accumulated to a certain number, and then the upper limit value of the number of database requests processed by the current server per second is calculated and obtained according to the change value of a task queue divided by a time interval and is recorded as maxQ';
step S33, testing the components by multiples of the upper limit value: calculating the time of system breakdown and recovery time, and sending a (1+n x b) maxQ request task to a server through a press, wherein b represents a pressure test parameter, the value is 5% -10%, and n represents an nth large-scale pressure test;
step S34, executing large-scale pressure test, and sending a (1+n x b) maxQ' request task to a server by a press;
step S35, recording the time ta of the breakdown of the server and the recovery time tb;
step S36, repeating the steps S14-S15 until the recovery time exceeds the limit value of the preset recovery time, obtaining the completion times of the large-scale pressure test as m ', and using m'. i Represents the ith execution, mi=1 at the first execution, and m ". Ltoreq.n;
step S37, collecting crash time and recovery time of the server, which are marked as (t) a1 ,t b1 )、(t a2 ,t b2 ) …, evaluating the performance parameter JYC of the server, and the calculation formula satisfies
9. A system for implementing large scale pressure testing using big data according to claim 1, wherein: the comprehensive performance evaluation module obtains the comprehensive performance parameter ZH of the server based on the performance parameter FYC of the server and the performance parameter JYC of the server, monitors the state of the early warning server based on the comprehensive performance parameter, and satisfies the formulaWherein η1 and η2 are coefficient parameters, c is a correction factor constant, η1 is obtained by monitoring the server conditions, and η2=1 to η1, representing the number of brute force attacks.
10. A method for implementing the large-scale pressure test using big data according to the previous claims 1-9, characterized in that: comprises the following steps:
s001, first pressure test: acquiring a test case of a non-interactive pressure test based on static information of a server, building a test environment to perform a large-scale pressure test, and acquiring dynamic performance parameters FYC of the server, which are represented by the large-scale pressure test under non-interaction;
s002, generating an interaction pressure test case: collecting historical data of a game client to obtain big data of user operation, constructing an interactive test case based on the big data, and transmitting the obtained interactive pressure test to a second pressure test step;
s003, second pressure test: setting up a test environment for interactive test, sending a request command to a server by a press according to a test case, receiving a request task sent by the press by the server, calculating to obtain an upper limit value of the number of database requests processed by the current server per second, and performing large-scale test by multiple of the upper limit value;
s004, collecting data of a second pressure test, and calculating dynamic performance parameters JYC of the server under non-interactive large-scale pressure test performance in the test;
s005, the comprehensive performance evaluation module is used for evaluating the results of the first pressure test and the second pressure test to obtain the performance quantification index of the server.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310456875.1A CN116483718B (en) | 2023-04-25 | 2023-04-25 | System and method for realizing large-scale pressure test by utilizing big data |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310456875.1A CN116483718B (en) | 2023-04-25 | 2023-04-25 | System and method for realizing large-scale pressure test by utilizing big data |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116483718A true CN116483718A (en) | 2023-07-25 |
CN116483718B CN116483718B (en) | 2023-11-14 |
Family
ID=87221016
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310456875.1A Active CN116483718B (en) | 2023-04-25 | 2023-04-25 | System and method for realizing large-scale pressure test by utilizing big data |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116483718B (en) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120047013A (en) * | 2010-11-03 | 2012-05-11 | 주식회사 엔씨소프트 | Stress test system for online game server based on script and method thereof |
US20160062880A1 (en) * | 2014-08-26 | 2016-03-03 | Cloudy Days Inc. Dba Nouvola | Methods and Systems for the Use of Synthetic Users To Performance Test Cloud Applications |
CN108763009A (en) * | 2018-06-06 | 2018-11-06 | 驭势(上海)汽车科技有限公司 | Server stress test method, system, equipment and computer readable storage medium |
CN111078478A (en) * | 2019-12-17 | 2020-04-28 | 腾讯科技(深圳)有限公司 | Server stress testing method and device and computer readable storage medium |
CN111666194A (en) * | 2020-05-21 | 2020-09-15 | 平安科技(深圳)有限公司 | Pressurization parameter self-adaptive adjusting method and device, computer equipment and storage medium |
CN113204493A (en) * | 2021-05-28 | 2021-08-03 | 中国工商银行股份有限公司 | Performance evaluation method and device based on pressure test |
CN113535535A (en) * | 2020-04-17 | 2021-10-22 | 腾讯科技(成都)有限公司 | Method, device and system for testing game server and computer storage medium |
CN113609026A (en) * | 2021-08-20 | 2021-11-05 | 盐城金堤科技有限公司 | Method and device for pressure testing of server |
CN114625621A (en) * | 2022-03-11 | 2022-06-14 | 平安普惠企业管理有限公司 | Performance test method and device, computer equipment and storage medium |
-
2023
- 2023-04-25 CN CN202310456875.1A patent/CN116483718B/en active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120047013A (en) * | 2010-11-03 | 2012-05-11 | 주식회사 엔씨소프트 | Stress test system for online game server based on script and method thereof |
US20160062880A1 (en) * | 2014-08-26 | 2016-03-03 | Cloudy Days Inc. Dba Nouvola | Methods and Systems for the Use of Synthetic Users To Performance Test Cloud Applications |
CN108763009A (en) * | 2018-06-06 | 2018-11-06 | 驭势(上海)汽车科技有限公司 | Server stress test method, system, equipment and computer readable storage medium |
CN111078478A (en) * | 2019-12-17 | 2020-04-28 | 腾讯科技(深圳)有限公司 | Server stress testing method and device and computer readable storage medium |
CN113535535A (en) * | 2020-04-17 | 2021-10-22 | 腾讯科技(成都)有限公司 | Method, device and system for testing game server and computer storage medium |
CN111666194A (en) * | 2020-05-21 | 2020-09-15 | 平安科技(深圳)有限公司 | Pressurization parameter self-adaptive adjusting method and device, computer equipment and storage medium |
CN113204493A (en) * | 2021-05-28 | 2021-08-03 | 中国工商银行股份有限公司 | Performance evaluation method and device based on pressure test |
CN113609026A (en) * | 2021-08-20 | 2021-11-05 | 盐城金堤科技有限公司 | Method and device for pressure testing of server |
CN114625621A (en) * | 2022-03-11 | 2022-06-14 | 平安普惠企业管理有限公司 | Performance test method and device, computer equipment and storage medium |
Also Published As
Publication number | Publication date |
---|---|
CN116483718B (en) | 2023-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Barse et al. | Synthesizing test data for fraud detection systems | |
CN108075951B (en) | Server stress testing method and device based on player distribution | |
CN101576844A (en) | Method and system for testing software system performances | |
CN109165153B (en) | Performance test method of high-simulation securities trade system | |
Böhme et al. | Estimating residual risk in greybox fuzzing | |
CN115460121B (en) | Data center monitoring method and system based on big data and digital twins | |
US6691259B1 (en) | Terminal server data file extraction and analysis application | |
CN115510454A (en) | Game testing method and device, electronic equipment and storage medium | |
CN115271736A (en) | Method, device, equipment, storage medium and product for verifying transaction consistency | |
CN114281784A (en) | Transaction log playback method, device, equipment and medium for distributed core system | |
CN116483718B (en) | System and method for realizing large-scale pressure test by utilizing big data | |
CN112905435B (en) | Workload assessment method, device, equipment and storage medium based on big data | |
CN112948262A (en) | System test method, device, computer equipment and storage medium | |
CN113656314A (en) | Pressure test processing method and device | |
CN113656313A (en) | Automatic test processing method and device | |
CN115102874B (en) | Gateway system performance testing method and device and electronic equipment | |
US11734547B2 (en) | Modelling request sequences in online-connected video games | |
CN113254808B (en) | GIS data screening method and system | |
CN112631943B (en) | Recognition method and device for computing software | |
CN116185815B (en) | Software performance test simulation method and system | |
CN110362464A (en) | Software analysis method and equipment | |
CN112052162B (en) | Regression test case selection method and device | |
CN112527641B (en) | Game server load testing method | |
EP4167205A1 (en) | Software path prediction via machine learning | |
CN116860585A (en) | Impulse testing method, impulse testing device, and readable storage medium |
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 |