Large-scale parallel software testing method based on cloud computing
By adopting test analysis sub-methods and optimization analysis sub-methods in cloud computing environments, the correlation between server performance and load elements during parallel processing is solved, and the problem that the existing technology cannot automatically identify the unmet parallel processing conditions is improved, and the stability of software operation and parallel processing efficiency are improved.
Patent Information
- Application Number
- CN202510502392.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-04-22
- Publication Date
- 2025-05-23
- Estimated Expiration
- 2045-04-22
AI Technical Summary
The prior art cannot evaluate the correlation between server performance and load elements during parallel processing based on the performance analysis results of server nodes, resulting in the system being unable to automatically identify running task data packets that do not meet the parallel processing conditions, affecting the stability of software operation.
A large-scale parallel software testing method based on cloud computing is adopted, including test analysis sub-methods and optimization analysis sub-methods. The test analysis sub-method obtains the test coefficients by generating test task data packets, running tests, evaluating server node performance and statistically analyzing results. The optimization analysis sub-method marks the performance optimization task based on the test coefficients, and generates performance optimization decisions to optimize the performance configuration of the server node.
By analyzing the operating performance of server nodes in real time, evaluating the correlation between server performance and load elements during parallel processing, we can automatically identify task data packets that do not meet the parallel processing conditions, improving the stability of software operation and the parallel processing efficiency of multi-core servers.
Smart Images

