A cloud computing-based large-scale parallel software testing method

By using a cloud-based large-scale parallel software testing method, the performance of server nodes can be evaluated and optimized in real time. This solves the problem that existing technologies cannot evaluate the correlation between server performance and load factors, and improves parallel processing efficiency and software stability.

CN120029925BActive Publication Date: 2025-11-07DOPE INFORMATION TECH CO LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202510502392.X
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-04-22
Publication Date
2025-11-07
Estimated Expiration
2045-04-22

AI Technical Summary

Technical Problem

Existing technologies cannot analyze the operating performance of server nodes in real time, nor can they assess the correlation between server performance and load factors during parallel processing. This results in the system being unable to automatically identify running task data packets that do not meet the conditions for parallel processing, affecting the stability of software operation.

Method used

A cloud-based massively parallel software testing method is adopted. By generating test task data packages, the running performance of server nodes is evaluated and optimized in real time, performance optimization decisions are generated, and the conditions for optimizing parallel processing are determined.

Benefits of technology

It enables the correlation assessment of server node performance and load factors, improves the parallel processing efficiency of multi-core servers, avoids excessive system load and performance degradation, and ensures the stability of software operation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120029925B_ABST
    Figure CN120029925B_ABST
Patent Text Reader

Abstract

The application belongs to the field of software parallel test, relates to data analysis technology, and is used for solving the problem that the prior art cannot evaluate the correlation between the server performance and load elements during parallel processing according to the performance analysis result of the server node, and particularly relates to a large-scale parallel software test method based on cloud computing, which comprises a test analysis sub-method and an optimization analysis sub-method; the test analysis sub-method is used for testing and analyzing the large-scale parallel task of software; the optimization analysis sub-method is used for optimizing and analyzing the large-scale parallel task of software through the test coefficient of the test process; the application can optimize and analyze the large-scale parallel task of software, mark the performance optimization task according to the test coefficient, generate the performance optimization decision of the server node in combination with the test coefficient of the performance optimization task, the numerical size and the numerical distribution rule of the task calculation amount and the task quantity, and improve the parallel processing efficiency of the multi-core server.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The application belongs to the field of software parallel testing, and relates to a data analysis technique, in particular to a large-scale parallel software testing method based on cloud computing. BACKGROUND

[0002] Software parallel testing is an automated testing method for improving efficiency by simultaneously executing multiple testing tasks, and the core goal is to shorten the testing period and improve software quality through resource optimization and task distribution; parallel testing is a technology for simultaneously running multiple test cases or test suites in multiple real devices, browser configurations or environments.

[0003] The patent for invention with publication number CN115794659B discloses a distributed parallel testing method, device, equipment and medium for CFD software, which is based on remote method calling technology, connects multiple testing nodes by constructing a distributed parallel testing architecture, realizes distributed parallel testing of CFD software, and effectively improves testing efficiency; however, the parallel testing method cannot analyze the running performance of server nodes in real time during testing, and thus cannot evaluate the correlation between server performance and load elements during parallel processing according to the performance analysis result of server nodes, resulting in that the system cannot automatically identify running task data packets that do not meet the parallel processing conditions, and the running stability of parallel software cannot be guaranteed.

[0004] In view of the above technical problems, the present application provides a solution. SUMMARY

[0005] The application aims to provide a large-scale parallel software testing method based on cloud computing, which solves the problem that the prior art cannot evaluate the correlation between server performance and load elements during parallel processing according to the performance analysis result of server nodes.

[0006] The technical problem to be solved by the application is how to provide a large-scale parallel software testing method based on cloud computing, which can evaluate the correlation between server performance and load elements during parallel processing according to the performance analysis result of server nodes.

[0007] The object of the application can be achieved by the following technical solutions.

[0008] A large-scale parallel software testing method based on cloud computing, comprising a testing analysis sub-method and an optimization analysis sub-method.

[0009] The testing analysis sub-method is used for testing analysis of large-scale parallel tasks of software, and comprises the following steps:

[0010] Step S1: generating several sets of test task data packets: each set of test task data packets contains two test tasks, each test task has two test elements of task quantity and task calculation amount, and the two test tasks in the same set of test task data packets have only one same test element;

[0011] Step S2: running test on parallel software through test task data packets: testing the test tasks in the same test task data packet in turn;

[0012] Step S3: evaluating and analyzing the running performance of the server nodes in the test process: marking the central server, the computing server and the storage server as server nodes, and obtaining the performance coefficient of the server nodes in the test process in real time;

