A system performance testing method, device and computing equipment for application software

By receiving fault description information configured by the user, obtaining the fault type and parameters, modifying the parameters of the software business process, simulating the fault state and processing it, the problem of difficult to reproduce and troubleshoot probabilistic faults in existing technologies is solved, the fault detection and processing capabilities of the application software are improved, and the reliability and security of the system are improved.

CN114490294BActive Publication Date: 2025-09-23UNIONTECH SOFTWARE TECH CO LTD
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
CN202210101248.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-11-10
Publication Date
2025-09-23
Estimated Expiration
2041-11-10

AI Technical Summary

Technical Problem

In the existing technology, system performance testing of application software mostly uses hardware fault injection, which makes it difficult to effectively reproduce and troubleshoot probabilistic faults, resulting in difficulty in evaluating fault detection and handling effects.

Method used

A system performance testing method for application software is provided. By receiving fault description information configured by the user, obtaining the fault type, parameters and information, modifying the parameters of the software business process, simulating the fault state, and performing fault processing and evaluation, the fault can be reproduced and checked.

Benefits of technology

It achieves the reproduction and troubleshooting of probabilistic faults, improves the fault detection and processing capabilities of application software, and enhances the reliability and security of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114490294B_ABST
    Figure CN114490294B_ABST
Patent Text Reader

Abstract

The present invention discloses a system performance testing method, apparatus, and computing device for application software, comprising: receiving fault description information configured by a user; obtaining the fault type, fault parameters, and fault information based on the fault description information; modifying parameter information at the fault location of the business process corresponding to the application software based on the fault type, fault parameters, and fault information; in response to the user's operation of starting the application software, executing the business process corresponding to the application software, and when the execution reaches the fault location, entering a fault state based on the configured parameter information; and processing the fault state; when the fault is resolved, continuing to execute the corresponding business process; when the fault is not resolved, feeding back the fault condition, and determining the system performance of the application software based on the fault condition processing result. This application checks the fault handling capability of the application program through fault injection.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application of invention patent application 2021113244875 filed on November 10, 2021. Technical Field

[0002] The present invention relates to the technical field of software fault simulation, and in particular to a method, device and computing equipment for system performance testing of application software. Background Art

[0003] As software applications continue to expand, their scale and complexity continue to increase, and the probability of software errors also increases. For various software embedded in safety-critical systems, failures can have devastating consequences. For example, in safety-critical systems like autonomous driving systems, nuclear reactor systems, and financial securities management systems, software failures can directly or indirectly put the system in a dangerous state. These systems have their own fault handling and detection methods to mitigate significant risks. However, some faults are often probabilistic and not always manifest, making them difficult to reproduce and troubleshoot. To test the effectiveness of fault detection and handling, artificial fault injection is often used to verify the effectiveness of the fault detection system.

[0004] In the prior art, when testing the system performance of application software, most of the methods are based on hardware fault injection, while there are relatively few ideas for solving the problem from the software side. Therefore, a method for testing the system performance of application software using software simulation is needed. Summary of the Invention

[0005] To this end, the present invention provides a method, apparatus, and computing device for testing system performance of application software, in an effort to solve or at least alleviate at least one of the above problems.

[0006] According to one aspect of the present invention, a method for testing the system performance of application software is provided, comprising the steps of: receiving fault description information configured by a user; obtaining the fault type, fault parameters and fault information according to the fault description information; modifying parameter information at the fault location of the business process corresponding to the application software according to the fault type, fault parameters and fault information; executing the business process corresponding to the application software in response to the user's operation of starting the application software, and entering a fault state based on the configured parameter information when the execution reaches the fault location; processing the fault state; continuing to execute the business process corresponding to the application software when the fault is resolved; feeding back the fault condition when the fault is not resolved; and determining the system performance of the application software based on the result of processing the fault condition.

[0007] Optionally, in the system performance testing method according to the present invention, after the step of modifying parameter information at the fault location of the business process corresponding to the application software according to the fault type, fault parameters and fault information, the method further includes: feeding back information that the fault configuration is completed to the user.

