SAAS platform software test case maintenance and automatic recommendation platform based on supervised learning
By using a supervised learning model on the SAAS platform to automatically recommend and maintain software test cases, the problem of inefficiency of traditional methods is solved, efficient and automatic test case maintenance and recommendation is achieved, and software quality and efficiency are improved.
Patent Information
- Application Number
- CN202411319090.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-21
- Publication Date
- 2025-01-21
AI Technical Summary
Traditional software test case maintenance methods are inefficient and difficult to track software changes, resulting in the inability to update test cases in time and affecting the quality of the software.
The SAAS platform software test case maintenance and automatic recommendation platform based on supervised learning is used to learn the execution history of test cases through the supervised learning model, predict the validity and priority of test cases, and realize automatic recommendation and maintenance of test cases based on this.
It improves the quality and efficiency of SAAS platform software test cases, automatically adapts to application changes, reduces the burden of manual maintenance, and facilitates users to monitor and participate in the test case recommendation and maintenance process through a visual interface.
Smart Images

Figure CN119336601A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of data processing, and in particular to a SAAS platform software test case maintenance and automatic recommendation platform based on supervised learning. Background Art
[0002] In the process of software development, as the software system evolves and changes continuously, test case maintenance becomes a key task. The goal of test case maintenance is to ensure that the existing test cases can correctly reflect the functions of the software system and adapt to the changes of the software in a timely manner. This involves updating, adding, deleting test cases, and ensuring the coverage of test cases.
[0003] The software system of SAAS platform is becoming increasingly complex and the requirements change frequently. Therefore, software testing has become a key link to ensure the quality of the system. The traditional software test case maintenance method is inefficient and difficult to track changes. Therefore, a SAAS platform software test case maintenance and automatic recommendation platform based on supervised learning is proposed. Summary of the invention
[0004] In view of this, the embodiments of the present invention hope to provide a SAAS platform software test case maintenance and automatic recommendation platform based on supervised learning to solve or alleviate the technical problems existing in the prior art and at least provide a beneficial option.
[0005] The technical solution of the embodiment of the present invention is implemented as follows: A SAAS platform software test case maintenance and automatic recommendation platform based on supervised learning includes the following steps:
[0006] S1. Supervised learning model: A supervised learning algorithm is used to learn the execution history of SAAS platform test cases to build a model to predict the effectiveness and priority of test cases;
[0007] S2. Intelligent recommendation system: Based on the supervised learning model, the system can automatically recommend software test cases. The system can intelligently recommend new, modified or deleted test cases based on application changes, defect reports and user feedback to keep the test suite optimized.
[0008] S3. Automatic maintenance mechanism: Implement an automatic test case maintenance mechanism to automatically update and adjust test cases by monitoring application changes and user feedback to ensure the real-time effectiveness of the test suite;
[0009] S4. Visual interface: Provide a user-friendly visual interface that enables users to monitor the test case recommendation and maintenance process, manually adjust the recommendation results and provide feedback;
[0010] S5. Version control integration: Integrate the version control system to achieve seamless integration with the development process, timely perceive code changes, and ensure timely updates of test cases.
[0011] In some embodiments, in S1, the specific steps of learning the model are as follows:
[0012] S1-1. Data collection and preparation: Collect historical data of software test cases, and prepare relevant test documents and requirement specifications to better understand the functions and features of the software;
[0013] S1-2. Data cleaning and labeling: Clean and label the collected data to ensure data quality and consistency;
[0014] S1-3. Model selection and training: Select an appropriate supervised learning algorithm to build a model for test case maintenance and automatic recommendation, and train the model using the cleaned and annotated dataset;
[0015] S1-4. Feature Engineering: Extract and engineer the features of test cases so that the model can better understand and predict the relevance of test cases;
[0016] S1-5. Model evaluation and tuning: Use cross-validation and other techniques to evaluate the model to ensure that its performance meets the requirements. Tune the model based on the evaluation results, which may require adjusting model parameters or selecting different feature engineering methods;
[0017] S1-6, Integration into the platform: Integrate the trained model into the test case maintenance and automatic recommendation platform, so that it can recommend suitable test cases in real time or regularly. Ensure that the platform is well integrated with other testing tools and processes;
[0018] S1-7, Automated test case maintenance: Use the results recommended by the model to automatically update the test cases to ensure that the test case library keeps pace with software changes;
[0019] S1-8, Iteration and optimization: Regularly monitor and evaluate the performance of the model, and iterate and optimize according to actual usage. It may be necessary to retrain the model, add new features, or improve the algorithm;
[0020] S1-9, Deployment and Monitoring: Deploy the test case maintenance and automatic recommendation platform to the production environment and establish a monitoring mechanism to ensure the stability and performance of the platform.
[0021] In some embodiments, in S1-1, the historical data includes executed test cases, test results, and defect reports.
[0022] In some embodiments, in S1 - 2 , the execution results of the test cases and the functional or characteristic information related thereto are annotated so that the supervised learning algorithm can correctly learn and predict.
[0023] In some embodiments, in said S1-3, the learning algorithm includes a decision tree, a random forest, a support vector machine and deep learning.
[0024] In some embodiments, in S1-4, the features include text features, functional characteristics, and feature engineering in terms of execution history.
[0025] In some embodiments, in S1-7, the test cases include creating new test cases, updating old test cases, or deleting test cases that are no longer needed.
[0026] The embodiment of the present invention has the following advantages due to the adoption of the above technical solution:
[0027] The present invention improves the quality and efficiency of SAAS platform software test cases, automatically adapts to changes in application programs, reduces the workload of manual maintenance, and uses a visual interface to facilitate users to monitor and participate in the recommendation and maintenance process of test cases.
[0028] The above summary is for illustrative purposes only and is not intended to be limiting in any way. In addition to the illustrative aspects, embodiments and features described above, further aspects, embodiments and features of the present invention will be readily apparent by reference to the accompanying drawings and the following detailed description. BRIEF DESCRIPTION OF THE DRAWINGS
[0029] In order to more clearly illustrate the embodiments of the present application or the technical solutions in the prior art, the drawings required for use in the embodiments or technical descriptions will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.
[0030] Figure 1 It is a flow chart of the present invention. DETAILED DESCRIPTION
[0031] In the following, only some exemplary embodiments are briefly described. As those skilled in the art will appreciate, the described embodiments may be modified in various ways without departing from the spirit or scope of the present invention. Therefore, the drawings and descriptions are considered to be exemplary and non-restrictive in nature.
[0032] It should be noted that the terms "first", "second", "symmetrical", "array", etc. are only used to distinguish between description and position description purposes, and cannot be understood as indicating or implying relative importance or implicitly indicating the number of the indicated technical features. Therefore, the definition of "first", "symmetrical", etc. can explicitly or implicitly include one or more of these features; similarly, when the quantity of certain features is not limited in the form of words such as "two" or "three", it should be noted that this feature also explicitly or implicitly includes one or more feature quantities;
[0033] In the present invention, unless otherwise clearly specified and limited, the terms such as "installation", "connection", "fixation" and the like should be understood in a broad sense; for example, it can be a fixed connection, a detachable connection, or an integral molding; it can be a mechanical connection, a direct connection, welding, or an indirect connection through an intermediate medium, or it can be the internal connection of two elements or the interaction relationship between two elements. For ordinary technicians in this field, the specific meanings of the above terms in the present invention can be understood based on the description and drawings combined with specific circumstances.
[0034] The embodiments of the present invention are described in detail below with reference to the accompanying drawings.
[0035] like Figure 1 As shown, the embodiment of the present invention provides a SAAS platform software test case maintenance and automatic recommendation platform based on supervised learning, including the following steps:
[0036] S1. Supervised learning model: A supervised learning algorithm is used to learn the execution history of SAAS platform test cases to build a model to predict the effectiveness and priority of test cases;
[0037] S2. Intelligent recommendation system: Based on the supervised learning model, the system can automatically recommend software test cases. The system can intelligently recommend new, modified or deleted test cases based on application changes, defect reports and user feedback to keep the test suite optimized.
[0038] S3. Automatic maintenance mechanism: Implement an automatic test case maintenance mechanism to automatically update and adjust test cases by monitoring application changes and user feedback to ensure the real-time effectiveness of the test suite;
[0039] S4. Visual interface: Provide a user-friendly visual interface that enables users to monitor the test case recommendation and maintenance process, manually adjust the recommendation results and provide feedback;
[0040] S5. Version control integration: Integrate the version control system to achieve seamless integration with the development process, timely perceive code changes, and ensure timely updates of test cases.
[0041] In this embodiment, specifically, in S1, the specific steps of learning the model are as follows:
[0042] S1-1. Data collection and preparation: Collect historical data of software test cases, and prepare relevant test documents and requirement specifications to better understand the functions and features of the software;
[0043] S1-2. Data cleaning and labeling: Clean and label the collected data to ensure data quality and consistency;
[0044] S1-3. Model selection and training: Select an appropriate supervised learning algorithm to build a model for test case maintenance and automatic recommendation, and train the model using the cleaned and annotated dataset;
[0045] S1-4. Feature Engineering: Extract and engineer the features of test cases so that the model can better understand and predict the relevance of test cases;
[0046] S1-5. Model evaluation and tuning: Use cross-validation and other techniques to evaluate the model to ensure that its performance meets the requirements. Tune the model based on the evaluation results, which may require adjusting model parameters or selecting different feature engineering methods;
[0047] S1-6, Integration into the platform: Integrate the trained model into the test case maintenance and automatic recommendation platform, so that it can recommend suitable test cases in real time or regularly. Ensure that the platform is well integrated with other testing tools and processes;
[0048] S1-7, Automated test case maintenance: Use the results recommended by the model to automatically update the test cases to ensure that the test case library keeps pace with software changes;
[0049] S1-8, Iteration and optimization: Regularly monitor and evaluate the performance of the model, and iterate and optimize according to actual usage. It may be necessary to retrain the model, add new features, or improve the algorithm;
[0050] S1-9, Deployment and Monitoring: Deploy the test case maintenance and automatic recommendation platform to the production environment and establish a monitoring mechanism to ensure the stability and performance of the platform.
[0051] In this embodiment, specifically, in S1-1, the historical data includes executed test cases, test results, and defect reports.
[0052] In this embodiment, specifically, in S1-2, the execution result of the test case and the function or characteristic information related thereto are annotated so that the supervised learning algorithm can correctly learn and predict.
[0053] In this embodiment, specifically, in S1-3, the learning algorithm includes decision tree, random forest, support vector machine and deep learning.
[0054] In this embodiment, specifically, in S1-4, the features include text features, functional characteristics, and feature engineering in terms of execution history.
[0055] In this embodiment, specifically, in S1-7, the test cases include creating new test cases, updating old test cases, or deleting test cases that are no longer needed.
[0056] In this embodiment, specifically, the decision tree is a commonly used data mining algorithm, which divides the data through a series of questions and finally obtains different categories or values. The learning process of the decision tree is the process of gradually constructing a decision tree starting from a data set;
[0057] The basic steps of decision tree construction are as follows:
[0058] Step 1: Determine the target variable: First, determine the target variable of the decision tree, that is, the output variable we want to predict based on the input features;
[0059] Step 2: Select features: Select a feature in the training set and use it to divide the data. The basis for selection is the predictive ability of the feature for the target variable. Commonly used evaluation indicators include Gini index, information entropy, etc.
[0060] Step 3: Divide the data: Divide the data into different subsets according to the selected features, and each subset corresponds to a value of the feature;
[0061] Step 4, recursively construct subtrees: For each subset, repeat steps 2 and 3 until the stopping condition is met. The stopping condition can be: all subsets contain only one type of data (ie, pure subsets), or a preset depth limit is reached, etc.
[0062] Step 5: Generate a decision tree: Connect the subtrees constructed in all steps to form the final decision tree.
[0063] In this embodiment, specifically, Random Forest is an ensemble learning method, which consists of multiple decision trees, and improves the accuracy of prediction by voting or averaging. Each decision tree is independently grown on a random subset of the data and a random subset of features.
[0064] The main features of random forests include:
[0065] Randomness: When building each tree, a subset of the dataset (bootstrap sample) and a subset of features are randomly selected. This helps reduce overfitting and improves the generalization ability of the model;
[0066] Growing multiple trees: Each decision tree is grown to a maximum depth, or until all nodes are pure. This ensures that the model can capture the complex structure in the data;
[0067] Ensemble: Random Forest integrates the results of all trees by voting (for classification problems) or averaging (for regression problems). This helps improve the accuracy and stability of predictions;
[0068] Noise resistance: Random forests are able to handle noisy data because individual trees may be affected by noise, but when the majority of trees reach a consensus, the noise can be ignored;
[0069] High Dimensional Data Handling: Random forests are able to handle high dimensional data because of the use of randomness in the selection of features, which helps in reducing the curse of dimensionality.
[0070] In the present embodiment, specifically, Support Vector Machine (SVM) is a generalized linear classifier that performs binary classification on data in a supervised learning manner. Its decision boundary is the maximum-margin hyperplane for solving the learning sample. SVM uses a hinge loss function to calculate empirical risk and adds a regularization term to the solution system to optimize structural risk. It is a classifier with sparsity and robustness. SVM can perform nonlinear classification through a kernel method and is one of the common kernel learning methods. It directly predicts the category of the sample, rather than just outputting the probability.
[0071] In the comparison with the perceptron, the SVM adds the constraint of maximizing the margin to improve the generalization ability and robustness of the model. SVM is actually developed on the basis of the perceptron and can be regarded as a special case of SVM without the margin constraint. Although the perceptron may be faster on small-scale data sets, SVM usually performs better when processing large-scale data sets.
[0072] In the solution process, SVM can use two sets of equations to deduce that the hyperplane is perpendicular to the weight vector (w) and close to the two data points Xm and Xn. Therefore, the formula for the interval L can be derived through mathematical formulas, and then the maximum interval Lmax, which is the value of the minimum weight w, can be obtained.
[0073] Support vector machines perform well in medium-sized data set classification tasks. Their effectiveness, flexibility, generalization ability, and robustness make them widely used in practical applications.
[0074] In this embodiment, specifically, deep learning is a branch of machine learning, which learns complex patterns of data by using a neural network with a multi-layer structure. A deep learning model usually includes an input layer, multiple hidden layers (also called intermediate layers), and an output layer;
[0075] Each layer is made up of many neurons, each of which is connected to multiple neurons in other layers. These connections form the weights of the network, which are adjusted through the training process so that the network can learn features and patterns from the data.
[0076] The main advantages of deep learning include:
[0077] Automatic feature extraction: Deep learning models can automatically extract high-level features from data, which reduces the need for manual feature engineering;
[0078] Generalization: After proper training, deep learning models usually have good generalization ability and can perform well on new data;
[0079] Processing complex data: Deep learning is particularly suitable for processing high-dimensional, unstructured data such as images, audio, and text;
[0080] Model diversity: Deep learning provides a large number of model architectures, such as convolutional neural networks (CNN) for image recognition, recurrent neural networks (RNN) for sequence data processing, and new architectures such as Transformer;
[0081] Some common applications of deep learning include:
[0082] Image recognition and processing: such as facial recognition, image classification, image segmentation, etc.;
[0083] Natural language processing: such as machine translation, text classification, sentiment analysis, etc.;
[0084] Speech recognition: such as speech-to-text, speech synthesis, etc.;
[0085] Recommendation system: such as personalized recommendations, advertising push, etc.
[0086] In this embodiment, specifically, the supervised learning algorithm adopts a support vector machine (SVM) model, and weights are assigned to test cases by analyzing historical test execution results and defect reports. The recommendation system intelligently generates new test cases based on these weights and information about application changes, and continuously updates the test suite through an automatic maintenance mechanism. Users can view the recommendation results, manually adjust test cases, and monitor the real-time status of test cases through the platform's visual interface.
[0087] The above is only a specific embodiment of the present invention, but the protection scope of the present invention is not limited thereto. Any person skilled in the art can easily think of various changes or substitutions within the technical scope disclosed by the present invention, which should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention should be based on the protection scope of the claims.
Claims
1. SAAS platform software test case maintenance and automatic recommendation platform based on supervised learning, characterized by: The following steps are involved: S1. Supervised learning model: A supervised learning algorithm is used to learn the execution history of SAAS platform test cases to build a model to predict the effectiveness and priority of test cases; S2. Intelligent recommendation system: Based on the supervised learning model, the system can automatically recommend software test cases. The system can intelligently recommend new, modified or deleted test cases based on application changes, defect reports and user feedback to keep the test suite optimized. S3. Automatic maintenance mechanism: Implement an automatic test case maintenance mechanism to automatically update and adjust test cases by monitoring application changes and user feedback to ensure the real-time effectiveness of the test suite; S4. Visual interface: Provide a user-friendly visual interface that enables users to monitor the test case recommendation and maintenance process, manually adjust the recommendation results and provide feedback; S5. Version control integration: Integrate the version control system to achieve seamless integration with the development process, timely perceive code changes, and ensure timely updates of test cases.
2. The SAAS platform software test case maintenance and automatic recommendation platform based on supervised learning according to claim 1, characterized in that: In S1, the specific steps of learning the model are as follows: S1-1. Data collection and preparation: Collect historical data of software test cases, and prepare relevant test documents and requirement specifications to better understand the functions and features of the software; S1-2. Data cleaning and labeling: Clean and label the collected data to ensure data quality and consistency; S1-3. Model selection and training: Select an appropriate supervised learning algorithm to build a model for test case maintenance and automatic recommendation, and train the model using the cleaned and annotated dataset; S1-4. Feature Engineering: Extract and engineer the features of test cases so that the model can better understand and predict the relevance of test cases; S1-5. Model evaluation and tuning: Use cross-validation and other techniques to evaluate the model to ensure that its performance meets the requirements. Tune the model based on the evaluation results, which may require adjusting model parameters or selecting different feature engineering methods; S1-6, Integration into the platform: Integrate the trained model into the test case maintenance and automatic recommendation platform, so that it can recommend suitable test cases in real time or regularly. Ensure that the platform is well integrated with other testing tools and processes; S1-7, Automated test case maintenance: Use the results recommended by the model to automatically update the test cases to ensure that the test case library keeps pace with software changes; S1-8, Iteration and optimization: Regularly monitor and evaluate the performance of the model, and iterate and optimize according to actual usage. It may be necessary to retrain the model, add new features, or improve the algorithm; S1-9, Deployment and Monitoring: Deploy the test case maintenance and automatic recommendation platform to the production environment and establish a monitoring mechanism to ensure the stability and performance of the platform.
3. The SAAS platform software test case maintenance and automatic recommendation platform based on supervised learning according to claim 2 is characterized in that: In S1-1, the historical data includes executed test cases, test results and defect reports.
4. The SAAS platform software test case maintenance and automatic recommendation platform based on supervised learning according to claim 2 is characterized in that: In S1-2, the execution results of the test cases and the related functional or characteristic information are annotated so that the supervised learning algorithm can learn and predict correctly.
5. The SAAS platform software test case maintenance and automatic recommendation platform based on supervised learning according to claim 2, characterized in that: In S1-3, the learning algorithms include decision tree, random forest, support vector machine and deep learning.
6. The SAAS platform software test case maintenance and automatic recommendation platform based on supervised learning according to claim 2 is characterized by: In S1-4, the features include text features, functional characteristics and feature engineering in terms of execution history.
7. The SAAS platform software test case maintenance and automatic recommendation platform based on supervised learning according to claim 2 is characterized by: In S1-7, the test cases include creating new test cases, updating old test cases, or deleting test cases that are no longer needed.