[0013] Step S4: statistically analyzing the running performance evaluation results of the server nodes: processing the performance values of all server nodes in the same test process to obtain the performance valley peak value and the time sequence coverage value, and marking the sum of the performance valley peak value and the time sequence coverage value as the test coefficient of the test process;

[0014] The optimization analysis sub-method is used to optimize and analyze the large-scale parallel tasks of the software through the test coefficient of the test process.

[0015] Further, in step S3, the performance coefficient of the server nodes in the test process includes: obtaining the load data, usage data and response data of the server nodes in real time; and obtaining the test coefficient of the test process by generating test data row vectors and weight column vectors from the load data, usage data and response data and performing dot product calculation.

[0016] Further, in step S4, the performance valley peak value and the time sequence coverage value include: summing and averaging the performance coefficients at the same time to obtain the performance value, calling the performance evaluation value, marking the difference between the maximum value of the performance value in the test process 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 length of time when the performance value exceeds the performance evaluation value in the test process as the evaluation length value, and marking the ratio of the evaluation length value to the length of the test process as the time sequence coverage value.

[0017] Further, the optimization analysis sub-method includes the following steps:

[0018] Step P1: performance optimization analysis of the server nodes: calling the test threshold value, marking the test task with a test coefficient not less than the test threshold value as a performance optimization task, and obtaining the processing optimization coefficient and the distribution optimization coefficient according to the numerical size and distribution rule of the test coefficient, task calculation amount and task quantity of the performance optimization task;

[0019] Step P2: generating performance optimization decision;

[0020] Step P3: performing quantity bounding optimization analysis on parallel software: forming a calculation range by a maximum value and a minimum value of task calculation amount in test tasks, dividing the calculation range into several calculation intervals, marking test task data packets with same task calculation amount in test elements as calculation uniform data packets, marking calculation uniform data packets with task calculation amount in a calculation interval as matching data packets of the calculation interval, marking an absolute value of test coefficient difference between two test tasks in a matching data packet as a processing deviation value of the matching data packet, and forming a processing deviation set by processing deviation values of all matching data packets in the same calculation interval;

[0021] Step P4: performing centralized analysis on the processing deviation set of all calculation intervals and obtaining quantity bounding value;

[0022] Step P5: applying quantity bounding value of the calculation interval: obtaining task calculation amount of a running task data packet of the parallel software, calling quantity bounding value of the calculation interval corresponding to the task calculation amount, and determining whether the running task data packet meets parallel processing condition by the quantity bounding value.

[0023] Further, in step P2, the generating process of 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, generating an allocation scheduling optimization signal and sending the allocation scheduling optimization signal to the mobile terminal of the manager; otherwise, generating a calculation processing optimization signal and sending the calculation processing optimization signal to the mobile terminal of the manager.

[0024] Further, 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, comparing the processing concentration coefficient with a preset processing concentration threshold value: if the processing concentration coefficient is greater than or equal to the processing concentration threshold value, removing the maximum element and the minimum element in the processing deviation set, and then recalculating the processing concentration coefficient, and so on until the processing concentration coefficient is less than the processing concentration threshold value; if the processing concentration coefficient is less than the processing concentration threshold value, marking a maximum value of task number in the matching data packet corresponding to the remaining element in the processing deviation set as the quantity bounding value of the calculation interval.

[0025] Further, the specific process of determining whether the running task data packet meets the parallel processing condition in step P5 includes: determining whether the task quantity of the running task data packet is greater than the quantity defined value; if yes, determining that the running task data packet does not meet the parallel processing condition, and performing the parallel processing after the pre-processing of the running task data packet; if not, determining that the running task data packet has the parallel processing condition, and directly performing the parallel processing on the running task data packet.

[0026] The present application has the following advantages:

[0027] 1. The large-scale parallel task of the software can be tested and analyzed by the test analysis sub-method, and the performance data of the server node in the test process is counted and processed to obtain a test coefficient, and the performance state of the server node in processing the test task of different test elements is fed back and evaluated according to the test coefficient, thereby providing data support for performance optimization analysis.

[0028] 2. The large-scale parallel task of the software can be optimized and analyzed by the optimization analysis sub-method, the performance optimization task is marked according to the test coefficient, and the performance optimization decision of the server node is generated by combining the test coefficient, the task calculation amount and the numerical size and numerical distribution rule of the task quantity, thereby improving the parallel processing efficiency of the multi-core server.