[0008] Optionally, in the system performance testing method according to the present invention, before the step of receiving the fault description information configured by the user, it also includes: maintaining the correspondence between the fault description information, fault code and fault type, fault parameters and fault information; the step of obtaining the fault type, fault parameters and fault information according to the fault description information includes: matching the corresponding fault code through the fault description information, and finding the corresponding fault type, fault parameters and fault information through the fault code.

[0009] Optionally, in the system performance testing method according to the present invention, in response to the user's operation of starting the application software, the step of executing the business process corresponding to the application software includes: when receiving the user's operation of starting the application software, based on the configured parameter information, in accordance with the preset configuration order, executing the business processes corresponding to the application software one by one.

[0010] Optionally, in the system performance testing method according to the present invention, the step of processing the fault state includes: performing fault analysis on the fault state one by one, and processing the fault state based on the error correction process of the application.

[0011] Optionally, in the system performance testing method according to the present invention, the step of determining the system performance of the application software based on the fault state processing result includes: determining the system performance of the application software based on the processing result of the fault state by the error correction process of the application and the degree of continuing to execute the business process corresponding to the application software.

[0012] Optionally, in the system performance testing method according to the present invention, the step of receiving the fault description information configured by the user includes: communicating with the local area network device via the TCP / IP protocol to receive the fault description information remotely configured by the user through the local area network device.

[0013] Optionally, in the system performance testing method according to the present invention, after the step of feeding back the fault condition when the fault is not resolved, the method further includes: receiving a user's processing operation on the fault condition through the local area network device.

[0014] According to another aspect of the present invention, a system performance testing device for application software is also provided, including: a fault communication module, suitable for receiving fault description information configured by a user; obtaining the fault type, fault parameters and fault information according to the fault description information; a fault setting module, suitable for modifying parameter information at the fault location of the business process corresponding to the application software according to the fault type, fault parameters and fault information; a business process module, suitable for executing the business process corresponding to the application software in response to the user's operation of starting the application software, and entering a fault state based on the configured parameter information when executing to the fault location; a fault processing module, suitable for processing the fault state; when the fault is resolved, continuing to execute the business process corresponding to the application software; when the fault is not resolved, feeding back the fault condition; and a performance evaluation module, suitable for determining the system performance of the application software based on the fault state processing result.

[0015] According to another aspect of the present invention, a computing device is provided, comprising: at least one processor and a memory storing program instructions; when the program instructions are read and executed by the processor, the computing device executes the above system performance testing method.

[0016] According to yet another aspect of the present invention, a readable storage medium storing program instructions is provided. When the program instructions are read and executed by a computing device, the computing device executes the above system performance testing method.

[0017] The system performance testing method, apparatus, and computing device according to the present invention can achieve at least one of the following beneficial effects:

[0018] The system performance testing method of the application software of this application uses fault injection to reproduce and troubleshoot some probabilistic faults, check the fault handling capability of the application, help the application software complete fault detection and processing, and realize the test of the application system performance.

[0019] This application injects corresponding faults according to the scenario of application software testing; it can also perform related operations through remote control to complete the fault injection, making the operation more flexible and diverse.

[0020] This application configures the corresponding faults through fault injection. When the application software enters the fault state, it will trigger the application software to judge and resolve the fault, thereby completing the test of the application software's fault handling ability and improving the reliability and security of the system. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] To achieve the above and related purposes, certain illustrative aspects are described herein in conjunction with the following description and accompanying drawings, which indicate various ways in which the principles disclosed herein may be practiced, and all aspects and their equivalents are intended to fall within the scope of the claimed subject matter. The above and other objects, features, and advantages of the present disclosure will become more apparent by reading the following detailed description in conjunction with the accompanying drawings. Throughout this disclosure, the same reference numerals generally refer to the same parts or elements.

[0022] Figure 1 A schematic diagram of a computing device 100 according to one embodiment of the present invention is shown;

[0023] Figure 2 A flowchart of a method 200 for testing system performance of application software according to an embodiment of the present invention is shown;

[0024] Figure 3 A schematic diagram illustrating searching for fault description information according to an embodiment of the present invention is shown;

