Performance test method and device for application program, equipment and medium
By obtaining the curing configuration information and curing the performance correlation module, the application performance test fluctuations caused by device environmental factors are solved, and the accuracy and stability of the test are improved.
Patent Information
- Application Number
- CN202311103235.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-08-29
- Publication Date
- 2025-03-04
AI Technical Summary
In application performance testing, device environment factors cause large fluctuations in performance data, and performance fluctuations in multiple tests of the same application also occur, resulting in low test accuracy.
By obtaining the curing configuration information, the performance correlation module is cured, including multiple modules associated with the target performance in the terminal running the target application. The method includes obtaining the cured configuration information, curing the performance correlation module based on this information, and performing performance testing of the target application.
By curing the performance correlation module by curing the configuration information, the impact of the device on application performance can be eliminated from multiple dimensions, ensuring the stability of overall performance, and thus improving the accuracy of application performance testing.
Smart Images

Figure CN119557198A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of computer technology, and in particular to a performance testing method, device, equipment and medium for an application program. Background Art
[0002] When performing performance testing on an application, performance data often fluctuates greatly due to device environment factors. Multiple tests of the same application at the same time may also show performance fluctuations, resulting in low accuracy of performance testing.
[0003] The related technologies can only partially solve the performance fluctuation problem, and there are still other factors affecting the performance, which leads to low accuracy of the performance test of the application. Summary of the invention
[0004] In order to solve the above technical problems, the present disclosure provides a performance testing method, device, equipment and medium for an application program.
[0005] The present disclosure provides a method for performance testing of an application program, the method comprising:
[0006] In response to receiving a performance test request for a target application, obtaining solidified configuration information;
[0007] Performing curing processing on the performance association module based on the curing configuration information, wherein the performance association module includes a plurality of modules associated with the target performance of the target application in the terminal running the target application;
[0008] A performance test is performed on the target application.
[0009] The present disclosure also provides a performance testing device for an application program, the device comprising:
[0010] An acquisition module, configured to acquire the solidified configuration information in response to receiving a performance test request for a target application program;
[0011] A curing module, used for curing the performance association module based on the curing configuration information, wherein the performance association module includes a plurality of modules associated with the target performance of the target application in the terminal running the target application;
[0012] The test module is used to perform performance testing on the target application.
[0013] An embodiment of the present disclosure also provides an electronic device, which includes: a processor; a memory for storing executable instructions of the processor; the processor is used to read the executable instructions from the memory and execute the instructions to implement a performance testing method for an application as provided in an embodiment of the present disclosure.
[0014] The embodiment of the present disclosure further provides a computer-readable storage medium, wherein the storage medium stores a computer program, and the computer program is used to execute the performance testing method of the application program provided by the embodiment of the present disclosure.
[0015] The technical solution provided by the embodiment of the present disclosure has the following advantages over the prior art: the performance testing solution for the application provided by the embodiment of the present disclosure obtains the solidified configuration information in response to receiving a performance test request for the target application; solidifies the performance association module based on the solidified configuration information, wherein the performance association module includes multiple modules associated with the target performance of the target application in the terminal running the target application; and performs performance testing on the target application. By adopting the above technical solution, the multiple modules included in the performance association module can be solidified by solidifying the configuration information, and then the application is performance tested. Compared with the related technology, the influence of the device on the performance of the application is eliminated from multiple dimensions, ensuring the stability of the overall performance, thereby improving the accuracy of the performance test of the application. BRIEF DESCRIPTION OF THE DRAWINGS
[0016] The above and other features, advantages and aspects of the embodiments of the present disclosure will become more apparent with reference to the following detailed description in conjunction with the accompanying drawings. Throughout the accompanying drawings, the same or similar reference numerals represent the same or similar elements. It should be understood that the drawings are schematic and the originals and elements are not necessarily drawn to scale.
[0017] Figure 1 A flowchart of a performance testing method for an application provided by an embodiment of the present disclosure;
[0018] Figure 2 A flowchart of another performance testing method for an application provided by an embodiment of the present disclosure;
[0019] Figure 3 A schematic diagram of a curing process provided by an embodiment of the present disclosure;
[0020] Figure 4 A schematic diagram of the structure of a performance testing device for an application provided by an embodiment of the present disclosure;
[0021] Figure 5 A schematic diagram of the structure of an electronic device provided in an embodiment of the present disclosure. DETAILED DESCRIPTION
[0022] Embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although certain 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 construed as being limited to the embodiments described herein, which are instead provided for a more thorough and complete understanding of the present disclosure. It should be understood that the drawings and embodiments of the present disclosure are only for exemplary purposes and are not intended to limit the scope of protection of the present disclosure.
[0023] It should be understood that the various steps described in the method embodiments of the present disclosure may be performed in different orders and / or in parallel. In addition, the method embodiments may include additional steps and / or omit the steps shown. The scope of the present disclosure is not limited in this respect.
[0024] The term "including" and its variations used herein are open inclusions, i.e., "including but not limited to". The term "based on" means "based at least in part on". The term "one embodiment" means "at least one embodiment"; the term "another embodiment" means "at least one additional embodiment"; the term "some embodiments" means "at least some embodiments". The relevant definitions of other terms will be given in the following description.
[0025] It should be noted that the concepts such as "first" and "second" mentioned in the present disclosure are only used to distinguish different devices, modules or units, and are not used to limit the order or interdependence of the functions performed by these devices, modules or units.
[0026] It should be noted that the modifications of "one" and "plurality" mentioned in the present disclosure are illustrative rather than restrictive, and those skilled in the art should understand that unless otherwise clearly indicated in the context, it should be understood as "one or more".
[0027] The names of the messages or information exchanged between multiple devices in the embodiments of the present disclosure are only used for illustrative purposes and are not used to limit the scope of these messages or information.
[0028] Equipment environmental factors cause large fluctuations in the performance data of applications. For example, the cold start time of applications. For multiple cold starts of the same application on the same device, the cold start fluctuation can reach 30%. In order to solve the impact of the equipment environment on the performance test of the application, the relevant technology can place the device in a lower temperature environment and fix the device frequency to a fixed value; or it can also avoid causing fluctuations in application performance by closing other applications, setting the same system parameters, etc. However, the relevant technology can only solve part of the performance fluctuation problem, and there are still other factors that affect performance. If some extreme performance tests are performed, the data obtained by accurately locating the performance loss of the application is still not very reliable, which leads to low accuracy of the performance test of the application. How to solve the impact of equipment environment factors on the test to the greatest extent when performing performance testing on the application is the problem to be solved by this solution.
[0029] In order to solve the above problems, the embodiments of the present disclosure provide a performance testing method for an application program, which is introduced below in conjunction with specific embodiments.
[0030] Figure 1 The present invention provides a flow chart of a performance testing method for an application program, which can be performed by a performance testing device for an application program, wherein the device can be implemented by software and / or hardware and can generally be integrated in an electronic device. Figure 1 As shown, the method includes:
[0031] Step 101: In response to receiving a performance test request for a target application, obtain solidification configuration information.
[0032] The target application may be any application that needs to be performance tested, and the specific type is not limited. For example, the target application may be a game application, a reading application, or a communication application, and the number of target applications may be one or more, and the specific type is not limited. The performance test request may be understood as a request to run and test an application to verify whether it meets the expected usage requirements and performance requirements.
[0033] The performance testing method of the application of the embodiment of the present disclosure can be performed by a curing tool, which can be set in the electronic device where the target application is located, and is used to perform performance curing or stabilization processing before the performance test of the target application. The curing configuration information can be understood as the relevant information pre-set in the above-mentioned curing tool for curing processing. The curing configuration information may include various types of information, such as the preset capacity corresponding to the memory, the curing frequency corresponding to the processor, etc., which can be specifically set according to the actual situation.
[0034] After receiving a performance test request for a target application, the application performance testing device may start the above-mentioned curing tool, and extract the internal curing configuration information through the curing tool to perform subsequent processing.
[0035] Step 102: Solidify the performance association module based on the solidification configuration information, wherein the performance association module includes a plurality of modules associated with the target performance of the target application in the terminal running the target application.
[0036] Exemplarily, the performance association module includes a hardware module and / or a software module of the electronic device. The terminal may be an electronic device or a part of the electronic device.
[0037] Among them, the performance association module can be a module in the terminal running the target application that will affect the performance of the target application, and can specifically affect the target performance. The target performance can include performance in multiple dimensions, and the target performance associated with different modules can be different. For example, when the target application is tested for the occupancy of the central processing unit (CPU), the memory and disk can be the performance association module, and the target performance of the application affected by the memory and disk is the CPU occupancy. The performance association module can include multiple types. Exemplarily, the performance association module in the embodiment of the present disclosure includes hardware modules such as processors, memory, and disks, and at least two of software modules such as clock modules, pop-up modules, and network modules. Exemplarily, the performance association module can include at least one hardware module, and at least one software module. Compared with the single-dimensional performance solidification of the related technology, this solution improves the scope of the solidification process by solidifying the hardware and software modules included in the performance association module, and solves the impact of equipment environment factors on the test to the greatest extent, thereby better ensuring the stability of the overall performance.
[0038] In some embodiments, when the performance association module includes memory, solidifying the performance association module based on the solidified configuration information may include: extracting the preset capacity in the solidified configuration information; deleting the cached data of all applications in the memory, and / or mounting a virtual partition of preset capacity in the memory for the target application through the virtual file system.
[0039] The preset capacity may be a memory size pre-set for the storage space of the target application in the memory, which may be set according to actual conditions. The virtual file system may be a memory-based file system, which may use physical memory or swap space to simulate a disk, for example, the virtual file system may be a tmpfs (temporary file system) virtual file system. The virtual partition may be a virtual storage space created in the memory by the virtual file system.
[0040] When the performance association module includes memory, the performance testing device of the application can extract the preset capacity corresponding to the memory from the fixed configuration information. The fixed processing of the memory can include deleting or releasing the cached data of all applications in the memory, and / or creating a virtual partition with a preset capacity through a virtual file system, creating a folder in the memory as a partition mount point through a folder creation command, and the above-mentioned folder creation instruction can be a mkdir instruction, and then the above-mentioned virtual partition is mounted on the partition mount point through the mount command, and then the virtual partition is associated with the folder corresponding to the partition mount point. The subsequent target application can access the virtual partition by accessing the folder, so that the position and size of the storage space of the target application in the memory are fixed, and the speed of subsequent data writing from the memory to the disk is improved and stabilized.
[0041] Since most performance test scenarios are fixed, such as cold start performance testing, the test will repeat multiple startup tests. During the test, because the same code is run, the disk read will generally hit the operating system cache, but there will be no cache when the disk is written. This will cause some small-scale disk write processes to cause large data noise, that is, data differences, which will affect the performance of the application.
[0042] In this solution, the virtual partition storing the data of the application to be tested can be mounted in the memory through the virtual file system, so that the location and size of the storage space of the target application in the memory are fixed, and the speed of subsequent data writing from the memory to the disk is improved and stabilized.
[0043] For example, Figure 2 A flow chart of another performance testing method for an application provided by an embodiment of the present disclosure is shown as follows: Figure 2 As shown, in some embodiments, when the performance association module includes a pop-up window module, the performance association module is solidified based on the solidified configuration information, which may include the following steps:
[0044] Step 201: extract a tool identifier of a pop-up window control tool for solidifying configuration information.
[0045] The pop-up window module can be a functional module for controlling pop-up windows in the system of an electronic device, and the application can display the pop-up window by calling the pop-up window module. A program for controlling pop-up windows is set in the pop-up window control tool, which is used to close all pop-up windows during the performance test of the application. The pop-up window control tool can be set in the above-mentioned solidification tool or in the target application, without limitation. The tool identifier can be an identifier used to characterize the pop-up window control tool, through which the pop-up window control tool can be called, and when the pop-up window control tool is installed in different locations, the tool identifier can be different.
[0046] When the performance-related module includes a pop-up window module, the performance testing device of the application program may extract a tool identifier corresponding to the pop-up window module from the solidified configuration information.
[0047] Step 202: Call the pop-up window control tool based on the tool identifier, and control the pop-up window module to close all pop-up windows through the pop-up window control tool.
[0048] The performance testing device of the application can call the pop-up window control tool based on the tool identifier, and close all pop-up windows through the pop-up window control tool to avoid the impact of the pop-up windows on the performance testing of the application. The embodiment of the present disclosure does not limit the type of pop-up windows, for example, the pop-up windows can include permission pop-ups, crash pop-ups, system prompt pop-ups, etc.
[0049] In some embodiments, controlling the pop-up module to close all pop-up windows through a pop-up control tool may include: when it is determined based on the tool identifier that the pop-up control tool is installed outside the target application, when the pop-up control tool detects a pop-up event of the pop-up module, performing a closing operation on the pop-up corresponding to the pop-up event.
[0050] When the performance testing device of the application controls the pop-up window module to close all pop-up windows through the pop-up window tool, the installation location of the pop-up window control tool can be determined according to the tool identifier. If the installation location is determined to be in the above-mentioned solidification tool, that is, outside the target application, the pop-up window event of the pop-up window module can be detected through the pop-up window control tool. After the pop-up window event is detected, all function buttons in the pop-up window corresponding to the pop-up window event can be operated to close the pop-up window. A pop-up window can include multiple function buttons, such as a close button, an OK button, etc. Clicking one or more of these function buttons can close the pop-up window. By closing the displayed pop-up window, the operation is prevented from being blocked due to the unprocessed pop-up window, and the impact on the performance test of the target application is avoided.
[0051] In other embodiments, controlling the pop-up module to close all pop-ups through a pop-up control tool may include: when it is determined based on a tool identifier that the pop-up control tool is installed in a target application, intercepting the pop-up call request to the pop-up module upon detecting a pop-up call request from the target application through the pop-up control tool.
[0052] The performance test device of the application determines that the installation location is in the target application according to the tool identifier, that is, the pop-up window control tool is written into the code of the target application. At this time, the pop-up window call request of the target application to the pop-up window module can be detected. If detected, the pop-up window call request can be intercepted (hooked) to intercept the display of the pop-up window. By intercepting the pop-up window from within the target application, the impact on the performance test of the target application is avoided.
[0053] During the performance test of an application, some pop-up windows may appear on some devices in some cases. If not processed, these pop-up windows will remain until the end of the test, causing some tests to be interrupted. In some tests, the user interface (UI) of the pop-up windows will affect the loading and rendering of some pages of the application, which will in turn affect the performance indicators of the test.
[0054] In this solution, all system pop-up windows are closed before the performance test of the application to avoid the impact that the pop-up windows may have on the performance test of the target application.
[0055] Step 103: Perform performance testing on the target application.
[0056] Among them, performance testing includes but is not limited to memory testing, operation testing, interface layout effect testing, power consumption testing, etc. The application can be improved based on the results of performance testing.
[0057] After the performance testing device of the application solidifies the performance-related module based on the solidified configuration information, it can perform performance testing on the target application based on pre-configured test parameters. The test parameters may include specific test items, test times, test field of view and other test-related parameters, without limitation.
[0058] The performance testing scheme for an application provided by the embodiment of the present disclosure obtains fixed configuration information in response to receiving a performance test request for a target application; performs fixed processing on a performance association module based on the fixed configuration information, wherein the performance association module includes multiple modules associated with the target performance of the target application in a terminal running the target application; and performs a performance test on the target application. By adopting the above technical scheme, the multiple modules included in the performance association module can be fixed by fixed configuration information, and then the application is performance tested. Compared with related technologies, the influence of the device on the performance of the application is eliminated from multiple dimensions, ensuring the stability of the overall performance, thereby improving the accuracy of the performance test of the application.
[0059] In some embodiments, when the performance association module includes a processor, and the processor includes a central processing unit and a graphics processing unit (Graphics Processing Unit, GPU), the performance association module is solidified based on the solidified configuration information, which may include: extracting the solidified frequency in the solidified configuration information; turning off the controller of the central processing unit, and locking the frequency of the central processing unit to the first frequency in the solidified frequency; locking the frequency of the graphics processing unit to the second frequency in the solidified frequency.
[0060] The controller may be a functional module for controlling and optimizing the CPU. The fixed frequency may be a working frequency pre-set for the CPU and GPU, and the fixed frequency may include a first frequency and a second frequency, the first frequency is the working frequency set for the CPU, and the second frequency is the working frequency set for the GPU. The specific value may be set according to the actual situation, for example, the first frequency may be set to 2000000 Hz.
[0061] When the performance association module includes a processor, the performance testing device of the application can extract the fixed frequency corresponding to the processor from the fixed configuration information. The fixed processing of the processor can include turning off the CPU controller. Specifically, the CPU controller can be turned off by a shutdown command to disable the CPU optimization function to prevent the controller from modifying the CPU's operating frequency; the CPU frequency can be locked to a first frequency by a command, and the number of running cores of the CPU can also be locked to a preset number, which is less than or equal to the total number of cores included in the CPU. At this time, since the CPU can include multiple cores, the frequencies of some cores can be written as the first frequency, and the frequencies of some cores can be set to 0 to achieve core locking. For example, when the CPU includes 8 cores, the frequencies of 6 cores can be locked to the first frequency, and 2 cores can be locked. This is only an example; for the graphics processor, its frequency can be written to the second frequency to achieve frequency fixing.
[0062] In the above solution, by fixing the frequencies of the CPU and GPU, the stability of the CPU and GPU can be ensured. Each time the performance test of the application is performed, the CPU and GPU have the same working performance, thereby avoiding affecting the performance test of the application.
[0063] In some embodiments, when the performance association module includes a disk, solidifying the performance association module based on solidified configuration information may include: extracting the cache file of the target application in the solidified configuration information; and overwriting the original file with the cache file of the target application on the disk.
[0064] The cache file of the target application may be a file obtained by pre-copying the corresponding cache file in the disk before the performance test is performed on the target application.
[0065] When the performance association module includes a disk, the performance testing device of the application can extract the cache file of the target application corresponding to the disk from the solidification configuration information, and the solidification processing of the disk can include overwriting the original file of the target application in the disk with the cache file of the target application, and the original file here can be the cache file in the disk at the current moment before the performance test of the target application is performed, so as to ensure that the cache file is the same each time the performance test of the target application is performed.
[0066] In the above scheme, the cache files of the application in the disk are backed up and overwritten before the performance test of the application, so as to ensure that the cache files are fixed each time the target application is performance tested, and avoid the disk status from affecting the performance test of the application.
[0067] In some embodiments, when the performance association module includes a clock module, curing the performance association module based on the curing configuration information may include: extracting a preset timestamp in the curing configuration information; and controlling the clock module to set the system time to the preset timestamp.
[0068] The preset timestamp may be a fixed system time that is preset. When the performance association module includes a clock module, the performance test device of the application may extract the preset timestamp corresponding to the clock module from the solidification configuration information, and the solidification processing of the clock module may be to control the clock module to set the system time to the preset timestamp, so that the system time is guaranteed to be the same each time the performance test is performed on the target application.
[0069] In the related technology, the code logic of some applications may depend on the system time, such as some judgments on the survival time (Time To Live, TTL) of cached content. If the test time is too long, the test may hit different cache conditions, resulting in different performance performances and inaccurate performance test results.
[0070] In this solution, by resetting the system time to the same timestamp through the clock module before each performance test, the different performance of the application caused by different system time can be avoided, thereby avoiding the impact on the performance test of the application.
[0071] In some embodiments, when the performance association module includes a network module, curing the performance association module based on the curing configuration information may include: extracting network connection information in the curing configuration information; and controlling the network module to connect to the target network environment based on the network connection information.
[0072] The network module may be a functional module in an electronic device for controlling network connection. The network connection information may be information required for presetting the connection to the target network environment. For example, the network connection information may be the specific name of the wireless fidelity (WiFi) network environment. The target network environment may be a relatively stable network environment where the performance test of the target application is performed. For example, the target network environment may be a mobile communication network environment or WIFI, etc., which may be set according to the actual situation.
[0073] When the performance association module includes a network module, the performance testing device of the application can extract the network connection information corresponding to the network module from the fixed configuration information. The fixed processing of the network module can be to control the network module to connect to the target network environment based on the network connection information, so that the network environment is the same each time the performance test of the target application is performed. In addition, the time for connecting to the target network can be controlled to be a fixed time.
[0074] In this solution, the same network environment is set before each performance test to avoid different performance of the application due to different networks, thereby avoiding the impact on the performance test of the application.
[0075] For example, Figure 3 A schematic diagram of a curing process provided by an embodiment of the present disclosure, such as Figure 3 As shown, the figure shows an electronic device 300 that installs and runs the target application. The performance association module included in the electronic device 300 may include a processor 301, a memory 302, a clock module 303, a network module 304, a pop-up module 305 and a disk 306. For each performance association module, solidification processing can be performed based on the method of the above embodiment, including processor solidification, memory solidification, clock solidification, network solidification, pop-up solidification and disk solidification in the figure, which can eliminate the impact of the electronic device on the performance test of the target application, solve the problem of performance instability, and improve the accuracy of the performance test of the application.
[0076] Figure 4 This is a schematic diagram of the structure of a performance testing device for an application provided in an embodiment of the present disclosure. The device can be implemented by software and / or hardware and can generally be integrated in an electronic device.
[0077] like Figure 4 As shown, the device comprises:
[0078] The acquisition module 401 is used to acquire the solidified configuration information in response to receiving a performance test request for a target application program;
[0079] A curing module 402, configured to perform curing processing on a performance association module based on the curing configuration information, wherein the performance association module includes a plurality of modules associated with a target performance of the target application in a terminal running the target application;
[0080] The testing module 403 is used to perform performance testing on the target application.
[0081] Optionally, the performance association module includes at least two of a processor, a memory, a disk, a clock module, a pop-up module and a network module.
[0082] Optionally, when the performance association module includes a processor, and the processor includes a central processing unit and a graphics processing unit, the curing module 402 is used to:
[0083] Extracting the curing frequency in the curing configuration information;
[0084] Turning off the controller of the central processing unit and locking the frequency of the central processing unit to a first frequency among the solidified frequencies;
[0085] The frequency of the graphics processor is locked to a second frequency among the fixed frequencies.
[0086] Optionally, when the performance association module includes a memory, the curing module 402 is used to:
[0087] Extracting the preset capacity in the solidified configuration information;
[0088] The cache data of all the applications in the memory are deleted, and / or a virtual partition of the preset capacity is mounted in the memory for the target application via a virtual file system.
[0089] Optionally, when the performance association module includes a disk, the curing module 402 is used to:
[0090] Extracting the cache file of the target application in the solidified configuration information;
[0091] The cache file of the target application is overwritten with the original file in the disk.
[0092] Optionally, when the performance association module includes a clock module, the curing module 402 is used to:
[0093] Extracting a preset timestamp in the solidified configuration information;
[0094] The clock module is controlled to set the system time to the preset timestamp.
[0095] Optionally, when the performance association module includes a pop-up window module, the curing module 402 includes:
[0096] The first unit is used to extract a tool identifier of a pop-up window control tool for the solidified configuration information;
[0097] The second unit is used to call the pop-up window control tool based on the tool identifier, and control the pop-up window module to close all pop-up windows through the pop-up window control tool.
[0098] Optionally, the second unit is used to:
[0099] When it is determined according to the tool identifier that the pop-up window control tool is installed outside the target application, when the pop-up window event of the pop-up window module is detected by the pop-up window control tool, a closing operation is performed on the pop-up window corresponding to the pop-up window event.
[0100] Optionally, the second unit is used to:
[0101] When it is determined according to the tool identifier that the pop-up window control tool is installed in the target application, the pop-up window control tool intercepts the pop-up window calling request of the pop-up window module when detecting the pop-up window calling request of the target application.
[0102] Optionally, when the performance association module includes a network module, the curing module 402 is used to:
[0103] Extracting network connection information from the solidified configuration information;
[0104] The network module is controlled to connect to a target network environment based on the network connection information.
[0105] The performance testing device for an application provided in the embodiments of the present disclosure can execute the performance testing method for an application provided in any embodiment of the present disclosure, and has functional modules and beneficial effects corresponding to the execution method.
[0106] The embodiments of the present disclosure also provide a computer program product, including a computer program / instruction, which, when executed by a processor, implements the performance testing method of the application provided by any embodiment of the present disclosure.
[0107] Figure 5 A schematic diagram of the structure of an electronic device provided in an embodiment of the present disclosure.
[0108] The following specific reference Figure 5 , which shows a schematic diagram of the structure of an electronic device 500 suitable for implementing the embodiment of the present disclosure. The electronic device 500 in the embodiment of the present disclosure may include but is not limited to mobile terminals such as mobile phones, notebook computers, digital broadcast receivers, PDAs (personal digital assistants), PADs (tablet computers), PMPs (portable multimedia players), vehicle terminals (such as vehicle navigation terminals), etc., and fixed terminals such as digital TVs, desktop computers, etc. Figure 5 The electronic device shown is only an example and should not bring any limitation to the functions and scope of use of the embodiments of the present disclosure.
[0109] like Figure 5As shown, the electronic device 500 may include a processing device (e.g., a central processing unit, a graphics processing unit, etc.) 501, which can perform various appropriate actions and processes according to a program stored in a read-only memory (ROM) 502 or a program loaded from a storage device 508 into a random access memory (RAM) 503. In the RAM 503, various programs and data required for the operation of the electronic device 500 are also stored. The processing device 501, the ROM 502, and the RAM 503 are connected to each other via a bus 504. An input / output (I / O) interface 505 is also connected to the bus 504.
[0110] Typically, the following devices may be connected to the I / O interface 505: an input device 506 including, for example, a touch screen, a touch pad, a keyboard, a mouse, a camera, a microphone, an accelerometer, a gyroscope, etc.; an output device 507 including, for example, a liquid crystal display (LCD), a speaker, a vibrator, etc.; a storage device 508 including, for example, a magnetic tape, a hard disk, etc.; and a communication device 509. The communication device 509 may allow the electronic device 500 to communicate with other devices wirelessly or by wire to exchange data. Although Figure 5 The electronic device 500 is shown with various devices, but it should be understood that it is not required to implement or possess all the devices shown. More or fewer devices may be implemented or possessed instead.
[0111] In particular, according to an embodiment of the present disclosure, the process described above with reference to the flowchart can be implemented as a computer software program. For example, an embodiment of the present disclosure includes a computer program product, which includes a computer program carried on a non-transitory computer-readable medium, and the computer program contains program code for executing the method shown in the flowchart. In such an embodiment, the computer program can be downloaded and installed from a network through a communication device 509, or installed from a storage device 508, or installed from a ROM 502. When the computer program is executed by the processing device 501, the above-mentioned functions defined in the performance testing method of the application program of the embodiment of the present disclosure are executed.
[0112] It should be noted that the computer-readable medium disclosed above may be a computer-readable signal medium or a computer-readable storage medium or any combination of the above two. The computer-readable storage medium may be, for example, but not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or device, or any combination of the above. More specific examples of computer-readable storage media may include, but are not limited to: an electrical connection with one or more wires, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above. In the present disclosure, a computer-readable storage medium may be any tangible medium containing or storing a program that may be used by or in combination with an instruction execution system, device or device. In the present disclosure, a computer-readable signal medium may include a data signal propagated in a baseband or as part of a carrier wave, in which a computer-readable program code is carried. This propagated data signal may take a variety of forms, including but not limited to an electromagnetic signal, an optical signal, or any suitable combination of the above. The computer readable signal medium may also be any computer readable medium other than a computer readable storage medium, which may send, propagate or transmit a program for use by or in conjunction with an instruction execution system, apparatus or device. The program code contained on the computer readable medium may be transmitted using any suitable medium, including but not limited to: wires, optical cables, RF (radio frequency), etc., or any suitable combination of the above.
[0113] In some embodiments, the client and the server may communicate using any currently known or future developed network protocol such as HTTP (HyperText Transfer Protocol), and may be interconnected with any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network ("LAN"), a wide area network ("WAN"), an internet (e.g., the Internet), and a peer-to-peer network (e.g., an ad hoc peer-to-peer network), as well as any currently known or future developed network.
[0114] The computer-readable medium may be included in the electronic device, or may exist independently without being incorporated into the electronic device.
[0115] The above-mentioned computer-readable medium carries one or more programs. When the above-mentioned one or more programs are executed by the electronic device, the electronic device: obtains fixed configuration information in response to receiving a performance test request for a target application; performs fixed processing on a performance association module based on the fixed configuration information, wherein the performance association module includes multiple modules associated with the target performance of the target application in a terminal running the target application; and performs performance testing on the target application.
[0116] Computer program code for performing the operations of the present disclosure may be written in one or more programming languages or a combination thereof, including, but not limited to, object-oriented programming languages, such as Java, Smalltalk, C++, and conventional procedural programming languages, such as "C" or similar programming languages. The program code may be executed entirely on the user's computer, partially on the user's computer, as a separate software package, partially on the user's computer and partially on a remote computer, or entirely on a remote computer or server. In cases involving a remote computer, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or may be connected to an external computer (e.g., through the Internet using an Internet service provider).
[0117] The flow chart and block diagram in the accompanying drawings illustrate the possible architecture, function and operation of the system, method and computer program product according to various embodiments of the present disclosure. In this regard, each square box in the flow chart or block diagram can represent a module, a program segment or a part of a code, and the module, the program segment or a part of the code contains one or more executable instructions for realizing the specified logical function. It should also be noted that in some implementations as replacements, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two square boxes represented in succession can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be implemented with a dedicated hardware-based system that performs a specified function or operation, or can be implemented with a combination of dedicated hardware and computer instructions.
[0118] The units involved in the embodiments described in the present disclosure may be implemented by software or hardware, wherein the name of a unit does not, in some cases, limit the unit itself.
[0119] The functions described above herein may be performed at least in part by one or more hardware logic components. For example, without limitation, exemplary types of hardware logic components that may be used include: field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), complex programmable logic devices (CPLDs), and the like.
[0120] In the context of the present disclosure, a machine-readable medium may be a tangible medium that may contain or store a program for use by or in conjunction with an instruction execution system, device, or equipment. A machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium may include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device, or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0121] It is understandable that before using the technical solutions disclosed in the embodiments of the present disclosure, the types, scope of use, usage scenarios, etc. of the information involved in the present disclosure should be informed to the user and the user's authorization should be obtained in an appropriate manner in accordance with relevant laws and regulations.
[0122] The above description is only a preferred embodiment of the present disclosure and an explanation of the technical principles used. Those skilled in the art should understand that the scope of disclosure involved in the present disclosure is not limited to the technical solutions formed by a specific combination of the above technical features, but should also cover other technical solutions formed by any combination of the above technical features or their equivalent features without departing from the above disclosed concept. For example, the above features are replaced with the technical features with similar functions disclosed in the present disclosure (but not limited to) by each other to form a technical solution.
[0123] In addition, although each operation is described in a specific order, this should not be understood as requiring these operations to be performed in the specific order shown or in a sequential order. Under certain circumstances, multitasking and parallel processing may be advantageous. Similarly, although some specific implementation details are included in the above discussion, these should not be interpreted as limiting the scope of the present disclosure. Some features described in the context of a separate embodiment can also be implemented in a single embodiment in combination. On the contrary, the various features described in the context of a single embodiment can also be implemented in multiple embodiments individually or in any suitable sub-combination mode.
[0124] Although the subject matter has been described in language specific to structural features and / or methodological logical actions, it should be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or actions described above. On the contrary, the specific features and actions described above are merely example forms of implementing the claims.
Claims
1. A performance testing method for an application, characterized in that: include: In response to receiving a performance test request for a target application, obtaining solidified configuration information; Performing curing processing on the performance association module based on the curing configuration information, wherein the performance association module includes a plurality of modules associated with the target performance of the target application in the terminal running the target application; A performance test is performed on the target application.
2. The method according to claim 1, characterized in that When the performance association module includes a processor, and the processor includes a central processing unit and a graphics processing unit, the performance association module is solidified based on the solidified configuration information, including: Extracting the curing frequency in the curing configuration information; Turning off the controller of the central processing unit and locking the frequency of the central processing unit to a first frequency among the solidified frequencies; The frequency of the graphics processor is locked to a second frequency among the fixed frequencies.
3. The method according to claim 1, characterized in that When the performance association module includes a memory, the performance association module is solidified based on the solidified configuration information, including: Extracting the preset capacity in the solidified configuration information; The cache data of all the applications in the memory are deleted, and / or a virtual partition of the preset capacity is mounted in the memory for the target application via a virtual file system.
4. The method according to claim 1, characterized in that: When the performance association module includes a disk, the performance association module is solidified based on the solidified configuration information, including: Extracting the cache file of the target application in the solidified configuration information; The cache file of the target application is overwritten with the original file in the disk.
5. The method according to claim 1, characterized in that When the performance association module includes a clock module, the performance association module is solidified based on the solidified configuration information, including: Extracting a preset timestamp in the solidified configuration information; The clock module is controlled to set the system time to the preset timestamp.
6. The method according to claim 1, characterized in that When the performance association module includes a pop-up window module, the performance association module is solidified based on the solidified configuration information, including: Extracting a tool identifier of a pop-up window control tool for the solidified configuration information; The pop-up window control tool is called based on the tool identifier, and the pop-up window module is controlled by the pop-up window control tool to close all pop-up windows.
7. The method according to claim 6, characterized in that Controlling the pop-up window module to close all pop-up windows by the pop-up window control tool includes: When it is determined according to the tool identifier that the pop-up window control tool is installed outside the target application, when the pop-up window event of the pop-up window module is detected by the pop-up window control tool, a closing operation is performed on the pop-up window corresponding to the pop-up window event.
8. The method according to claim 6, characterized in that Controlling the pop-up window module to close all pop-up windows by the pop-up window control tool includes: When it is determined according to the tool identifier that the pop-up window control tool is installed in the target application, the pop-up window control tool intercepts the pop-up window calling request of the pop-up window module when detecting the pop-up window calling request of the target application.
9. The method according to claim 1, characterized in that: When the performance association module includes a network module, the performance association module is solidified based on the solidified configuration information, including: Extracting network connection information from the solidified configuration information; The network module is controlled to connect to a target network environment based on the network connection information.
10. A performance testing device for an application, characterized in that: include: An acquisition module, configured to acquire the solidified configuration information in response to receiving a performance test request for a target application program; A curing module, used for curing the performance association module based on the curing configuration information, wherein the performance association module includes a plurality of modules associated with the target performance of the target application in the terminal running the target application; The test module is used to perform performance testing on the target application.
11. An electronic device, characterized in that: The electronic device comprises: processor; a memory for storing instructions executable by the processor; The processor is used to read the executable instructions from the memory and execute the instructions to implement the performance testing method of the application program described in any one of claims 1-9.
12. A computer-readable storage medium, characterized in that: The storage medium stores a computer program, and the computer program is used to execute the performance testing method of the application program described in any one of claims 1 to 9.