Figure CN120029925A_ABST
Abstract
Description
Technical Field
[0001] The invention belongs to the field of software parallel testing, relates to data analysis technology, and specifically is a large-scale parallel software testing method based on cloud computing. Background Art
[0002] Software parallel testing is an automated testing method that improves efficiency by executing multiple test tasks simultaneously. Its core goal is to shorten the test cycle and improve software quality through resource optimization and task distribution. Parallel testing is a technology that runs multiple test cases or test suites simultaneously on multiple real devices, browser configurations or environments.
[0003] The invention patent with announcement number CN115794659B discloses a distributed parallel testing method, device, equipment and medium for CFD software. The parallel testing method is based on remote method call technology. By building a distributed parallel testing architecture to connect multiple test nodes, the distributed parallel testing of CFD software is realized, and the testing efficiency is effectively improved; however, the parallel testing method cannot analyze the operating performance of the server nodes in real time during the test process, and thus cannot evaluate the correlation between the server performance and the load elements during parallel processing based on the performance analysis results of the server nodes, resulting in the system being unable to automatically identify the running task data packets that do not meet the parallel processing conditions, and the running stability of the parallel software cannot be guaranteed.
[0004] In view of the above technical problems, this application proposes a solution. Summary of the invention
[0005] The purpose of the present invention is to provide a large-scale parallel software testing method based on cloud computing, which is used to solve the problem that the prior art cannot evaluate the correlation between server performance and load factors during parallel processing based on the performance analysis results of server nodes; The technical problem to be solved by the present invention is: how to provide a large-scale parallel software testing method based on cloud computing that can evaluate the correlation between server performance and load factors during parallel processing according to the performance analysis results of server nodes.
[0006] The purpose of the present invention can be achieved through the following technical solutions: A large-scale parallel software testing method based on cloud computing, including a test analysis sub-method and an optimization analysis sub-method; The test analysis sub-method is used to test and analyze the large-scale parallel tasks of the software, and includes the following steps: Step S1: Generate several groups of test task data packets: each group of test task data packets contains two test tasks, each test task has two test elements: task quantity and task calculation amount, and two test tasks in the same group of test task data packets have only one test element in common; Step S2: running the parallel software through the test task data packet: testing the test tasks in the same test task data packet in sequence; Step S3: Evaluate and analyze the operating performance of the server nodes during the test: mark the central server, computing server, and storage server as server nodes, and obtain the performance coefficient of the server nodes during the test in real time; Step S4: Statistically analyze the results of the server node operation performance evaluation: process the performance values of all server nodes in the same test process to obtain the performance valley peak value and the timing coverage value, and mark the sum of the performance valley peak value and the timing coverage value as the test coefficient of the test process; The optimization analysis sub-method is used to optimize and analyze the large-scale parallel tasks of the software through the test coefficients of the test process.
[0007] Furthermore, in step S3, the process of obtaining the performance coefficient of the server node during the test includes: obtaining the load data, usage data and response data of the server node in real time; and obtaining the test coefficient of the test process by generating a test data row vector and a weight column vector according to the load data, usage data and response data and performing a dot product calculation.
[0008] Further, in step S4, the process of obtaining the performance valley peak value and the timing coverage value includes: summing and averaging the performance coefficients at the same time to obtain the performance value, retrieving the performance evaluation value, marking the difference between the maximum value of the performance value during the test and the performance evaluation value as the performance analysis value, marking the ratio of the performance analysis value to the performance evaluation value as the performance valley peak value, marking the duration during the test that the performance value exceeds the performance evaluation value as the evaluation duration value, and marking the ratio of the evaluation duration value to the test process duration as the timing coverage value.
[0009] Further, the optimization analysis sub-method comprises the following steps: Step P1: Perform performance optimization analysis on the server node: retrieve the test threshold, mark the test tasks whose test coefficient is not less than the test threshold as performance optimization tasks, and obtain the processing optimization coefficient and the allocation optimization coefficient according to the test coefficient, task calculation amount, and task quantity of the performance optimization task and the distribution rule; Step P2: Generate performance optimization decisions; Step P3: Perform quantitative definition optimization analysis on parallel software: the calculation range is composed of the maximum and minimum values of the task calculation amount in the test task, the calculation range is divided into several calculation intervals, the test task data packets with the same task calculation amount in the test elements are marked as unified calculation data packets, the unified calculation data packets with task calculation amounts in the calculation interval are marked as matching data packets in the calculation interval, the absolute value of the difference between the test coefficients of the two test tasks in the matching data packet is marked as the processing deviation value of the matching data packet, and the processing deviation values of all matching data packets in the same calculation interval constitute a processing deviation set; Step P4: centrally analyze the processing deviation set of all calculation intervals and obtain the quantitative limit value; Step P5: Apply the quantity limit value of the calculation interval: When processing the running task data packet of the parallel software, obtain the task calculation amount of the running task data packet, call the quantity limit value of the calculation interval corresponding to the task calculation amount, and determine whether the running task data packet meets the parallel processing conditions through the quantity limit value.
[0010] Furthermore, in step P2, the process of generating the performance optimization decision includes: comparing the allocation optimization coefficient with the processing optimization coefficient: if the allocation optimization coefficient is smaller than the processing optimization coefficient, then generating an allocation scheduling optimization signal and sending the allocation scheduling optimization signal to the mobile phone terminal of the manager; otherwise, generating a calculation processing optimization signal and sending the calculation processing optimization signal to the mobile phone terminal of the manager.
[0011] Furthermore, in step P4, the specific process of performing centralized analysis on the processing deviation set of the calculation interval includes: performing variance calculation on the processing deviation set to obtain a processing concentration coefficient, and comparing the processing concentration coefficient with a preset processing concentration threshold: if the processing concentration coefficient is greater than or equal to the processing concentration threshold, the maximum element and the minimum element in the processing deviation set are eliminated, and then the processing concentration coefficient is recalculated, and so on, until the processing concentration coefficient is less than the processing concentration threshold; if the processing concentration coefficient is less than the processing concentration threshold, the maximum value of the number of tasks in the matching data packet corresponding to the retained elements in the processing deviation set is marked as the quantity limit value of the calculation interval.
[0012] Further, in step P5, the specific process of determining whether the running task data packet meets the parallel processing conditions includes: determining whether the number of tasks in the running task data packet is greater than the quantity limit value: if so, determining that the running task data packet does not meet the parallel processing conditions, and pre-processing the running task data packet before parallel processing; if not, determining that the running task data packet meets the parallel processing conditions, and directly processing the running task data packet in parallel.
[0013] The present invention has the following beneficial effects: 1. The test analysis sub-method can be used to test and analyze the large-scale parallel tasks of the software, and the various performance data of the server nodes during the test process can be statistically analyzed and processed to obtain the test coefficient. According to the test coefficient, the performance status of the server node when processing the test tasks of different test elements can be fed back and evaluated, providing data support for performance optimization analysis; 2. Through the optimization analysis sub-method, the large-scale parallel tasks of the software can be optimized and analyzed, and the performance optimization tasks can be marked according to the test coefficient. The performance optimization decision of the server node is generated by combining the test coefficient of the performance optimization task, the task calculation amount, the numerical size of the task number and the numerical distribution rule, so as to improve the parallel processing efficiency of the multi-core server; 3. Through quantitative optimization analysis of parallel software, we can set evaluation basis for the parallel processing conditions of the software, so as to directly judge whether the running task data packet meets the parallel processing conditions according to the test elements of the running task data packet, and avoid blindly executing parallel tasks, which may lead to excessive system load, performance degradation or even direct crash. BRIEF DESCRIPTION OF THE DRAWINGS
[0014] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0015] Figure 1 A flow chart of the test analysis sub-method of the present invention; Figure 2 Flow chart of the optimization analysis sub-method of the present invention. DETAILED DESCRIPTION
[0016] The technical solution of the present invention will be clearly and completely described below in conjunction with the embodiments. Obviously, the described embodiments are only part of the embodiments of the present invention, rather than all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.
[0017] A large-scale parallel software testing method based on cloud computing, including a test analysis sub-method and an optimization analysis sub-method; like Figure 1 As shown, the test analysis sub-method is used to test and analyze the large-scale parallel tasks of the software, including the following steps: Step S1: Generate several groups of test task data packets: each group of test task data packets contains two test tasks, each test task has two test elements: task quantity and task calculation amount, and two test tasks in the same group of test task data packets have only one test element in common; Step S2: Run the parallel software test through the test task data package: Test the test tasks in the same test task data package in turn. In this process, split the test task into the computing layer (test execution), storage layer (test data / results), and scheduling layer (task distribution). Modular expansion is achieved through the microservice architecture to support cross-regional multi-node collaborative testing. The test task is disassembled into several subtasks through the central server, and the subtasks are distributed to each computing server node through the cloud platform for task processing. The feedback test data and task processing results are sent to the storage server for storage, and the test process of a single test task is completed. Step S3: Evaluate and analyze the operating performance of the server node during the test: mark the central server, computing server and storage server as server nodes, and obtain the load data FH, usage data SY and response data XY of the server node during the test in real time. The load data FH is the CPU occupancy rate of the server node during the test, the usage data SY is the memory usage rate of the server node during the test, and the response data XY is the response time of the server node during the test; the load data FH, usage data SY and response data XY constitute the test data row vector CH=[FH, SY, XY], and generate the weight column vector QX=[c1, c2, c3] T , where c3>c2>c1, and c1+c2+c3=1; the performance coefficient of the server node during the test is obtained by performing a dot product calculation on the test data row vector CH and the weight column vector QX; Step S4: Statistical analysis is performed on the operating performance evaluation results of the server nodes: the performance coefficients of all server nodes at the same time in the same test process are summed and averaged to obtain a performance value, the performance evaluation value is retrieved, and the difference between the maximum value of the performance value in the test process and the performance evaluation value is marked as the performance analysis value, the ratio of the performance analysis value to the performance evaluation value is marked as the performance valley peak value, the duration during which the performance value in the test process exceeds the performance evaluation value is marked as the evaluation duration value, the ratio of the evaluation duration value to the test process duration is marked as the timing coverage value, and the sum of the performance valley peak value and the timing coverage value is marked as the test coefficient of the test process; The software's large-scale parallel tasks are tested and analyzed, and the performance data of the server nodes during the test are counted and processed to obtain the test coefficient. Based on the test coefficient, the performance status of the server nodes when processing test tasks with different test elements is fed back and evaluated, providing data support for performance optimization analysis.
[0018] like Figure 2 As shown, the optimization analysis sub-method is used to optimize and analyze the large-scale parallel tasks of the software, including the following steps: Step P1: Perform performance optimization analysis on the server node: call the test threshold, mark the test task whose test coefficient is not less than the test threshold as a performance optimization task, arrange the performance optimization tasks in descending order of the test coefficient value to obtain a performance optimization sequence, arrange the performance optimization tasks in descending order of the task quantity value to obtain an allocation sequence, arrange the performance optimization tasks in descending order of the task calculation amount value to obtain a processing sequence, mark the absolute value of the difference between the sequence number of the performance optimization task in the performance optimization sequence and the sequence number in the allocation sequence as the allocation optimization value of the performance optimization task, sum and average the allocation optimization values of all performance optimization tasks to obtain the allocation optimization coefficient, mark the absolute value of the difference between the sequence number of the performance optimization task in the performance optimization sequence and the sequence number in the processing sequence as the processing optimization value of the performance optimization task, sum and average the processing optimization values of all performance optimization tasks to obtain the processing optimization coefficient; Step P2: Generate performance optimization decision: compare the allocation optimization coefficient with the processing optimization coefficient: if the allocation optimization coefficient is less than the processing optimization coefficient, generate an allocation scheduling optimization signal and send the allocation scheduling optimization signal to the mobile phone terminal of the manager; otherwise, generate a calculation processing optimization signal and send the calculation processing optimization signal to the mobile phone terminal of the manager; Optimize and analyze the software's large-scale parallel tasks, mark the performance optimization tasks according to the test coefficient, and generate performance optimization decisions for server nodes based on the test coefficient of the performance optimization task, the task calculation amount, the numerical size of the task number, and the numerical distribution rules, thereby improving the parallel processing efficiency of multi-core servers.
[0019] Step P3: Perform quantitative definition optimization analysis on parallel software: the calculation range is composed of the maximum and minimum values of the task calculation amount in the test task, the calculation range is divided into several calculation intervals, the test task data packets with the same task calculation amount in the test elements are marked as unified calculation data packets, the unified calculation data packets with task calculation amounts in the calculation interval are marked as matching data packets in the calculation interval, the absolute value of the difference between the test coefficients of the two test tasks in the matching data packet is marked as the processing deviation value of the matching data packet, and the processing deviation values of all matching data packets in the same calculation interval constitute a processing deviation set; Step P4: Perform centralized analysis on the processing deviation sets of all calculation intervals: perform variance calculation on the processing deviation sets to obtain the processing concentration coefficient, and compare the processing concentration coefficient with the preset processing concentration threshold: if the processing concentration coefficient is greater than or equal to the processing concentration threshold, then remove the maximum element and the minimum element in the processing deviation set, and then recalculate the processing concentration coefficient, and so on, until the processing concentration coefficient is less than the processing concentration threshold; if the processing concentration coefficient is less than the processing concentration threshold, then mark the maximum value of the number of tasks in the matching data packet corresponding to the retained elements in the processing deviation set as the quantity boundary value of the calculation interval; Step P5: Apply the quantity limit value of the calculation interval: When processing the running task data packet of the parallel software, obtain the task calculation amount of the running task data packet, call the quantity limit value of the calculation interval corresponding to the task calculation amount, and determine whether the number of tasks of the running task data packet is greater than the quantity limit value: If so, determine that the running task data packet does not meet the parallel processing conditions, and pre-process the running task data packet before parallel processing; if not, determine that the running task data packet meets the parallel processing conditions, and directly process the running task data packet in parallel; set an evaluation basis for the parallel processing conditions of the software, so as to directly determine whether the running task data packet meets the parallel processing conditions according to the test elements of the running task data packet, so as to avoid blindly executing parallel tasks, resulting in excessive system load, performance degradation, or even direct crash.
[0020] A large-scale parallel software testing method based on cloud computing, when working, after generating several groups of test task data packets, the parallel software is run tested through the test task data packets and the test coefficient of the test process is obtained, the test threshold is called, and the test task whose test coefficient is not less than the test threshold is marked as a performance optimization task, and the test coefficient and test elements of the performance optimization task are analyzed and a performance optimization decision is generated; the calculation range is formed by the maximum and minimum values of the task calculation amount in the test task, and the calculation range is divided into several calculation intervals, and the quantity boundary value of each calculation interval is marked, and whether the running task data packet meets the parallel processing condition is judged by the quantity boundary value.
[0021] The above contents are merely examples and explanations of the structure of the present invention. The technicians in this technical field may make various modifications or additions to the specific embodiments described or replace them in a similar manner. As long as they do not deviate from the structure of the invention or exceed the scope defined by the claims, they should all fall within the protection scope of the present invention.
[0022] In the description of this specification, the description with reference to the terms "one embodiment", "example", "specific example", etc. means that the specific features, structures, materials or characteristics described in conjunction with the embodiment or example are included in at least one embodiment or example of the present invention. In this specification, the schematic representation of the above terms does not necessarily refer to the same embodiment or example. Moreover, the specific features, structures, materials or characteristics described can be combined in any one or more embodiments or examples in a suitable manner.
[0023] The preferred embodiments of the present invention disclosed above are only used to help explain the present invention. The preferred embodiments do not describe all the details in detail, nor do they limit the invention to only specific implementation methods. Obviously, many modifications and changes can be made according to the content of this specification. This specification selects and specifically describes these embodiments in order to better explain the principles and practical applications of the present invention, so that those skilled in the art can understand and use the present invention well. The present invention is limited only by the claims and their full scope and equivalents.
Claims
1. A large-scale parallel software testing method based on cloud computing, characterized in that: Includes test analysis sub-method and optimization analysis sub-method; The test analysis sub-method is used to test and analyze the large-scale parallel tasks of the software, and includes the following steps: Step S1: Generate several groups of test task data packets: each group of test task data packets contains two test tasks, each test task has two test elements: task quantity and task calculation amount, and two test tasks in the same group of test task data packets have only one test element in common; Step S2: running the parallel software through the test task data packet: testing the test tasks in the same test task data packet in sequence; Step S3: Evaluate and analyze the operating performance of the server nodes during the test: mark the central server, computing server, and storage server as server nodes, and obtain the performance coefficient of the server nodes during the test in real time; Step S4: Statistically analyze the results of the server node operation performance evaluation: process the performance values of all server nodes in the same test process to obtain the performance valley peak value and the timing coverage value, and mark the sum of the performance valley peak value and the timing coverage value as the test coefficient of the test process; The optimization analysis sub-method is used to perform optimization analysis on the large-scale parallel tasks of the software through the test coefficients of the test process.
2. The method for large-scale parallel software testing based on cloud computing according to claim 1, characterized in that: In step S3, the process of obtaining the performance coefficient of the server node during the test includes: obtaining the load data, usage data and response data of the server node in real time; obtaining the test coefficient of the test process by generating a test data row vector and a weight column vector according to the load data, usage data and response data and performing a dot product calculation.
3. The large-scale parallel software testing method based on cloud computing according to claim 2, characterized in that: In step S4, the process of obtaining the performance valley peak value and the timing coverage value includes: summing and averaging the performance coefficients at the same time to obtain the performance value, retrieving the performance evaluation value, marking the difference between the maximum value of the performance value during the test and the performance evaluation value as the performance analysis value, marking the ratio of the performance analysis value to the performance evaluation value as the performance valley peak value, marking the duration during the test that the performance value exceeds the performance evaluation value as the evaluation duration value, and marking the ratio of the evaluation duration value to the test process duration as the timing coverage value.
4. The method for large-scale parallel software testing based on cloud computing according to claim 3, characterized in that: The optimization analysis sub-method comprises the following steps: Step P1: Perform performance optimization analysis on the server node: retrieve the test threshold, mark the test tasks whose test coefficient is not less than the test threshold as performance optimization tasks, and obtain the processing optimization coefficient and the allocation optimization coefficient according to the test coefficient, task calculation amount, and task quantity of the performance optimization task and the distribution rule; Step P2: Generate performance optimization decisions; Step P3: Perform quantitative definition optimization analysis on parallel software: the calculation range is composed of the maximum and minimum values of the task calculation amount in the test task, the calculation range is divided into several calculation intervals, the test task data packets with the same task calculation amount in the test elements are marked as unified calculation data packets, the unified calculation data packets with task calculation amounts in the calculation interval are marked as matching data packets in the calculation interval, the absolute value of the difference between the test coefficients of the two test tasks in the matching data packet is marked as the processing deviation value of the matching data packet, and the processing deviation values of all matching data packets in the same calculation interval constitute a processing deviation set; Step P4: centrally analyze the processing deviation set of all calculation intervals and obtain the quantitative limit value; Step P5: Apply the quantity limit value of the calculation interval: When processing the running task data packet of the parallel software, obtain the task calculation amount of the running task data packet, call the quantity limit value of the calculation interval corresponding to the task calculation amount, and determine whether the running task data packet meets the parallel processing conditions through the quantity limit value.
5. The method for large-scale parallel software testing based on cloud computing according to claim 4, characterized in that: In step P2, the process of generating the performance optimization decision includes: comparing the allocation optimization coefficient with the processing optimization coefficient: if the allocation optimization coefficient is less than the processing optimization coefficient, then generating an allocation scheduling optimization signal and sending the allocation scheduling optimization signal to the manager's mobile phone terminal; otherwise, generating a calculation processing optimization signal and sending the calculation processing optimization signal to the manager's mobile phone terminal.
6. The method for large-scale parallel software testing based on cloud computing according to claim 5, characterized in that: In step P4, the specific process of performing concentrated analysis on the processing deviation set of the calculation interval includes: performing variance calculation on the processing deviation set to obtain a processing concentration coefficient, and comparing the processing concentration coefficient with a preset processing concentration threshold: if the processing concentration coefficient is greater than or equal to the processing concentration threshold, the maximum element and the minimum element in the processing deviation set are eliminated, and then the processing concentration coefficient is recalculated, and so on, until the processing concentration coefficient is less than the processing concentration threshold; if the processing concentration coefficient is less than the processing concentration threshold, the maximum value of the number of tasks in the matching data packet corresponding to the retained elements in the processing deviation set is marked as the quantity limit value of the calculation interval.
7. The method for large-scale parallel software testing based on cloud computing according to claim 6, characterized in that: In step P5, the specific process of determining whether the running task data packet meets the parallel processing conditions includes: determining whether the number of tasks in the running task data packet is greater than the quantity limit value: if so, determining that the running task data packet does not meet the parallel processing conditions, and pre-processing the running task data packet before parallel processing; if not, determining that the running task data packet meets the parallel processing conditions, and directly processing the running task data packet in parallel.
Citation Information
Patent Citations
A distributed parallel testing method, apparatus, equipment, and medium for CFD software.
CN115794659B
Method and device for realizing distributed load balancing in automatic test
CN115269193A
Distributed parallel test method and device for CFD software, equipment and medium
CN115794659A
Software testing method and system and readable storage medium
CN117215954A
Data transmission method based on cloud edge collaboration
CN117255134A