[0025] Figure 4 A schematic diagram of fault handling for a fault state according to an embodiment of the present invention is shown;

[0026] Figure 5 A schematic structural diagram of a system performance testing device 500 for application software according to an embodiment of the present invention is shown;

[0027] Figure 6 A schematic diagram of a fault injection process according to an embodiment of the present invention is shown. DETAILED DESCRIPTION

[0028] Exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although exemplary embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be limited by the embodiments set forth herein. Rather, these embodiments are provided to enable a more thorough understanding of the present disclosure and to fully convey the scope of the present disclosure to those skilled in the art.

[0029] The system performance testing method of the present invention is executed in a computing device. The computing device can be any device with storage and computing capabilities, such as a server, workstation, or personal computer such as a desktop computer or laptop computer, or a terminal device such as a mobile phone, tablet computer, smart wearable device, or IoT device, but is not limited thereto.

[0030] Figure 1 FIG1 shows a schematic diagram of a computing device 100 according to an embodiment of the present invention. It should be noted that, Figure 1The computing device 100 shown is only an example. In practice, the computing device used to implement the system performance testing method of the present invention can be any type of device, and its hardware configuration can be different from the above. Figure 1 The computing device 100 shown is the same as Figure 1 The computing device 100 shown is different. In practice, the computing device used to implement the system performance testing method of the present invention can be Figure 1 The hardware components of the computing device 100 shown may be added or deleted, and the present invention does not limit the specific hardware configuration of the computing device.

[0031] like Figure 1 As shown, in a basic configuration 102, computing device 100 typically includes system memory 106 and one or more processors 104. A memory bus 108 may be used for communication between processor 104 and system memory 106.

[0032] Depending on the desired configuration, the processor 104 can be any type of processor, including, but not limited to, a microprocessor (μP), a microcontroller (μC), a digital signal processing unit (DSP), or any combination thereof. The processor 104 can include one or more levels of cache, such as a level 1 cache 110 and a level 2 cache 112, a processor core 114, and registers 116. An example processor core 114 can include an arithmetic logic unit (ALU), a floating point unit (FPU), a digital signal processing core (DSP core), or any combination thereof. An example memory controller 118 can be used with the processor 104, or in some implementations, the memory controller 118 can be an internal part of the processor 104.

[0033] Depending on the desired configuration, system memory 106 can be any type of memory, including but not limited to volatile memory (such as RAM), non-volatile memory (such as ROM, flash memory, etc.), or any combination thereof. Physical memory in a computing device typically refers to volatile RAM. Data from a disk must be loaded into physical memory before it can be read by processor 104. System memory 106 may include an operating system 120, one or more applications 122, and program data 124. In some embodiments, applications 122 may be arranged so that one or more processors 104 execute instructions on the operating system using program data 124. Operating system 120 may be, for example, Linux or Windows, and includes program instructions for handling basic system services and performing hardware-dependent tasks. Applications 122 include program instructions for implementing various user-desired functions. Applications 122 may include, but are not limited to, browsers, instant messaging software, software development tools (such as integrated development environments (IDEs) and compilers). When applications 122 are installed in computing device 100, driver modules may be added to operating system 120.

[0034] When the computing device 100 is started, the processor 104 reads and executes the program instructions of the operating system 120 from the memory 106. Applications 122 run on top of the operating system 120, utilizing the interfaces provided by the operating system 120 and the underlying hardware to implement various user-desired functions. When a user launches an application 122, the application 122 is loaded into the memory 106, and the processor 104 reads and executes the program instructions of the application 122 from the memory 106.

[0035] Computing device 100 also includes a storage device 132 including removable storage 136 and non-removable storage 138 , both of which are connected to storage interface bus 134 .

