Automatic testing system for computer software
The automated testing system enhances software testing by classifying functions, writing key test cases, and predicting issues, ensuring high quality and efficient error detection in computer software testing.
Patent Information
- Application Number
- CN202411099693.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-12
- Publication Date
- 2024-12-10
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
Fully automated computer software testing systems often fail to detect errors effectively, leading to insufficient quality assurance during the testing process.
A computer software automated testing system that classifies software functions, writes key test cases for programmers and generates non-critical test cases, collects errors, and predicts potential issues using historical data and user feedback to enhance testing efficiency and quality.
Ensures high test quality and speed by prioritizing critical functions, random sampling for non-critical functions, and predicting potential problems, thereby reducing human error and resource misallocation.
Smart Images

Figure CN119105957A_ABST
Abstract
Description
Technical Field
[0001] The invention belongs to the technical field of automated testing, in particular to a computer software automated testing system. Background Art
[0002] Software testing is an important stage in the software life cycle and a key step in software quality assurance. The purpose of software testing is to verify whether the software system meets the requirements. In order to ensure that the developed computer software can run smoothly and meet the user's usage needs and experience, it is necessary to conduct computer software testing. In recent years, the software industry generally has the status quo of large-scale development, frequent updates and high testing pressure. Various software companies are actively researching and exploring new methods of computer software testing to ensure high efficiency and high quality of software testing.
[0003] Some current computer software automated testing systems are fully automated, but fully automated computer software automated testing systems may have insufficient error detection during the testing process.
[0004] Therefore, it is necessary to propose a computer software automated testing system. Summary of the invention
[0005] In order to solve the above problems, the purpose of the present invention is to propose a computer software automation testing system, in which software functions are classified through a judgment module, key test cases are written by programmers, non-critical test cases are generated by a control module, and all errors in the test are collected through a storage module for testers to retrieve, thereby ensuring the test speed while also ensuring the test quality.
[0006] In order to achieve the above-mentioned object, the technical solution of the present invention is as follows: a computer software automated testing system, comprising an acquisition module, an analysis module, a judgment module, a writing module, an execution module, a storage module, a display module and a control module, wherein the acquisition module, the analysis module, the judgment module, the writing module, the execution module, the storage module and the display module are mutually connected by signals;
[0007] The acquisition module is used to collect the historical test data and user requirements of the software;
[0008] The analysis module is used to conduct a comprehensive analysis of the collected software historical test data and user needs and obtain the analysis results;
[0009] A judgment module is used to judge the key functions and non-key functions of the software based on the analysis results of the analysis module and the historical test data of the software;
[0010] Writing module, used to write test cases for software based on key and non-key functions of the software;
[0011] The execution module is used to execute the test cases written by the writing module and obtain the test results;
[0012] The storage module is used to collect all errors encountered during the test, sort them according to the frequency of the errors, store them as storage information, and store the test results at the same time;
[0013] Display module, used for displaying test results and storage information;
[0014] A control module, used to control the operation of the acquisition module, the analysis module, the judgment module, the writing module, the execution module, the storage module and the display module;
[0015] The control module is also used to collect information transmitted by the acquisition module, analysis module, judgment module, writing module, execution module, storage module and display module.
[0016] Furthermore, the acquisition module includes an information reading unit and a user selection unit; the information reading unit is used to read the historical test data of the software; the user selection unit is used to collect the user's requirements for the software.
[0017] Furthermore, the user selection module collects the user's needs for the software by means of an online questionnaire survey, and the control module selects the application direction of the software according to the user's questionnaire survey results.
[0018] Furthermore, when the analysis module analyzes the historical test data of the software, it analyzes the key points of the historical testing of the software and predicts the problems that may occur in subsequent tests.
[0019] Furthermore, the writing module includes a manual writing unit and a non-critical function sampling unit; the manual writing unit is used to send the key function information of the software to the programmer's terminal, and the programmer writes the key test cases; the non-critical function sampling unit is used to sample the non-critical functions of the software, and the control module generates non-critical test cases based on the sampled non-critical functions.
[0020] Furthermore, when sampling non-critical functions of the software, the sampling method adopted is random sampling.
[0021] Furthermore, when sampling non-critical functions of the software, the control module will divide the non-critical functions that play a similar role in the software into a group, and after sampling, determine the importance of the sampled non-critical functions within their group based on historical test data; when the control module determines that the sampled function is an important function, the control module changes the test of this function to a comprehensive test.
[0022] Furthermore, when the execution module tests the software, it adopts a method of testing key functions first and non-key functions later.
[0023] Furthermore, the data stored in the storage module is deleted by the control module.
[0024] Furthermore, while the software is being updated, the programmer maintains and updates the critical test cases and non-critical test cases of the software through the control module.
[0025] The following principles and beneficial effects are achieved by adopting the above scheme:
[0026] Basic principle: The staff determines the application direction of the software through an online questionnaire survey and reads the historical test data of the software through the control module. After collecting the application direction of the software and the historical test data of the software, the staff understands the historical test focus of the software through the analysis module and predicts the problems that may occur in the software in subsequent tests. The judgment module divides the functions of the software into key functions and non-key functions based on the analysis results of the analysis module. The writing module writes test cases according to the key functions and non-key functions of the software, and sends the key function information of the software to the terminal of the programmer through the manual writing unit, and the programmer writes the key test cases; the writing module randomly samples the non-key functions of the software through the non-key function sampling unit, and the control module generates non-key test cases by itself. The control module judges the importance of the sampled samples based on the historical test data. When the judgment result is important, the control module changes the test of this function to a comprehensive test, and the control module regenerates the non-key test cases at this time.
[0027] After both the critical test cases and non-critical test cases are written, the execution module tests the software in the order of testing critical functions first and then non-critical functions. After obtaining the test results, the storage module stores the test results. At the same time, the storage module stores the test results and sorts all problems encountered during the test according to the frequency of occurrence and stores them as storage information. Finally, the display module displays the test results and the storage information of the storage module to the staff.
[0028] Beneficial effects:
[0029] 1. The present invention divides software functions into key functions and non-key functions through a judgment module. Key test cases are written by programmers, and non-key test cases are generated by the control module. All errors in the tests are collected through a storage module for testers to retrieve, thereby ensuring the test speed while also ensuring the test quality.
[0030] 2. The online questionnaire survey method can conduct questionnaire surveys on users without geographical and time restrictions. At the same time, compared with traditional paper questionnaires or face-to-face interviews, online questionnaires significantly reduce costs, and online questionnaires can be designed to be filled out anonymously, which helps users express their ideas and needs more authentically without worrying about personal information leakage or being affected by bias.
[0031] 3. After reading the historical test data and determining the focus of historical tests, subsequent tests can focus on those functional modules that are prone to problems or change frequently, thereby improving the pertinence and effectiveness of the tests; and the design that predicts possible problems in subsequent tests allows staff to formulate response strategies in advance based on predicted problems, thereby reducing the possibility of problems occurring or reducing the scope of impact of problems.
[0032] 4. When sampling non-critical functions of the software, random sampling can greatly reduce the time cost of the testing process, thereby quickly obtaining test results. At the same time, random sampling ensures that each individual in the population has the same probability of being selected, avoiding subjective bias and deliberate selection, making the sample more representative.
[0033] 5. When it is determined that a non-critical function is an important function within its group, the control module changes the test of the non-critical function to a comprehensive test, which can ensure a more reasonable allocation of test resources. At the same time, comprehensive testing of important non-critical functions helps to discover potential defects and problems, so as to ensure that these important non-critical functions can run stably under various circumstances and improve the overall stability of the software.
[0034] 6. The data in the storage module can be deleted, so that the staff can eliminate human errors. BRIEF DESCRIPTION OF THE DRAWINGS
[0035] Figure 1 It is a module schematic diagram of an embodiment of the present invention.
[0036] Figure 2 Schematic diagram of a collection module in an embodiment of the present invention.
[0037] Figure 3 This is a schematic diagram of a programming module in an embodiment of the present invention. DETAILED DESCRIPTION
[0038] The following is further described in detail through specific implementation methods:
[0039] Embodiment 1:
[0040] Basically as attached Figure 1 , Figure 2 , Figure 3 As shown:
[0041] A computer software automatic testing system comprises an acquisition module, an analysis module, a judgment module, a writing module, an execution module, a storage module, a display module and a control module, wherein the acquisition module, the analysis module, the judgment module, the writing module, the execution module, the storage module and the display module are mutually connected by signals.
[0042] The acquisition module is used to acquire the historical test data of the software and user requirements. The acquisition module includes an information reading unit and a user selection unit. The information reading unit is used to read the historical test data of the software. The user selection unit is used to acquire the user's requirements for the software.
[0043] The analysis module is used to conduct a comprehensive analysis of the collected software information and user needs and obtain analysis results.
[0044] The judgment module is used to judge the key functions and non-key functions of the software based on the analysis results of the analysis module and the historical test data of the software.
[0045] The writing module is used to write test cases for the software according to the key functions and non-key functions of the software. The writing module includes a manual writing unit and a non-key function sampling unit. The manual writing unit is used to send the key function information of the software to the terminal of the programmer, and the programmer writes the key test cases. The non-key function sampling unit is used to sample the non-key functions of the software, and the control module generates non-key test cases according to the sampled non-key functions.
[0046] The execution module is used to execute the key test cases and non-key test cases written by the writing module and obtain the test results.
[0047] The storage module is used to collect all errors encountered during the test, sort them according to the frequency of occurrence of the errors, store them as storage information, and store the test results at the same time.
[0048] The display module is used to display the test results and storage information.
[0049] The control module is used to control the operation of the acquisition module, analysis module, judgment module, writing module, execution module, storage module and display module. The control module of this embodiment uses a controller; the control module is also used to collect information transmitted by the acquisition module, analysis module, judgment module, writing module, execution module, storage module and display module.
[0050] The specific implementation process is as follows: After the staff completes the system settings, the system reads the software's historical test data through the information reading unit, obtains the user's requirements for the software through the user selection unit, and sends the software's historical test data and user requirements to the analysis module, which analyzes them and obtains the analysis results.
[0051] The analysis module sends the analysis results to the judgment module, and the judgment module makes a comprehensive judgment on the key functions and non-key functions of the software based on the analysis results obtained by the analysis module and the software historical test data obtained by the acquisition module.
[0052] After determining the critical functions and non-critical functions of the software, the writing module will write test cases based on whether the software functions are critical or not. When the software function is a critical function, the manual writing unit sends the critical function information of the software to the programmer's terminal, and the programmer then starts writing critical test cases for the critical functions of the software; when the software function is a non-critical function, the non-critical function sampling unit samples the non-critical functions of the software, and after the sampling is completed, the controller automatically generates non-critical test cases based on the sampled non-critical functions.
[0053] After the key test cases and non-key test cases are written, the execution module will start testing the key functions and non-key functions of the software. After obtaining the test results, the storage module will save the test results. At the same time, all errors encountered during the test will be sorted by the storage module according to the frequency of occurrence, and stored as storage information after the sorting is completed. Finally, the test results and storage information will be displayed through the display module for reference by the staff.
[0054] Embodiment 2:
[0055] Basically as attached Figure 1 , Figure 2 As shown:
[0056] Different from the above embodiment, the user selection module collects the user's needs for software through an online questionnaire survey, and the controller selects the application direction of the software according to the user's questionnaire survey results.
[0057] The specific implementation process is as follows: After the staff sets up the online questionnaire through the user selection module, they send the online questionnaire to the software users. The user's online questionnaire filling results are received by the controller, and the controller will judge the application direction of the software based on the user's selection ratio in the online questionnaire.
[0058] Embodiment 3:
[0059] Basically as attached Figure 1 As shown:
[0060] Different from the above-mentioned embodiment, when the analysis module analyzes the historical test data of the software, it analyzes the key points of the historical testing of the software and predicts the problems that may occur in the subsequent testing.
[0061] The specific implementation process is as follows: After obtaining the historical test data of the software, the analysis module will first analyze the historical test focus of the software, so as to reasonably divide the test resources in the subsequent tests. After the historical test focus analysis is completed, the analysis module will also predict the problems that may arise in the subsequent tests based on the historical test data, so that the staff can formulate emergency strategies in advance.
[0062] Embodiment 4:
[0063] Basically as attached Figure 1 , Figure 3 As shown:
[0064] Different from the above-mentioned embodiment, when sampling the non-critical functions of the software, the sampling method adopted is random sampling. The controller divides the non-critical functions that play a similar role in the software into a group, and after sampling, determines the importance of the sampled non-critical functions within their group based on historical test data. When the controller determines that the sampled function is an important function, the controller changes the test of this function to a comprehensive test.
[0065] The specific implementation process is as follows: the non-critical function sampling unit first divides the non-critical functions that play a similar role in the software into a group. After the division is completed, the non-critical functions of the software are randomly sampled, and the importance of the sampled non-critical functions in their group is judged based on historical test data. If the sampled non-critical function is an important function in its group, the controller regenerates non-critical test cases, and the non-critical test cases at this time can comprehensively test the sampled non-critical functions.
[0066] Embodiment 5:
[0067] Basically as attached Figure 1 , Figure 3 As shown:
[0068] Different from the above-mentioned embodiment, when the execution module tests the software, it adopts the method of testing the key functions first and then the non-key functions.
[0069] The specific implementation process is as follows: when testing the software, the execution module first tests the key functions and then tests the non-key functions to achieve reasonable allocation of test resources.
[0070] Embodiment 6:
[0071] Basically as attached Figure 1 As shown:
[0072] Different from the above embodiment, the data stored in the storage module is deleted by the controller.
[0073] The specific implementation process is as follows: When the software function is disturbed during the test, resulting in errors in the test results, the staff can delete the error data through the controller to ensure the accuracy of the test results.
[0074] Embodiment 7:
[0075] Basically as attached Figure 1 As shown:
[0076] Different from the above-mentioned embodiment, while the software is being updated, the programmer performs maintenance and updates on the key test cases and non-key test cases of the software through the controller.
[0077] The specific implementation process is as follows: when the software is updated, the programmer updates the key test cases in a targeted manner according to the content of the software update, and operates the controller to update the non-key test cases.
[0078] The above is only an embodiment of the present invention. The common sense such as the known specific structure and characteristics in the scheme is not described in detail here. The ordinary technicians in the relevant field know all the common technical knowledge in the technical field of the invention before the application date or priority date, can obtain all the existing technologies in the field, and have the ability to apply the conventional experimental means before that date. The ordinary technicians in the relevant field can improve and implement this scheme in combination with their own abilities under the enlightenment given by this application. Some typical known structures or known methods should not become obstacles for ordinary technicians in the relevant field to implement this application. It should be pointed out that for those skilled in the art, without departing from the structure of the present invention, several deformations and improvements can be made, which should also be regarded as the protection scope of the present invention, which will not affect the effect of the implementation of the present invention and the practicality of the patent. The protection scope required by this application shall be based on the content of its claims, and the specific implementation methods and other records in the specification can be used to interpret the content of the claims.
Claims
1. A computer software automated testing system, characterized in that: It includes a collection module, an analysis module, a judgment module, a writing module, an execution module, a storage module, a display module and a control module, and the collection module, the analysis module, the judgment module, the writing module, the execution module, the storage module and the display module are connected to each other by signals; The acquisition module is used to collect the historical test data and user requirements of the software; The analysis module is used to conduct a comprehensive analysis of the collected software historical test data and user needs and obtain the analysis results; A judgment module is used to judge the key functions and non-key functions of the software based on the analysis results of the analysis module and the historical test data of the software; Writing module, used to write test cases for software based on key and non-key functions of the software; The execution module is used to execute the test cases written by the writing module and obtain the test results; The storage module is used to collect all errors encountered during the test, sort them according to the frequency of the errors, store them as storage information, and store the test results at the same time; Display module, used for displaying test results and storage information; A control module, used to control the operation of the acquisition module, the analysis module, the judgment module, the writing module, the execution module, the storage module and the display module; The control module is also used to collect information transmitted by the acquisition module, analysis module, judgment module, writing module, execution module, storage module and display module.
2. The computer software automated testing system according to claim 1, characterized in that: The acquisition module includes an information reading unit and a user selection unit; An information reading unit, used for reading historical test data of the software; The user selection unit is used to collect user requirements for software.
3. The computer software automated testing system according to claim 2, characterized in that: The user selection module collects user requirements for software through online questionnaire surveys, and the control module selects the application direction of the software based on the user's questionnaire survey results.
4. The computer software automated testing system according to claim 3, characterized in that: When the analysis module analyzes the historical test data of the software, it analyzes the key points of the historical testing of the software and predicts the problems that may occur in subsequent tests.
5. The computer software automated testing system according to claim 4, characterized in that: The writing module includes a manual writing unit and a non-critical function sampling unit; The manual writing unit is used to send the key functional information of the software to the terminal of the programmer, and the programmer writes the key test cases; The non-critical function sampling unit is used to sample the non-critical functions of the software, and the control module generates non-critical test cases based on the sampled non-critical functions.
6. The computer software automated testing system according to claim 5, characterized in that: When sampling non-critical functions of the software, the sampling method adopted is random sampling.
7. The computer software automated testing system according to claim 6, characterized in that: When sampling non-critical functions of the software, the control module will divide the non-critical functions that play a similar role in the software into a group, and after sampling, determine the importance of the sampled non-critical functions within their group based on historical test data. When the control module determines that the sampled function is an important function, the control module changes the test of this function to a comprehensive test.
8. The computer software automated testing system according to claim 7, characterized in that: When the execution module tests the software, it tests the key functions first and the non-key functions later.
9. The computer software automated testing system according to claim 8, characterized in that: The data stored in the storage module is deleted through the control module.
10. The computer software automated testing system according to claim 9, characterized in that: While the software is being updated, programmers maintain and update the critical test cases and non-critical test cases of the software through the control module.