[0029] 3. The quantity defined optimization analysis on the parallel software can set the evaluation basis for the parallel processing condition of the software, so as to directly determine whether the running task data packet meets the parallel processing condition according to the test elements of the running task data packet, thereby avoiding the phenomenon of high system load, performance decline and even direct crash caused by blind execution of the parallel task. BRIEF DESCRIPTION OF DRAWINGS

[0030] In order to more clearly illustrate the technical solutions in the embodiments of the present application or the prior art, the following will briefly introduce the drawings needed to be used in the embodiments or the prior art description. Obviously, the drawings in the following description only some embodiments of the present application, and for those skilled in the art, other drawings can also be obtained without creative labor on the basis of these drawings.

[0031] Figure 1 The flow chart of the test analysis sub-method of the present application;

[0032] Figure 2 The flow chart of the optimization analysis sub-method of the present application. DETAILED DESCRIPTION

[0033] The technical solutions of the present application will be described clearly and completely below in connection with the embodiments. Obviously, the described embodiments are only some of the embodiments of the present application, but not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present application.

[0034] A cloud computing-based large-scale parallel software testing method, comprising a test analysis sub-method and an optimization analysis sub-method;

[0035] As shown in Figure 1 The test analysis sub-method is used for testing analysis of large-scale parallel tasks of software, comprising the following steps:

[0036] Step S1: generating a plurality of groups of test task data packets: each group of test task data packets contains two test tasks, each test task has two test elements of task quantity and task calculation amount, and the two test tasks in the same group of test task data packets have only one same test element;

[0037] Step S2: running test on parallel software through test task data packets: testing the test tasks in the same test task data packet in turn, in the process, the test tasks are divided into a calculation layer (test execution), a storage layer (test data / result), and a scheduling layer (task distribution), modular expansion is realized through a micro-service architecture, and cross-regional multi-node collaborative testing is supported; the test tasks are decomposed into a plurality of sub-tasks through a central server, the sub-tasks are distributed to each computing server node through a cloud platform for task processing, the feedback test data and task processing results are sent to a storage server for storage, and the testing process of a single test task is completed;

[0038] Step S3: evaluating and analyzing the running performance of the server nodes in the testing process: marking the central server, the computing server, and the storage server as server nodes, real-time acquiring load data FH, usage data SY, and response data XY of the server nodes in the testing process, the load data FH is the CPU occupancy rate of the server nodes in the testing process, the usage data SY is the memory usage rate of the server nodes in the testing process, and the response data XY is the response time of the server nodes in the testing process; the test data row vector CH=[FH, SY, XY] is formed by the load data FH, the usage data SY, and the response data XY, and the weight column vector QX=[c1, c2, c3] is generated T , wherein c3>c2>c1, and c1+c2+c3=1; the performance coefficient of the server nodes in the testing process is obtained by dot product calculation of the test data row vector CH and the weight column vector QX;

[0039] Step S4: statistical analysis of the running performance evaluation result of the server node: summing and averaging the performance coefficients of all server nodes at the same time in the same test process to obtain a performance value, calling the performance evaluation value, marking the difference between the maximum value of the performance value in the test process and the performance evaluation value as a performance analysis value, marking the ratio of the performance analysis value to the performance evaluation value as a performance valley peak value, marking the duration when the performance value exceeds the performance evaluation value in the test process as an evaluation duration value, marking the ratio of the evaluation duration value to the test process duration as a time sequence coverage value, and marking the sum of the performance valley peak value and the time sequence coverage value as a test coefficient of the test process;

[0040] The test analysis is performed on the large-scale parallel tasks of the software, and the test coefficient is obtained by statistically processing the performance data of the server nodes in the test process. The performance state of the server nodes in processing different test elements of the test tasks is fed back and evaluated according to the test coefficient, thereby providing data support for performance optimization analysis.

[0041] As shown in Figure 2 The optimization analysis sub-method is used for optimization analysis of the large-scale parallel tasks of the software, and includes the following steps:

[0042] Step P1: performance optimization analysis of the server node: calling the test threshold value, marking the test tasks with a test coefficient not less than the test threshold value as performance optimization tasks, arranging the performance optimization tasks in descending order of test coefficient values to obtain a performance optimization sequence, arranging the performance optimization tasks in descending order of task quantity values to obtain an allocation sequence, arranging the performance optimization tasks in descending order of task calculation amount values to obtain a processing sequence, marking 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, summing and averaging the allocation optimization values of all performance optimization tasks to obtain an allocation optimization coefficient, marking 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, and summing and averaging the processing optimization values of all performance optimization tasks to obtain a processing optimization coefficient;