[0036] The computing device 100 may also include an interface bus 140 that facilitates communication from various interface devices (e.g., output devices 142, peripheral interfaces 144, and communication devices 146) to the basic configuration 102 via the bus / interface controller 130. Example output devices 142 include a graphics processing unit 148 and an audio processing unit 150. These can be configured to facilitate communication with various external devices such as a display or speakers via one or more A / V ports 152. Example peripheral interfaces 144 may include a serial interface controller 154 and a parallel interface controller 156, which can be configured to facilitate communication with external devices such as input devices (e.g., a keyboard, mouse, pen, voice input device, touch input device) or other peripherals (e.g., a printer, scanner, etc.) via one or more I / O ports 158. Example communication devices 146 may include a network controller 160, which can be arranged to facilitate communication with one or more other computing devices 162 via a network communication link via one or more communication ports 164.

[0037] A network communication link can be an example of a communication medium. Communication media can generally be embodied as computer-readable instructions, data structures, program modules in a modulated data signal such as a carrier wave or other transmission mechanism, and can include any information delivery medium. A "modulated data signal" can be a signal in which one or more of its data sets or changes thereto can be performed in a manner that encodes information in the signal. As non-limiting examples, communication media can include wired media such as a wired network or a dedicated line network, and various wireless media such as sound, radio frequency (RF), microwave, infrared (IR) or other wireless media. The term computer-readable medium as used herein can include both storage media and communication media.

[0038] In the computing device 100 according to the present invention, the application 122 includes instructions for executing the system performance testing method 200 of the present invention, which can instruct the processor 104 to execute the system performance testing method 200 of the present invention to avoid file system disorder, data corruption and garbled characters, etc. through automatic burning inspection.

[0039] Figure 2 The flowchart of a system performance testing method 200 according to an embodiment of the present invention is shown. The system performance testing method 200 is executed in a computing device (such as the aforementioned computing device 100). By injecting faults, the corresponding fault configuration is performed. When the application software enters a fault state, the application software is triggered to judge and resolve the fault, thereby completing the application software system performance test and improving the reliability and security of the system. Figure 2 As shown, method 200 may include steps S210 to S250.

[0040] In step S210, fault description information configured by the user is received; and the fault type, fault parameters and fault information are acquired according to the fault description information.

[0041] According to an embodiment of the present invention, before step S210 , the process may further include: maintaining the corresponding relationship between fault description information, fault code and fault type, fault parameter and fault information.

[0042] According to one embodiment of the present invention, the step of obtaining the fault type, fault parameters and fault information according to the fault description information in step S210 may include: matching the fault code according to the maintained correspondence through the fault description information, and finding the corresponding fault type, fault parameters and fault information through the fault code.

[0043] In actual operation, Figure 3 As shown, users can select a fault on the graphical interface, such as Fault 1, Fault 2, ..., Fault n. Each fault has a corresponding fault description, such as Message 1, Message 2, ..., Message n. This description allows users to identify the configured fault. Then, based on the fault code / ID corresponding to the fault description, the corresponding parameters can be found. Different faults correspond to different parameter lists, such as Parameter List 1, Parameter List 2, ..., Parameter List n. This fault-related information can be stored in a database for easy search and modification.

[0044] According to an embodiment of the present invention, the step of receiving the fault description information configured by the user in step S210 may include: communicating with the local area network device via the TCP / IP protocol to receive the fault description information remotely configured by the user via the local area network device.

[0045] TCP / IP (Transmission Control Protocol / Internet Protocol) is a suite of protocols that enables information transmission across multiple networks. Examples include FTP (File Transfer Protocol), SMTP (Simple Mail Transfer Protocol), TCP, UDP (User Datagram Protocol), and IP.

[0046] In the embodiment of the present invention, the communication method between the fault injection and the application software can adopt the TCP / IP protocol and utilize Socket network communication technology to realize the mutual exchange of fault information. Therefore, the fault injection can be carried out remotely, and communication can be carried out within a local area network segment.

[0047] In step S220, parameter information is modified at the fault location of the business process corresponding to the application software according to the fault type, fault parameters and fault information.

[0048] In an embodiment of the present invention, during the fault injection process, the user can select the fault type through a graphical interface and perform corresponding fault configuration. After the configuration is completed, the user can modify parameter information at the fault location of the business process based on the fault-related information.

[0049] According to an embodiment of the present invention, step S220 may further include: feeding back information indicating that the fault configuration is completed to the user.

