A software performance testing method based on big data analysis
By constructing a test knowledge graph and using autoencoder feature extraction, weighted Jaccard matching algorithm, and digital signal processing, test strategies are automatically matched and performance test instructions are generated, solving the consistency and accuracy problems in existing software performance testing and improving the automation and stability of testing.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- BEIJING XINBAOTONG TECHNOLOGY CO LTD
- Filing Date
- 2026-04-30
- Publication Date
- 2026-07-31
AI Technical Summary
Existing software performance testing methods rely on human experience, resulting in low consistency of test results, difficulty in extracting performance variation patterns from large amounts of data, insufficient matching of test strategies, inaccurate performance evaluation results, and significant noise impact.
By employing test knowledge graph construction technology, autoencoder feature extraction method, and weighted Jaccard matching algorithm, combined with digital signal processing technology, test strategies are automatically matched and performance test instructions are generated. Low-dimensional feature representations are extracted through autoencoder, and target nodes are screened using the weighted Jaccard algorithm for performance data processing and evaluation.
It improves the accuracy and consistency of test strategy selection, reduces the impact of data noise, enhances the automation and evaluation stability of performance testing, and improves the accuracy of performance bottleneck location.
Smart Images

Figure CN122489422A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of software performance testing technology, and in particular to a software performance testing method based on big data analysis. Background Technology
[0002] As software systems continue to expand in scale and business complexity increases, performance issues under high concurrency, multi-service coupling, and complex operating environments become increasingly prominent. Performance testing has become a crucial means of ensuring the stable operation of software systems. Existing software performance testing methods typically construct test scenarios, apply different loads to the software under test, and collect performance metrics such as response time, throughput, resource consumption, and error rate to evaluate the software's performance under different operating conditions.
[0003] In practical applications, performance testing often relies on testers' experience to select test metrics, design test strategies, and configure test parameters. The process of developing test plans is highly subjective; different testers may employ different test strategies in the same software environment, leading to low consistency in test results. Furthermore, as the scale of test data grows, performance testing generates a large amount of log data, monitoring data, and runtime data. Traditional methods primarily process this data through simple statistics or manual analysis, making it difficult to uncover performance variation patterns and potential correlations from multidimensional data.
[0004] On the other hand, existing technologies often rely on preset rules or fixed templates to obtain testing strategies, lacking the ability to perform correlation analysis and knowledge accumulation based on historical test data. This prevents the dynamic matching of optimal testing strategies according to the specific characteristics of the software under test, leading to insufficient test coverage or low utilization of test resources. Furthermore, in the performance data analysis process, most methods directly evaluate the raw performance indicators without effectively handling noise, abnormal fluctuations, and trend changes in the performance indicator sequence. This can easily affect the accuracy of performance evaluation results and cause biases in performance bottleneck identification.
[0005] Therefore, how to provide a software performance testing method based on big data analysis is a problem that urgently needs to be solved by those skilled in the art. Summary of the Invention
[0006] One objective of this invention is to propose a software performance testing method based on big data analysis. This invention fully utilizes test knowledge graph construction technology, self-encoding feature extraction method, weighted Jaccard matching algorithm, and digital signal processing technology. It describes in detail the complete process from software feature parsing, intelligent matching of test strategies, automatic generation of test instructions to performance data processing and evaluation. It has the advantages of high accuracy in test strategy matching, strong stability of performance evaluation results, and high accuracy in locating performance bottlenecks.
[0007] A software performance testing method based on big data analysis according to an embodiment of the present invention includes the following steps:
[0008] S1. Collect software test data from different sources and perform structured processing. Based on the processing results, extract software features, test indicators, and test strategies as nodes, and establish the relationship between nodes based on preset association rules to construct a test knowledge graph.
[0009] S2. Collect software information data, test index set and target performance data of the software to be tested, perform structured processing on the software information data to form a software attribute sequence, perform encoding mapping operation on the software attribute sequence through an autoencoder, extract low-dimensional feature representation, and form the feature sequence to be tested;
[0010] S3. Based on the test index set, perform candidate node retrieval operations in the test knowledge graph, use the weighted Jaccard algorithm to calculate the weighted matching value between each candidate node and the feature sequence to be tested, filter the target node based on the weighted matching value, extract the test strategy associated with the target node, and generate a test strategy sequence.
[0011] S4. Based on the preset standard instruction template, the test strategy sequence is converted into a test instruction sequence. The performance test operation is performed on the software to be tested according to the test instruction sequence to obtain the performance indicator sequence.
[0012] S5. Perform digital signal processing on the performance index sequence, and use the Savitzky-Golay algorithm to extract performance test parameters from the performance index sequence to form a test parameter sequence.
[0013] S6. Perform a performance evaluation operation on the test parameter sequence based on the target performance data to generate performance test results.
[0014] Optionally, the software test data represents a set of data used to reflect the software's operating status and testing behavior; the software features are used to describe the software's functional attributes and operating characteristics; the test index set represents a set of evaluation parameter types used to measure software performance; the test strategy represents a set of rules used to guide the execution of performance tests; and the preset association rules represent a set of constraints used to establish relationships between nodes.
[0015] Optionally, S1 specifically includes:
[0016] S11. Collect software test data from different sources and perform field alignment, missing value filling and numerical normalization operations to obtain structured test data containing multiple data units;
[0017] S12. Perform feature parsing on the structured test data to extract software running attributes, resource usage attributes, and call behavior attributes to form software features. Also extract performance measurement parameters to form test indicators, and extract test execution conditions and load control rules to form test strategies.
[0018] S13. Perform vectorized coding operations on software features, test metrics and test strategies, and construct a node set based on the coding results;
[0019] S14. Based on the preset association rules, perform association matching operation on the node set, use the Apriori algorithm to perform co-occurrence relationship mining operation on software feature nodes, test indicator nodes and test strategy nodes, calculate the support and confidence between nodes, and establish the association relationship between nodes based on the support and confidence.
[0020] S15. Perform structural organization operations on the relationships and node sets to construct a test knowledge graph.
[0021] Optionally, S14 specifically includes:
[0022] S141. Extract software features, test metrics and test strategies that appear simultaneously in the same data unit from the structured test data, and construct the corresponding nodes in the node set into a node combination based on the extraction results.
[0023] S142. Traverse the structured test data, count the number of times each node combination co-occurs in the structured test data, and calculate the support of each node combination based on the number of co-occurrences and the total number of data units.
[0024] S143. Node combinations with support greater than a preset support threshold are identified as frequent node combinations.
[0025] S144. Calculate the conditional probability of frequent node combinations:
[0026] For each frequent node combination, the number of times that frequent node combination co-occurs in the structured test data is counted as the strategy co-occurrence count;
[0027] The number of times that software features and test metrics in this frequent node combination co-occur in the structured test data is counted as the conditional co-occurrence count;
[0028] Divide the number of times the strategy co-occurs by the number of times the condition co-occurs to obtain the software features and test metrics for the frequent node combinations, and the confidence level of the corresponding test strategy.
[0029] S145. Establish association relationships between nodes for frequent node combinations with confidence levels greater than a preset confidence threshold.
[0030] Optionally, S2 specifically includes:
[0031] S21. Collect software information data, test index set and target performance data of the software to be tested, and perform field normalization and data format unification operations on the software information data to form structured information data;
[0032] S22. Perform attribute parsing operation on the structured information data, extract configuration parameters, interface attributes and running constraint attributes, and arrange them in a preset order to construct a software attribute sequence;
[0033] S23. Perform numerical standardization and feature encoding operations on the software attribute sequence to convert different types of attributes into a unified representation form to obtain the encoded attribute sequence.
[0034] S24. Input the encoded attribute sequence into the autoencoder and perform a compression mapping operation to extract low-dimensional feature representations;
[0035] S25. Perform sequence reconstruction and feature arrangement operations on the low-dimensional feature representation, arrange them according to the preset feature dimensions, and generate the feature sequence to be tested.
[0036] Optionally, S24 specifically includes:
[0037] S241. Input the encoded attribute sequence into the encoding layer of the autoencoder, perform a layer-by-layer mapping operation on the encoded attribute sequence, and generate an attribute implicit representation;
[0038] S242. Perform dimensionality compression on the implicit representation of attributes and input the compression result into the bottleneck layer of the autoencoder to extract low-dimensional feature representations;
[0039] S243. Input the low-dimensional feature representation into the decoding layer of the autoencoder and perform attribute reconstruction operation to generate a reconstructed attribute sequence.
[0040] S245. Calculate the reconstruction difference between the reconstructed attribute sequence and the encoded attribute sequence, and adjust the mapping parameters of the autoencoder according to the reconstruction difference;
[0041] S246. Iteratively execute layer-by-layer mapping, dimension compression, attribute reconstruction, reconstruction difference calculation and mapping parameter adjustment operations until the reconstruction difference meets the preset convergence condition, and output the low-dimensional feature representation extracted in the current round.
[0042] Optionally, S3 specifically includes:
[0043] S31. Perform node retrieval operation in the test knowledge graph according to the test indicator set, extract the test indicator nodes corresponding to each test indicator in the test indicator set as positioning nodes in turn, summarize the software feature nodes that are related to the positioning nodes, and construct a candidate node set.
[0044] S32. Extract all software features from each candidate node and combine them to form the node feature sequence of the corresponding candidate node. Perform a matching judgment operation on the node feature sequence and the feature sequence to be tested, and select candidate nodes whose software features in the node feature sequence all exist in the feature sequence to be tested as valid nodes.
[0045] S33. Determine the node weight of each valid node based on the number of times the software features in each valid node co-occur in the structured test data.
[0046] S34. Using the weighted Jaccard algorithm, the intersection and union of the software features and the feature sequences to be tested in each effective node are determined. The similarity value of each effective node is calculated based on the intersection and union, and the weighted matching value of each effective node is calculated in combination with the node weight.
[0047] S35. Sort the weighted matching values and determine the valid node with the largest weighted matching value as the target node of the corresponding positioning node.
[0048] S36. Based on the relationships between nodes in the test knowledge graph, extract the test strategies associated with each target node, and arrange them in the order of the corresponding test indicators in the test indicator set to generate a test strategy sequence.
[0049] Optionally, S34 specifically includes:
[0050] S341. Extract the node feature sequence corresponding to each valid node, perform deduplication operation on the node feature sequence and the test feature sequence respectively, and convert the deduplicated node feature sequence and the test feature sequence into the corresponding feature set;
[0051] S342. Take the feature set of each effective node as the intersection feature set and the feature set of the feature sequence to be tested as the union feature set;
[0052] S343. Using the weighted Jaccard algorithm, a weighted similarity calculation is performed based on the intersection feature set, the union feature set, and the node weights of each valid node to obtain the weighted matching value corresponding to each valid node. Specifically, this includes:
[0053] Count the number of features in each intersection feature set and the union feature set respectively;
[0054] Divide the number of features in each intersection feature set by the number of features in the union feature set to obtain the similarity value of each valid node;
[0055] Each similarity value is multiplied by the node weight of the corresponding valid node to obtain the weighted matching value of the corresponding valid node.
[0056] Optionally, S4 specifically includes:
[0057] S41. Perform strategy parsing operation on the test strategy sequence, extract the execution condition parameters, load control parameters and runtime parameters in each test strategy, and construct the instruction parameter set of each test strategy;
[0058] S42. Based on the preset standard instruction template, perform instruction field embedding operation on each instruction parameter set to construct a structured test instruction unit, and arrange each test instruction unit in the order of the test strategy sequence to obtain the test instruction sequence.
[0059] S43. Load the test instruction sequence into the execution environment of the software under test, trigger each test instruction unit in sequence according to the order of the test instruction sequence, perform performance test operations on the software under test, and collect the corresponding performance index data to form a performance index sequence.
[0060] Optionally, S5 specifically includes:
[0061] S51. Normalize and transform each performance index in the performance index sequence according to a unified dimension, and construct a performance response sequence in chronological order.
[0062] S52. Perform digital signal processing on the performance response sequence, and use the Savitzky-Golay algorithm to perform local polynomial fitting on the performance response sequence to generate a smooth performance sequence.
[0063] S53. Perform a sliding window segmentation operation based on the smooth performance sequence, and extract multiple performance segment sequences by segmenting the smooth performance sequence according to the preset sliding window length.
[0064] S54. Perform feature extraction on each performance segment sequence to extract trend change parameters, peak amplitude parameters and stable interval parameters to form a set of performance features;
[0065] S55. Perform parameter mapping operation on the performance feature set, match each performance feature according to the index type in the test index set, and generate performance test parameters corresponding to the target performance data.
[0066] S56. Arrange the performance test parameters in a preset order to form a test parameter sequence.
[0067] The beneficial effects of this invention are:
[0068] First, this invention establishes the relationship between software features, test metrics, and test strategies by constructing a test knowledge graph. It then automatically matches test strategies based on the software features and test metric set of the software under test, reducing the subjective influence of manual test scheme configuration and improving the accuracy and consistency of test strategy selection.
[0069] Secondly, this invention uses the weighted Jaccard algorithm to match candidate nodes with the feature sequence to be tested, and combines node weights to filter target nodes, so that the testing strategy can better meet the performance testing requirements of the software under test; at the same time, digital signal processing is used to smooth the performance index sequence and extract features, reducing the impact of data noise on the performance analysis results.
[0070] Finally, this invention performs performance evaluation on the test parameter sequence based on the target performance data, forming a complete closed loop from strategy generation, instruction execution, data processing to performance evaluation, which improves the automation level of performance testing, evaluation stability and bottleneck identification accuracy. Attached Figure Description
[0071] The accompanying drawings are provided to further illustrate the invention and form part of the specification. They are used in conjunction with embodiments of the invention to explain the invention and do not constitute a limitation thereof. In the drawings:
[0072] Figure 1 This is a flowchart of a software performance testing method based on big data analysis proposed in this invention;
[0073] Figure 2 This is a flowchart illustrating the generation of the test feature sequence in a software performance testing method based on big data analysis proposed in this invention.
[0074] Figure 3 This is a flowchart illustrating the construction of a test knowledge graph for a software performance testing method based on big data analysis proposed in this invention. Detailed Implementation
[0075] The present invention will now be described in further detail with reference to the accompanying drawings. These drawings are simplified schematic diagrams, illustrating only the basic structure of the invention, and therefore only show the components relevant to the invention.
[0076] refer to Figures 1-3 A software performance testing method based on big data analysis includes the following steps:
[0077] S1. Collect software test data from different sources and perform structured processing. Based on the processing results, extract software features, test indicators, and test strategies as nodes, and establish the relationship between nodes based on preset association rules to construct a test knowledge graph.
[0078] S2. Collect software information data, test index set and target performance data of the software to be tested, perform structured processing on the software information data to form a software attribute sequence, perform encoding mapping operation on the software attribute sequence through an autoencoder, extract low-dimensional feature representation, and form the feature sequence to be tested;
[0079] S3. Based on the test index set, perform candidate node retrieval operations in the test knowledge graph, use the weighted Jaccard algorithm to calculate the weighted matching value between each candidate node and the feature sequence to be tested, filter the target node based on the weighted matching value, extract the test strategy associated with the target node, and generate a test strategy sequence.
[0080] S4. Based on the preset standard instruction template, the test strategy sequence is converted into a test instruction sequence. The performance test operation is performed on the software to be tested according to the test instruction sequence to obtain the performance indicator sequence.
[0081] S5. Perform digital signal processing on the performance index sequence, and use the Savitzky-Golay algorithm to extract performance test parameters from the performance index sequence to form a test parameter sequence.
[0082] S6. Perform a performance evaluation operation on the test parameter sequence based on the target performance data to generate performance test results.
[0083] In this embodiment, software test data represents a set of data used to reflect the software's running status and testing behavior; software features are used to describe the software's functional attributes and operating characteristics; test index set represents a set of evaluation parameter types used to measure software performance; test strategy represents a set of rules used to guide the execution of performance tests; and preset association rules represent a set of constraints used to establish relationships between nodes.
[0084] In this embodiment, S1 specifically includes:
[0085] S11. Collect software test data from different sources and perform field alignment, missing value filling and numerical normalization operations to obtain structured test data containing multiple data units;
[0086] S12. Perform feature parsing on the structured test data to extract software running attributes, resource usage attributes, and call behavior attributes to form software features. Also extract performance measurement parameters to form test indicators, and extract test execution conditions and load control rules to form test strategies.
[0087] S13. Perform vectorized coding operations on software features, test metrics and test strategies, and construct a node set based on the coding results;
[0088] S14. Based on the preset association rules, perform association matching operation on the node set, use the Apriori algorithm to perform co-occurrence relationship mining operation on software feature nodes, test indicator nodes and test strategy nodes, calculate the support and confidence between nodes, and establish the association relationship between nodes based on the support and confidence.
[0089] S15. Perform structural organization operations on the relationships and node sets to construct a test knowledge graph.
[0090] In this embodiment, S14 specifically includes:
[0091] S141. Extract software features, test metrics and test strategies that appear simultaneously in the same data unit from the structured test data, and construct the corresponding nodes in the node set into a node combination based on the extraction results.
[0092] S142. Traverse the structured test data, count the number of times each node combination co-occurs in the structured test data, and calculate the support of each node combination based on the number of co-occurrences and the total number of data units.
[0093] S143. Node combinations with support greater than a preset support threshold are identified as frequent node combinations.
[0094] S144. Calculate the conditional probability of frequent node combinations:
[0095] For each frequent node combination, the number of times that frequent node combination co-occurs in the structured test data is counted as the strategy co-occurrence count;
[0096] The number of times that software features and test metrics in this frequent node combination co-occur in the structured test data is counted as the conditional co-occurrence count;
[0097] Divide the number of times the strategy co-occurs by the number of times the condition co-occurs to obtain the software features and test metrics for the frequent node combinations, and the confidence level of the corresponding test strategy.
[0098] S145. Establish association relationships between nodes for frequent node combinations with confidence levels greater than a preset confidence threshold.
[0099] In this embodiment, S2 specifically includes:
[0100] S21. Collect software information data, test index set and target performance data of the software to be tested, and perform field normalization and data format unification operations on the software information data to form structured information data;
[0101] S22. Perform attribute parsing operation on the structured information data, extract configuration parameters, interface attributes and running constraint attributes, and arrange them in a preset order to construct a software attribute sequence;
[0102] S23. Perform numerical standardization and feature encoding operations on the software attribute sequence to convert different types of attributes into a unified representation form to obtain the encoded attribute sequence.
[0103] S24. Input the encoded attribute sequence into the autoencoder and perform a compression mapping operation to extract low-dimensional feature representations;
[0104] S25. Perform sequence reconstruction and feature arrangement operations on the low-dimensional feature representation, arrange them according to the preset feature dimensions, and generate the feature sequence to be tested.
[0105] In this embodiment, S24 specifically includes:
[0106] S241. Input the encoded attribute sequence into the encoding layer of the autoencoder, perform a layer-by-layer mapping operation on the encoded attribute sequence, and generate an attribute implicit representation;
[0107] S242. Perform dimensionality compression on the implicit representation of attributes and input the compression result into the bottleneck layer of the autoencoder to extract low-dimensional feature representations;
[0108] S243. Input the low-dimensional feature representation into the decoding layer of the autoencoder and perform attribute reconstruction operation to generate a reconstructed attribute sequence.
[0109] S245. Calculate the reconstruction difference between the reconstructed attribute sequence and the encoded attribute sequence, and adjust the mapping parameters of the autoencoder according to the reconstruction difference;
[0110] S246. Iteratively execute layer-by-layer mapping, dimension compression, attribute reconstruction, reconstruction difference calculation and mapping parameter adjustment operations until the reconstruction difference meets the preset convergence condition, and output the low-dimensional feature representation extracted in the current round.
[0111] In this embodiment, S3 specifically includes:
[0112] S31. Perform node retrieval operation in the test knowledge graph according to the test indicator set, extract the test indicator nodes corresponding to each test indicator in the test indicator set as positioning nodes in turn, summarize the software feature nodes that are related to the positioning nodes, and construct a candidate node set.
[0113] S32. Extract all software features from each candidate node and combine them to form the node feature sequence of the corresponding candidate node. Perform a matching judgment operation on the node feature sequence and the feature sequence to be tested, and select candidate nodes whose software features in the node feature sequence all exist in the feature sequence to be tested as valid nodes.
[0114] S33. Determine the node weight of each valid node based on the number of times the software features in each valid node co-occur in the structured test data.
[0115] S34. Using the weighted Jaccard algorithm, the intersection and union of the software features and the feature sequences to be tested in each effective node are determined. The similarity value of each effective node is calculated based on the intersection and union, and the weighted matching value of each effective node is calculated in combination with the node weight.
[0116] S35. Sort the weighted matching values and determine the valid node with the largest weighted matching value as the target node of the corresponding positioning node.
[0117] S36. Based on the relationships between nodes in the test knowledge graph, extract the test strategies associated with each target node, and arrange them in the order of the corresponding test indicators in the test indicator set to generate a test strategy sequence.
[0118] In this embodiment, S34 specifically includes:
[0119] S341. Extract the node feature sequence corresponding to each valid node, perform deduplication operation on the node feature sequence and the test feature sequence respectively, and convert the deduplicated node feature sequence and the test feature sequence into the corresponding feature set;
[0120] S342. Take the feature set of each effective node as the intersection feature set and the feature set of the feature sequence to be tested as the union feature set;
[0121] S343. Using the weighted Jaccard algorithm, a weighted similarity calculation is performed based on the intersection feature set, the union feature set, and the node weights of each valid node to obtain the weighted matching value corresponding to each valid node. Specifically, this includes:
[0122] Count the number of features in each intersection feature set and the union feature set respectively;
[0123] Divide the number of features in each intersection feature set by the number of features in the union feature set to obtain the similarity value of each valid node;
[0124] Each similarity value is multiplied by the node weight of the corresponding valid node to obtain the weighted matching value of the corresponding valid node.
[0125] In this embodiment, S4 specifically includes:
[0126] S41. Perform strategy parsing operation on the test strategy sequence, extract the execution condition parameters, load control parameters and runtime parameters in each test strategy, and construct the instruction parameter set of each test strategy;
[0127] S42. Based on the preset standard instruction template, perform instruction field embedding operation on each instruction parameter set to construct a structured test instruction unit, and arrange each test instruction unit in the order of the test strategy sequence to obtain the test instruction sequence.
[0128] S43. Load the test instruction sequence into the execution environment of the software under test, trigger each test instruction unit in sequence according to the order of the test instruction sequence, perform performance test operations on the software under test, and collect the corresponding performance index data to form a performance index sequence.
[0129] In this embodiment, S42 specifically includes:
[0130] S421. Read the set of instruction parameters corresponding to each test strategy, and write the execution condition parameters, load control parameters and runtime parameters into the corresponding instruction fields in the preset standard instruction template to form the initial test instruction.
[0131] S422. Perform field integrity verification on each instruction field in the initial test instruction, delete instruction fields with missing fields, and perform format unification on the retained instruction fields.
[0132] S423. Generate test instruction units based on the standardized format results, and configure corresponding execution identifiers for each test instruction unit;
[0133] S424. Perform sequential arrangement operations on each test instruction unit according to the order in the test strategy sequence to generate a test instruction sequence.
[0134] In this embodiment, S5 specifically includes:
[0135] S51. Normalize and transform each performance index in the performance index sequence according to a unified dimension, and construct a performance response sequence in chronological order.
[0136] S52. Perform digital signal processing on the performance response sequence, and use the Savitzky-Golay algorithm to perform local polynomial fitting on the performance response sequence to generate a smooth performance sequence.
[0137] S53. Perform a sliding window segmentation operation based on the smooth performance sequence, and extract multiple performance segment sequences by segmenting the smooth performance sequence according to the preset sliding window length.
[0138] S54. Perform feature extraction on each performance segment sequence to extract trend change parameters, peak amplitude parameters and stable interval parameters to form a set of performance features;
[0139] S55. Perform parameter mapping operation on the performance feature set, match each performance feature according to the index type in the test index set, and generate performance test parameters corresponding to the target performance data.
[0140] S56. Arrange the performance test parameters in a preset order to form a test parameter sequence.
[0141] In this embodiment, S52 specifically includes:
[0142] S521. Perform sliding truncation processing on the performance response sequence according to the preset window length to obtain multiple fitted data sequences, and assign a sequence number value to the data items in each fitted data sequence.
[0143] S522. Based on the preset polynomial order, perform power-incrementing calculations on the index values in each fitted data sequence to construct a fitting calculation matrix composed of the power results.
[0144] S523. Perform multiplication operations on each column of the fitting calculation matrix with the corresponding fitting data sequence, and sum the results of the multiplication operations to obtain the set of values on the right side of the fitting equation.
[0145] S524. Perform pairwise multiplication on each column of the fitting calculation matrix and sum the results of the multiplication to obtain the set of coefficients on the left side of the fitting equation.
[0146] S525. Perform division elimination, multiplication back substitution, and addition / subtraction correction operations based on the left-hand coefficient set and the right-hand numerical set to obtain the local polynomial coefficient set;
[0147] S526. Perform multiplication and summation calculations on the index value corresponding to each data item and the local polynomial coefficient set to obtain the fitted value of each data item.
[0148] S527. According to the position order of each fitted data sequence in the performance response sequence, all fitted values are spliced together to generate a smooth performance sequence.
[0149] In this embodiment, S6 specifically includes:
[0150] S61. Read the target performance data and perform corresponding matching operations on the target performance data according to the parameter arrangement order in the test parameter sequence to generate the target parameter sequence;
[0151] S62. Perform difference calculation between each test parameter in the test parameter sequence and the corresponding target parameter in the target parameter sequence to obtain the parameter deviation sequence;
[0152] S63. Perform absolute value transformation and normalization on the parameter deviation sequence to generate the standard deviation sequence;
[0153] S64. Perform performance compliance judgment on each test parameter according to the standard deviation sequence, and generate parameter judgment results;
[0154] S65. Summarize the judgment results of each parameter, extract the parameters that did not meet the standards and their corresponding deviation values, and generate the performance test results.
[0155] Example 1: To verify the feasibility of this invention in practice, it was applied to a software performance testing scenario of a complex business system. This system contains multiple functional modules and involves frequent interface calls, large fluctuations in concurrent requests, and significant changes in resource consumption. In actual operation, it faces challenges such as difficulty in locating performance bottlenecks, reliance on manual experience for testing strategies, and significant fluctuations in test results. In traditional performance testing methods, testers select test metrics and manually configure test strategies based on experience, leading to inconsistent strategies across multiple tests and significant differences in test results, making it difficult to accurately determine the system's performance status.
[0156] In this scenario, historical software testing data is first collected, including interface response data, resource usage data, call behavior data, and corresponding test strategy data. This data is then structured to extract software features, test metrics, and test strategies. A test knowledge graph is constructed using association rule mining methods, establishing stable relationships between software features, test metrics, and test strategies. Before executing the test, software information data, test metric sets, and target performance data of the software under test are collected. The software information data is structured to extract software attribute sequences. An autoencoder is used to perform encoding and mapping operations on these software attribute sequences to obtain the test feature sequences.
[0157] Subsequently, corresponding nodes are retrieved from the test knowledge graph based on the test metric set. Target nodes are then selected based on the weighted matching relationship between the feature sequence to be tested and the candidate nodes. Test strategies associated with the target nodes are extracted from the test knowledge graph to form a test strategy sequence. Based on this, the test strategy sequence is converted into a test instruction sequence and loaded into the runtime environment of the software under test for performance testing. Performance metrics such as response time, throughput, resource utilization, and error rate are collected in real time to form a performance metric sequence.
[0158] In the performance data processing stage, digital signal processing is performed on the performance index sequence. The Savitzky-Golay algorithm is used to smooth the response time series. Simultaneously, the sliding window method is used to extract performance change trends, peak fluctuations, and stable interval features to form a test parameter sequence. Finally, the test parameter sequence is compared and analyzed with the target performance data to complete the performance evaluation and output the performance test results.
[0159] To verify the effectiveness of this invention, the method of this invention was compared with the traditional manual configuration test strategy method, and the following data was obtained:
[0160] Table 1 Comparative Analysis of Software Performance Testing Methods
[0161]
[0162] Analysis of the data in Table 1 shows that, compared to traditional methods, the method of this invention exhibits significant advantages in several key performance indicators. The average response time is reduced by approximately 6% to 10% overall, with a more pronounced decrease in peak response time, indicating that this invention effectively alleviates performance fluctuations under high load conditions. The significantly reduced response time fluctuation indicates that the performance data is smoother and more stable after digital signal processing, which is beneficial for subsequent performance analysis. Regarding resource consumption, CPU and memory usage are slightly reduced, indicating a more reasonable testing strategy and avoiding unnecessary load consumption of system resources. The overall error rate decreases by approximately 1%, reflecting a more stable testing process.
[0163] Furthermore, the stability of performance evaluation has been improved from 75% to 81% for traditional methods to 92% to 95%, indicating that the method of the present invention can maintain high consistency in multiple rounds of testing and reduce the impact of test result fluctuations on performance judgment.
[0164] In summary, this invention effectively improves the accuracy, stability, and automation level of software performance testing by driving test strategy generation through test knowledge graphs and combining weighted matching and digital signal processing, thus verifying the feasibility and superiority of the method in practical applications.
[0165] The above description is only a preferred embodiment of the present invention, but the scope of protection of the present invention is not limited thereto. Any equivalent substitutions or modifications made by those skilled in the art within the scope of the technology disclosed in the present invention, based on the technical solution and inventive concept of the present invention, should be covered within the scope of protection of the present invention.
Claims
1. A software performance testing method based on big data analysis, characterized in that, Includes the following steps: S1. Collect software test data from different sources and perform structured processing. Based on the processing results, extract software features, test indicators, and test strategies as nodes, and establish the relationship between nodes based on preset association rules to construct a test knowledge graph. S2. Collect software information data, test index set and target performance data of the software to be tested, perform structured processing on the software information data to form a software attribute sequence, perform encoding mapping operation on the software attribute sequence through an autoencoder, extract low-dimensional feature representation, and form the feature sequence to be tested; S3. Based on the test index set, perform candidate node retrieval operations in the test knowledge graph, use the weighted Jaccard algorithm to calculate the weighted matching value between each candidate node and the feature sequence to be tested, filter the target node based on the weighted matching value, extract the test strategy associated with the target node, and generate a test strategy sequence. S4. Based on the preset standard instruction template, the test strategy sequence is converted into a test instruction sequence. The performance test operation is performed on the software to be tested according to the test instruction sequence to obtain the performance indicator sequence. S5. Perform digital signal processing on the performance index sequence, and use the Savitzky-Golay algorithm to extract performance test parameters from the performance index sequence to form a test parameter sequence. S6. Perform a performance evaluation operation on the test parameter sequence based on the target performance data to generate performance test results.
2. The software performance testing method based on big data analysis according to claim 1, characterized in that, The software test data represents a set of data used to reflect the software's operating status and testing behavior. The software features are used to describe the software's functional attributes and operating characteristics. The test index set represents a set of evaluation parameter types used to measure software performance. The test strategy represents a set of rules used to guide the execution of performance tests. The preset association rules represent a set of constraints used to establish relationships between nodes.
3. The software performance testing method based on big data analysis according to claim 1, characterized in that, S1 specifically includes: S11. Collect software test data from different sources and perform field alignment, missing value filling and numerical normalization operations to obtain structured test data containing multiple data units; S12. Perform feature parsing on the structured test data to extract software running attributes, resource usage attributes, and call behavior attributes to form software features. Also extract performance measurement parameters to form test indicators, and extract test execution conditions and load control rules to form test strategies. S13. Perform vectorized coding operations on software features, test metrics and test strategies, and construct a node set based on the coding results; S14. Based on the preset association rules, perform association matching operations on the node set, use the Apriori algorithm to perform co-occurrence relationship mining operations on software feature nodes, test indicator nodes and test strategy nodes, calculate the support and confidence between nodes, and establish the association relationship between nodes based on the support and confidence. S15. Perform structural organization operations on the relationships and node sets to construct a test knowledge graph.
4. The software performance testing method based on big data analysis according to claim 3, characterized in that, S14 specifically includes: S141. Extract software features, test metrics and test strategies that appear simultaneously in the same data unit from the structured test data, and construct the corresponding nodes in the node set into a node combination based on the extraction results. S142. Traverse the structured test data, count the number of times each node combination co-occurs in the structured test data, and calculate the support of each node combination based on the number of co-occurrences and the total number of data units. S143. Node combinations with support greater than a preset support threshold are identified as frequent node combinations. S144. Calculate the conditional probability of frequent node combinations: For each frequent node combination, the number of times that frequent node combination co-occurs in the structured test data is counted as the strategy co-occurrence count; The number of times that software features and test metrics in this frequent node combination co-occur in the structured test data is counted as the conditional co-occurrence count; Divide the number of times the strategy co-occurs by the number of times the condition co-occurs to obtain the software features and test metrics for the frequent node combinations, and the confidence level of the corresponding test strategy. S145. Establish association relationships between nodes for frequent node combinations with confidence levels greater than a preset confidence threshold.
5. The software performance testing method based on big data analysis according to claim 1, characterized in that, S2 specifically includes: S21. Collect software information data, test index set and target performance data of the software to be tested, and perform field normalization and data format unification operations on the software information data to form structured information data; S22. Perform attribute parsing operation on the structured information data, extract configuration parameters, interface attributes and running constraint attributes, and arrange them in a preset order to construct a software attribute sequence; S23. Perform numerical standardization and feature encoding operations on the software attribute sequence to convert different types of attributes into a unified representation form to obtain the encoded attribute sequence. S24. Input the encoded attribute sequence into the autoencoder and perform a compression mapping operation to extract low-dimensional feature representations; S25. Perform sequence reconstruction and feature arrangement operations on the low-dimensional feature representation, arrange them according to the preset feature dimensions, and generate the feature sequence to be tested.
6. The software performance testing method based on big data analysis according to claim 5, characterized in that, S24 specifically includes: S241. Input the encoded attribute sequence into the encoding layer of the autoencoder, perform a layer-by-layer mapping operation on the encoded attribute sequence, and generate an attribute implicit representation; S242. Perform dimensionality compression on the implicit representation of attributes and input the compression result into the bottleneck layer of the autoencoder to extract low-dimensional feature representations; S243. Input the low-dimensional feature representation into the decoding layer of the autoencoder and perform attribute reconstruction operation to generate a reconstructed attribute sequence. S245. Calculate the reconstruction difference between the reconstructed attribute sequence and the encoded attribute sequence, and adjust the mapping parameters of the autoencoder according to the reconstruction difference; S246. Iteratively execute layer-by-layer mapping, dimension compression, attribute reconstruction, reconstruction difference calculation and mapping parameter adjustment operations until the reconstruction difference meets the preset convergence condition, and output the low-dimensional feature representation extracted in the current round.
7. The software performance testing method based on big data analysis according to claim 1, characterized in that, S3 specifically includes: S31. Perform node retrieval operation in the test knowledge graph according to the test indicator set, extract the test indicator nodes corresponding to each test indicator in the test indicator set as positioning nodes in turn, summarize the software feature nodes that are related to the positioning nodes, and construct a candidate node set. S32. Extract all software features from each candidate node and combine them to form the node feature sequence of the corresponding candidate node. Perform a matching judgment operation on the node feature sequence and the feature sequence to be tested, and select candidate nodes whose software features in the node feature sequence all exist in the feature sequence to be tested as valid nodes. S33. Determine the node weight of each valid node based on the number of times the software features in each valid node co-occur in the structured test data. S34. Using the weighted Jaccard algorithm, the intersection and union of the software features and the feature sequences to be tested in each effective node are determined. The similarity value of each effective node is calculated based on the intersection and union, and the weighted matching value of each effective node is calculated in combination with the node weight. S35. Sort the weighted matching values and determine the valid node with the largest weighted matching value as the target node of the corresponding positioning node. S36. Based on the relationships between nodes in the test knowledge graph, extract the test strategies associated with each target node, and arrange them in the order of the corresponding test indicators in the test indicator set to generate a test strategy sequence.
8. The software performance testing method based on big data analysis according to claim 7, characterized in that, S34 specifically includes: S341. Extract the node feature sequence corresponding to each valid node, perform deduplication operation on the node feature sequence and the test feature sequence respectively, and convert the deduplicated node feature sequence and the test feature sequence into the corresponding feature set; S342. Take the feature set of each effective node as the intersection feature set and the feature set of the feature sequence to be tested as the union feature set; S343. Using the weighted Jaccard algorithm, a weighted similarity calculation is performed based on the intersection feature set, the union feature set, and the node weights of each valid node to obtain the weighted matching value corresponding to each valid node. Specifically, this includes: Count the number of features in each intersection feature set and the union feature set respectively; Divide the number of features in each intersection feature set by the number of features in the union feature set to obtain the similarity value of each valid node; Each similarity value is multiplied by the node weight of the corresponding valid node to obtain the weighted matching value of the corresponding valid node.
9. The software performance testing method based on big data analysis according to claim 1, characterized in that, S4 specifically includes: S41. Perform strategy parsing operation on the test strategy sequence, extract the execution condition parameters, load control parameters and runtime parameters in each test strategy, and construct the instruction parameter set of each test strategy; S42. Based on the preset standard instruction template, perform instruction field embedding operation on each instruction parameter set to construct a structured test instruction unit, and arrange each test instruction unit in the order of the test strategy sequence to obtain the test instruction sequence. S43. Load the test instruction sequence into the execution environment of the software under test, trigger each test instruction unit in sequence according to the order of the test instruction sequence, perform performance test operations on the software under test, and collect the corresponding performance index data to form a performance index sequence.
10. The software performance testing method based on big data analysis according to claim 1, characterized in that, S5 specifically includes: S51. Normalize and transform each performance index in the performance index sequence according to a unified dimension, and construct a performance response sequence in chronological order. S52. Perform digital signal processing on the performance response sequence, and use the Savitzky-Golay algorithm to perform local polynomial fitting on the performance response sequence to generate a smooth performance sequence. S53. Perform a sliding window segmentation operation based on the smooth performance sequence, and extract multiple performance segment sequences by segmenting the smooth performance sequence according to the preset sliding window length. S54. Perform feature extraction on each performance segment sequence to extract trend change parameters, peak amplitude parameters and stable interval parameters to form a set of performance features; S55. Perform parameter mapping operation on the performance feature set, match each performance feature according to the index type in the test index set, and generate performance test parameters corresponding to the target performance data. S56. Arrange the performance test parameters in a preset order to form a test parameter sequence.