[0043] Step P2: generating a performance optimization decision: comparing the allocation optimization coefficient with the processing optimization coefficient: if the allocation optimization coefficient is less than the processing optimization coefficient, generating an allocation scheduling optimization signal and sending the allocation scheduling optimization signal to the mobile terminal of the management personnel; otherwise, generating a calculation processing optimization signal and sending the calculation processing optimization signal to the mobile terminal of the management personnel;

[0044] The optimization analysis is performed on the large-scale parallel tasks of the software, the performance optimization tasks are marked according to the test coefficients, the performance optimization decision of the server node is generated by combining the test coefficients of the performance optimization tasks, the task calculation amount and the numerical size and numerical distribution rules of the task quantity, and the parallel processing efficiency of the multi-core server is improved.

[0045] Step P3: performing quantity boundary optimization analysis on the parallel software: the calculation range is formed by the maximum value and the minimum value of the task calculation amount in the test tasks, the calculation range is divided into a plurality of calculation intervals, the test task data packets with the same task calculation amount in the test elements are marked as calculation uniform data packets, the calculation uniform data packets with the task calculation amount located in the calculation interval are marked as matching data packets of the calculation interval, the absolute value of the test coefficient difference 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 the matching data packets in the same calculation interval form a processing deviation set;

[0046] Step P4: performing centralized analysis on the processing deviation sets of all the calculation intervals: the processing centralized coefficient is obtained by performing variance calculation on the processing deviation set, the processing centralized coefficient is compared with the preset processing centralized threshold value: if the processing centralized coefficient is greater than or equal to the processing centralized threshold value, the maximum element and the minimum element in the processing deviation set are removed, and then the processing centralized coefficient is recalculated, and the process is repeated until the processing centralized coefficient is less than the processing centralized threshold value; if the processing centralized coefficient is less than the processing centralized threshold value, the maximum value of the task quantity in the matching data packet corresponding to the reserved element in the processing deviation set is marked as the quantity boundary value of the calculation interval;

[0047] Step P5: applying the quantity boundary value of the calculation interval: when processing the running task data packet of the parallel software, the task calculation amount of the running task data packet is obtained, the quantity boundary value of the calculation interval corresponding to the task calculation amount is called, and it is determined whether the task quantity of the running task data packet is greater than the quantity boundary value: if yes, it is determined that the running task data packet does not meet the parallel processing condition, and the running task data packet is preprocessed before parallel processing; if not, it is determined that the running task data packet meets the parallel processing condition, and the running task data packet is directly parallel processed; the evaluation basis is set for the parallel processing condition of the software, so that whether the running task data packet meets the parallel processing condition is directly determined according to the test elements of the running task data packet, and the phenomenon of high system load, performance decline or even direct crash caused by blind execution of parallel tasks is avoided.

[0048] The application discloses a cloud computing-based large-scale parallel software testing method.

[0049] The above content is merely an example and description of the structure of the application, and those skilled in the art can make various modifications or supplements or replace with similar ways, as long as the modifications or supplements or replacements do not deviate from the structure of the application or exceed the range defined by the claims, and all should belong to the protection scope of the application.

[0050] In the description of the present specification, the description referring to the terms "one embodiment", "example", "specific example" and the like means that the specific features, structures, materials or characteristics described in connection with the embodiment or example are included in at least one embodiment or example of the present application. In the present specification, the illustrative description 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.

[0051] The preferred embodiments of the application disclosed above are only used to help explain the application. The preferred embodiments do not describe all the details and limit the application to the specific embodiments. Obviously, many modifications and changes can be made according to the content of the present specification. The present specification selects and specifically describes these embodiments in order to better explain the principles and practical applications of the application, so that those skilled in the art can well understand and utilize the application. The application is limited by the claims and their entire scope and equivalents.

Claims