[0050] In the embodiment of the present invention, after the parameter information is set, the fault configuration completion information is fed back to the user, and the fault configuration completion information can be displayed on a graphical interface.

[0051] In step S230 , in response to the user's operation of starting the application software, the business process corresponding to the application software is executed. When the execution reaches the fault position, the fault state is entered based on the configured parameter information.

[0052] According to one embodiment of the present invention, in response to the user's operation of starting the application software in step S230, the step of executing the business process corresponding to the application software may include: when receiving the user's operation of starting the application software, based on the configured parameter information, in accordance with the preset configuration order, executing the business processes corresponding to the application software one by one.

[0053] In an embodiment of the present invention, when the user starts the application software again, the application software starts to execute the corresponding business process. When it reaches the fault location, a fault phenomenon will occur. At this time, the fault handling mechanism of the application software will handle the fault, analyze the cause of the fault and resolve the fault. If the fault is resolved, the execution of the business process will continue. If the subsequent sequence encounters the fault phenomenon again, the fault handling mechanism will continue to be triggered to handle the fault and resolve the fault; if the subsequent sequence does not encounter the fault phenomenon, the application software will execute until the end.

[0054] In step S240, the fault state is processed; when the fault is resolved, the business process corresponding to the application software continues to be executed; when the fault is not resolved, the fault situation is fed back.

[0055] According to an embodiment of the present invention, the step of processing the fault state in step S240 may include: performing fault analysis on the fault states one by one, and processing the fault states based on the error correction process of the application program.

[0056] In the embodiment of the present invention, the application software generally includes a fault handling mechanism to resolve the fault. Figure 4 As shown, after receiving the fault description, the database can be indexed based on the fault code / ID to find the corresponding fault parameter list, such as Parameter List 1, Parameter List 2, ... Parameter List n. Based on the information in the parameter list, the location in the corresponding business process of the application software where the fault needs to be configured, such as Fault Position 1, Fault Position 2, ... Fault Position n, can be found. The application software is then started and executes the corresponding business process, such as Process 1, Process 2, ... Process n. At the corresponding fault location, a corresponding fault, such as Fault 1, Fault 2, ... Fault n, will occur, entering a fault state and displaying the fault symptoms. The fault is then resolved through fault processing and analysis, which can include fault diagnosis, fault analysis, fault handling, and expert diagnosis. The application software can then continue executing. If other faults occur, the above steps are repeated. Otherwise, the application continues running until the software is shut down.

[0057] According to an embodiment of the present invention, when the fault is not resolved in step S240, the feedback of the fault condition may further include: receiving a user's processing operation on the fault condition through a local area network device.

[0058] In step S250, the system performance of the application software is determined according to the fault status processing result.

[0059] In an embodiment of the present invention, step S250 of determining the system performance of the application software based on the result of processing the fault state includes: determining the system performance of the application software based on the result of processing the fault state by the error correction process of the application and the degree of continuing to execute the business process corresponding to the application software.

[0060] In embodiments of the present invention, application software system performance can be determined based on factors such as the results of the application software's fault handling using its own fault handling and detection capabilities, and whether the application software successfully continues to execute business processes. Evaluation can be conducted based on a specific type of fault and its ability to handle that type of fault. Alternatively, various maintenance faults can be injected to comprehensively evaluate the application software's fault handling capabilities.

[0061] The embodiment of the present invention can be selected and edited through a visual interface, and remote fault injection is performed through the TCP / IP protocol. The application software receives the fault description information and configures the corresponding fault through the fault code index. When the application software enters a fault state, the fault handling mechanism of the application software will be triggered to judge and resolve the fault, thereby completing the system test and improving the reliability and security of the system. If the application software does not have a fault handling mechanism, it communicates with the remote LAN device through the TCP / IP protocol, and the user (expert) resolves the fault. Or if the fault handling mechanism of the application software cannot resolve the fault, it communicates with the remote LAN device through the TCP / IP protocol, and the user (expert) resolves the fault or deletes the configured fault description information by the user (expert), so that the application can detect whether other faults can be successfully resolved. The application software developer will solve the corresponding fault handling for the unresolved fault.

[0062] like Figure 5 As shown, an embodiment of the present invention further provides a fault injection device 500. The fault injection device 500 includes a fault communication module 510, a fault setting module 520, a business process module 530, a fault processing module 540 and a performance evaluation module 550.

[0063] Among them, the fault communication module 510 is suitable for receiving fault description information configured by the user; obtaining the fault type, fault parameters and fault information according to the fault description information; the fault setting module 520 is suitable for modifying the parameter information at the fault location of the business process corresponding to the application software according to the fault type, fault parameters and fault information; the business process module 530 is suitable for responding to the user's operation of starting the application software, executing the business process corresponding to the application software, and when executing to the fault location, entering the fault state based on the configured parameter information; the fault processing module 540 is suitable for processing the fault state; when the fault is resolved, continuing to execute the business process corresponding to the application software; when the fault is not resolved, feedback the fault situation; and the performance evaluation module 550 is suitable for determining the system performance of the application software based on the fault state processing results.

[0064] According to an embodiment of the present invention, the fault communication module 510 may also be adapted to: after modifying parameter information at the fault location of the business process corresponding to the application software according to the fault type, fault parameters and fault information, feed back information indicating that the fault configuration is completed to the user.

[0065] According to an embodiment of the present invention, the fault injection device 500 may further include: a maintenance module adapted to maintain fault description information, a correspondence between fault codes and fault types, fault parameters, and fault information;

[0066] According to one embodiment of the present invention, the fault communication module 510 obtains the fault type, fault parameters and fault information according to the fault description information by matching the corresponding fault code through the fault description information and finding the corresponding fault type, fault parameters and fault information through the fault code.

[0067] According to one embodiment of the present invention, the business process module 530 responds to the user's operation of launching the application software, and executes the business process corresponding to the application software. When receiving the user's operation of launching the application software, based on the configured parameter information, the business processes corresponding to the application software are executed one by one in a preset configuration order.

[0068] According to an embodiment of the present invention, the fault processing module 540 processes the fault status by performing fault analysis on the fault status one by one and processing the fault status based on the error correction process of the application program.

[0069] According to one embodiment of the present invention, the performance evaluation module 550 determines the system performance of the application software based on the fault status processing result: the system performance of the application software is determined based on the processing result of the fault status by the error correction process of the application program and the degree of continuing to execute the business process corresponding to the application software.

[0070] According to an embodiment of the present invention, the fault communication module 510 receives the fault description information configured by the user by communicating with the LAN device via the TCP / IP protocol to receive the fault description information remotely configured by the user via the LAN device.

[0071] According to an embodiment of the present invention, the fault communication module 510 may also be adapted to receive a user's operation for handling the fault status through a local area network device after the fault condition is fed back when the fault has not been resolved.

[0072] The following example uses the TCP / IP protocol to communicate with LAN devices to obtain user-configured fault description information. Figure 6 , which illustrates the implementation process of the system performance testing method according to an embodiment of the present invention.

[0073] In step S601, a human-computer interaction interface is used to perform operations such as selecting, adding, and editing faults and sending fault description information through a graphical interface.

[0074] In step S602, the fault type is determined according to the user's fault selection, fault parameters are configured, fault information is deleted and added, etc.

[0075] In step S603, after the fault configuration is completed, the fault description information can be sent to the application software via the TCP / IP protocol.

[0076] In step S604, after receiving the fault description information, the parameter information is modified at the fault location of the business process corresponding to the application software. When the application software fault configuration is completed, the fault configuration result can be sent to the user interface via the TCP / IP protocol.

[0077] In step S605, different fault configurations may result in different fault phenomena. When entering a fault state, the application program may process the fault.

[0078] In step S606, the application software has its own fault handling execution process and business logic to help the application software resolve the fault.

[0079] The various techniques described herein may be implemented in conjunction with hardware or software, or a combination thereof. Thus, the methods and apparatus of the present invention, or certain aspects or portions of the methods and apparatus of the present invention, may be implemented in the form of program codes (i.e., instructions) embedded in a tangible medium, such as a removable hard disk, a USB flash drive, a floppy disk, a CD-ROM, or any other machine-readable storage medium, wherein when the program is loaded into a machine such as a computer and executed by the machine, the machine becomes an apparatus for practicing the present invention.