1. A cloud computing-based large-scale parallel software testing method, characterized by, The test analysis sub-method and the optimization analysis sub-method are included. The test analysis sub-method is used for test analysis of large-scale parallel tasks of software, and includes the following steps: Step S1: generating a plurality of test task data packets: each test task data packet contains two test tasks, each test task has two test elements of task quantity and task calculation amount, and the two test tasks in the same test task data packet have only one same test element; Step S2: running test on parallel software through the test task data packet: testing the test tasks in the same test task data packet in sequence; Step S3: evaluating and analyzing the running performance of the server nodes in the test process: the central server, the computing server and the storage server are marked as server nodes, and the performance coefficient of the server nodes in the test process is obtained in real time; Step S4: statistically analyzing the running performance evaluation results of the server nodes: the performance values of all the server nodes in the same test process are processed to obtain the performance valley peak value and the time sequence coverage value, and the sum of the performance valley peak value and the time sequence coverage value is marked as the test coefficient of the test process; The optimization analysis sub-method is used for optimization analysis of large-scale parallel tasks of software through the test coefficient of the test process; The optimization analysis sub-method includes the following steps: Step P1: performance optimization analysis of the server nodes: calling the test threshold value, marking the test tasks with a test coefficient not less than the test threshold value as performance optimization tasks, and obtaining the processing optimization coefficient and the distribution optimization coefficient according to the numerical size and distribution rule of the test coefficient, the task calculation amount and the task quantity of the performance optimization tasks; Step P2: generating a performance optimization decision; Step P3: quantity definition optimization analysis of the parallel software: the calculation range is composed of the maximum value and the minimum value of the task calculation amount in the test tasks, the calculation range is divided into a plurality of calculation intervals, the test task data packets with the same task calculation amount in the test elements are marked as calculation unified data packets, the calculation unified data packets with the task calculation amount located in the calculation interval are marked as matching data packets of the calculation interval, the absolute value of the test coefficient difference value 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 value of all the matching data packets in the same calculation interval is marked as the processing deviation set; Step P4: centralized analysis of the processing deviation sets of all the calculation intervals and obtaining the quantity definition value; Step P5: application of the quantity definition value of the calculation interval: when processing the running task data packet of the parallel software, the task calculation amount of the running task data packet is obtained, the quantity definition value of the calculation interval corresponding to the task calculation amount is called, and whether the running task data packet meets the parallel processing condition is determined through the quantity definition value. In step S4, the performance valley peak and timing coverage value obtaining process comprises: summing and averaging the performance coefficients at the same time to obtain a performance value, calling the performance evaluation value, marking the difference between the maximum value of the performance value in the test process and the performance evaluation value as a performance analysis value, marking the ratio of the performance analysis value to the performance evaluation value as the performance valley peak, marking the length of time when the performance value exceeds the performance evaluation value in the test process as an evaluation length value, and marking the ratio of the evaluation length value to the length of time in the test process as the timing coverage value.

2. The cloud computing-based large-scale parallel software testing method according to claim 1, wherein, In step S3, the server node performance coefficient obtaining process in the test process comprises: obtaining the load data, usage data and response data of the server node in real time; and obtaining the performance coefficient of the test process by generating a test data row vector and a weight column vector from the load data, usage data and response data and performing dot product calculation. 3.The cloud computing-based large-scale parallel software testing method according to claim 2, wherein, In step P2, the performance optimization decision generation process comprises: comparing the allocation optimization coefficient with the processing optimization coefficient; if the allocation optimization coefficient is less than the processing optimization coefficient, generating an allocation scheduling optimization signal and sending the allocation scheduling optimization signal to the mobile terminal of the manager; otherwise, generating a calculation processing optimization signal and sending the calculation processing optimization signal to the mobile terminal of the manager.

4. The cloud computing-based large-scale parallel software testing method according to claim 3, wherein, In step P4, the specific process of centralized analysis of the processing deviation set of the calculation interval comprises: calculating the variance of the processing deviation set to obtain a processing centralized coefficient, comparing the processing centralized coefficient with a preset processing centralized threshold value; if the processing centralized coefficient is greater than or equal to the processing centralized threshold value, removing the maximum element and the minimum element in the processing deviation set, and then recalculating the processing centralized coefficient, and so on until the processing centralized coefficient is less than the processing centralized threshold value; if the processing centralized coefficient is less than the processing centralized threshold value, marking 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 number limit value of the calculation interval.

5. The cloud computing-based large-scale parallel software testing method according to claim 4, wherein, In step P5, the specific process of determining whether the running task data packet satisfies the parallel processing condition comprises: determining whether the number of tasks of the running task data packet is greater than the number limit value; if yes, determining that the running task data packet does not meet the parallel processing condition, and performing parallel processing on the running task data packet after preprocessing; if not, determining that the running task data packet has the parallel processing condition, and directly performing parallel processing on the running task data packet.

Citation Information

Patent Citations

  • A distributed parallel testing method, apparatus, equipment, and medium for CFD software.

    CN115794659B

  • Distributed parallel test method and device for CFD software, equipment and medium

    CN115794659A

  • Data transmission method based on cloud edge collaboration

    CN117255134A

  • Data processing method and device based on docking station, electronic equipment and medium

    CN117591850A