[0080] When program code is executed on a programmable computer, the computing device generally includes a processor, a storage medium readable by the processor (including volatile and non-volatile memory and / or storage elements), at least one input device, and at least one output device. The memory is configured to store the program code, and the processor is configured to execute the system performance testing method of the present invention according to the instructions in the program code stored in the memory.

[0081] By way of example and not limitation, readable media include readable storage media and communication media. Readable storage media store information such as computer-readable instructions, data structures, program modules, or other data. Communication media typically embody computer-readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism, and include any information delivery medium. Combinations of any of the above are also included within the scope of readable media.

[0082] In the description provided herein, the algorithms and displays are not inherently related to any particular computer, virtual system, or other device. Various general-purpose systems may also be used in conjunction with the examples of the present invention. Based on the above description, it is apparent that the structure required for constructing such systems is contemplated. In addition, the present invention is not directed to any specific programming language. It should be understood that various programming languages ​​may be utilized to implement the present invention described herein, and the description of specific languages ​​described above is provided for the purpose of disclosing preferred embodiments of the present invention.

[0083] In the description provided herein, a large number of specific details are described. However, it is understood that embodiments of the present invention can be practiced without these specific details. In some instances, well-known methods, structures, and techniques are not shown in detail so as not to obscure the understanding of this description.

[0084] Similarly, it should be understood that in order to streamline the disclosure and aid understanding of one or more of the various inventive aspects, in the above description of exemplary embodiments of the invention, various features of the invention are sometimes grouped together in a single embodiment, figure, or description thereof. However, this method of disclosure should not be interpreted as reflecting an intention that the claimed invention requires more features than are expressly recited in each claim.

[0085] Those skilled in the art will appreciate that the modules, units, or components of the devices in the examples disclosed herein may be arranged in the device described in the embodiment, or alternatively may be located in one or more devices different from the devices in the examples. The modules in the foregoing examples may be combined into one module or further divided into multiple submodules.

[0086] Those skilled in the art will appreciate that the modules in the devices in the embodiments may be adaptively changed and arranged in one or more devices different from the embodiments. The modules or units or components in the embodiments may be combined into one module or unit or component, and in addition may be divided into multiple submodules or subunits or subcomponents. All features disclosed in this specification (including the accompanying claims, abstracts and drawings) and all processes or units of any method or device disclosed herein may be combined in any combination, except that at least some of such features and / or processes or units are mutually exclusive. Unless expressly stated otherwise, each feature disclosed in this specification (including the accompanying claims, abstracts and drawings) may be replaced by an alternative feature providing the same, equivalent or similar purpose.

[0087] Furthermore, those skilled in the art will appreciate that although some embodiments described herein include certain features and not other features included in other embodiments, the combination of features from different embodiments is intended to be within the scope of the invention and to form different embodiments.

[0088] In addition, some of the embodiments are described herein as methods or combinations of method elements that can be implemented by a processor of a computer system or by other devices that perform the functions described. Thus, a processor having the necessary instructions for implementing the method or method element forms a device for implementing the method or method element. Furthermore, the elements described herein of the device embodiments are examples of devices for implementing the functions performed by the elements for the purpose of implementing the invention.

[0089] As used herein, unless otherwise specified, the use of ordinal numbers "first," "second," "third," etc. to describe common objects merely indicates that different instances of similar objects are involved and are not intended to imply that the objects so described must have a given order in time, space, ranking, or in any other manner.

[0090] Although the present invention has been described with respect to a limited number of embodiments, those skilled in the art, having benefit of the foregoing description, will appreciate that other embodiments are contemplated within the scope of the invention thus described. Furthermore, it should be noted that the language used in this specification has been selected primarily for readability and instructional purposes and is not selected to explain or limit the subject matter of the present invention.

Claims

1. A method for testing the system performance of application software, comprising the steps of: Receive fault description information configured by the user; obtain fault type, fault parameters and fault information according to the fault description information; Find the corresponding fault parameter list based on the fault type, fault parameters, and fault information. Modify the parameter information at the fault location of the business process corresponding to the application software based on the information in the parameter list, and provide feedback to the user through the graphical interface that the fault configuration is complete. In response to a user's operation of starting the application software, executing a business process corresponding to the application software, and when executing to a fault position, entering a fault state based on configured parameter information; Processing the fault state; When the fault is resolved, continue to execute the business process corresponding to the application software; If the fault is not resolved, the system reports the fault status and receives a description of the fault if the user resolves the fault or deletes the configuration, allowing the application to detect whether other faults can be resolved successfully. as well as determining the system performance of the application software according to the fault status processing result; The step of executing the business process corresponding to the application software in response to the user's operation of launching the application software includes: upon receiving the user's operation of launching the application software, executing the business processes corresponding to the application software one by one according to a preset configuration order based on the configured parameter information; The step of receiving the fault description information configured by the user includes: communicating with the local area network device through the TCP / IP protocol, and receiving the fault description information remotely configured by the user through the local area network device.

2. The system performance testing method according to claim 1, wherein: Before the step of receiving the fault description information configured by the user, the method further includes: maintaining the corresponding relationship between the fault description information, the fault code and the fault type, the fault parameter and the fault information; The step of obtaining the fault type, fault parameters and fault information according to the fault description information includes: The fault description information is used to match the fault code according to the maintained corresponding relationship, and the corresponding fault type, fault parameters and fault information are found through the fault code.

3. The system performance testing method according to claim 1, wherein: The steps of processing the fault state include: Fault analysis is performed on the fault states one by one, and the fault states are processed based on the error correction process of the application program.

4. The system performance testing method according to claim 3, wherein: The step of determining the system performance of the application software according to the fault status processing result includes: The system performance of the application software is determined based on the result of the error correction process of the application program on the fault state and the degree of continued execution of the business process corresponding to the application software.

5. The system performance testing method according to claim 1, wherein: After the step of feeding back the fault condition when the fault is not resolved, the method further includes: Receive a user's processing operation on the fault state through the local area network device.

6. A system performance testing device for application software, comprising: A fault communication module, adapted to receive fault description information configured by a user; Acquire the fault type, fault parameters and fault information according to the fault description information; The fault setting module is adapted to find the corresponding fault parameter list according to the fault type, fault parameter and fault information, and modify the parameter information at the fault location of the business process corresponding to the application software according to the information in the parameter list; a business process module adapted to execute the business process corresponding to the application software in response to a user's operation of starting the application software, and enter a fault state based on configured parameter information when the execution reaches a fault position; A fault processing module, adapted to process the fault state; When the fault is resolved, continue to execute the business process corresponding to the application software; If the fault is not resolved, the system reports the fault status and receives a description of the fault if the user resolves the fault or deletes the configuration, allowing the application to detect whether other faults can be resolved successfully. as well as a performance evaluation module adapted to determine the system performance of the application software according to the fault status processing result; The business process module executes the business process corresponding to the application software in response to the user's operation of launching the application software, and is suitable for: upon receiving the user's operation of launching the application software, executing the business processes corresponding to the application software one by one based on the configured parameter information and in accordance with the preset configuration order; The fault communication module receives the fault description information configured by the user and is suitable for: communicating with the local area network device through the TCP / IP protocol and receiving the fault description information remotely configured by the user through the local area network device; The fault communication module is further adapted to: after the fault setting module modifies the parameter information at the fault location of the business process corresponding to the application software, feed back information indicating that the fault configuration is completed to the user through a graphical interface.

7. A computing device comprising: at least one processor and memory storing program instructions; When the program instructions are read and executed by the processor, the computing device executes the system performance testing method for application software according to any one of claims 1 to 5.

8. A readable storage medium storing program instructions, which, when read and executed by a computing device, enables the computing device to execute the system performance testing method for application software according to any one of claims 1 to 5.

Citation Information

Patent Citations

  • Fault injection test apparatus and method

    CN109976932A

  • Fault injection method for software testing under VxWorks operating system

    CN110688313A

  • System and method for automated testing of a software module

    US20040194063A1