CN117093466B - Performance test method and device, electronic equipment and storage medium - Google Patents

Performance test method and device, electronic equipment and storage medium Download PDF

Info

Publication number
CN117093466B
CN117093466B CN202311356260.8A CN202311356260A CN117093466B CN 117093466 B CN117093466 B CN 117093466B CN 202311356260 A CN202311356260 A CN 202311356260A CN 117093466 B CN117093466 B CN 117093466B
Authority
CN
China
Prior art keywords
target
test
virtual objects
picture
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202311356260.8A
Other languages
Chinese (zh)
Other versions
CN117093466A (en
Inventor
郑昊焜
杨帆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202311356260.8A priority Critical patent/CN117093466B/en
Publication of CN117093466A publication Critical patent/CN117093466A/en
Application granted granted Critical
Publication of CN117093466B publication Critical patent/CN117093466B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3457Performance evaluation by simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/302Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a software system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • G06F11/3093Configuration details thereof, e.g. installation, enabling, spatial arrangement of the probes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/3476Data logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/865Monitoring of software
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The application relates to a performance test method, a performance test device, electronic equipment and a storage medium. The method includes responding to a received first test file, and executing the first test file; receiving target object data sent by the tested terminal; and generating and executing a second test file based on the object information of each of the plurality of target virtual objects. The application provides a targeted performance test scheme. Compared with the related art, which focuses on simulating different load conditions and different pressure conditions, the performance test is performed through hiding/recovering the dimension of the virtual object, so that the accuracy of performance optimization of the target application can be improved. The object screening rule can realize the attention to the target virtual object with more importance, thereby hiding/recovering the target virtual object, and improving the performance test efficiency. The embodiment of the application can be applied to various scenes such as cloud technology, artificial intelligence, intelligent traffic, intelligent entertainment and the like.

Description

Performance test method and device, electronic equipment and storage medium
Technical Field
The present disclosure relates to the field of internet communications technologies, and in particular, to a performance testing method, a performance testing device, an electronic device, and a storage medium.
Background
With the development of internet communication technology, various internet products (such as application programs and the like) are layered endlessly, and the internet products provide rich use experience for users. And testing the performance of the Internet product, thereby being beneficial to guaranteeing the quality of the Internet product. In the related art, in the performance test for the target application, the test condition is simulated, and then performance optimization is performed on the application program through the performance data (such as frame rate, CPU usage data, memory usage data, GPU usage data, etc.) of the device in the process of running the application program. Often simulated test conditions are focused on different load conditions, different pressure conditions. However, such performance testing lacks pertinence, which can affect the accuracy of performance optimization. Thus, there is a need to provide more targeted performance testing schemes.
Disclosure of Invention
In order to solve at least one technical problem set forth above, the present application provides a performance testing method, a device, an electronic apparatus, and a storage medium:
according to a first aspect of the present application, a performance testing method is provided and applied to a testing end, a communication relationship is established between the testing end and a tested end, the tested end runs a target application, and the method includes:
Executing a first test file in response to the received first test file, wherein the first test file is used for guiding the tested terminal to provide object data of a display picture of the target application, the first test file comprises picture description information and object screening rules, and the object screening rules comprise at least one of the following: rules based on distance from the camera, rules based on relation to camera view angle, rules based on rendering conditions in historical time;
receiving target object data sent by the tested end, wherein the target object data comprises object information of each of a plurality of target virtual objects in a target picture, the target picture is determined based on the picture description information, the target picture comprises a plurality of candidate virtual objects, and the plurality of target virtual objects are determined from the plurality of candidate virtual objects based on the object screening rule;
generating and executing a second test file based on the object information of each of the plurality of target virtual objects, wherein the second test file is used for guiding the tested terminal to provide performance data difference information corresponding to each of the target virtual objects, the second test file comprises a plurality of test logics, the plurality of test logics are in one-to-one correspondence with the plurality of target virtual objects, and the test logics indicate that the performance data difference information is obtained by hiding the target virtual objects and canceling hiding the target virtual objects.
According to a second aspect of the present application, a performance testing method is provided, and is applied to a tested terminal, where the tested terminal runs a target application, and a communication relationship is established between the tested terminal and the testing terminal, and the method includes:
under the condition that the testing end executes the received first testing file, a first task, picture description information and object screening rules are received, wherein the first task indicates object data for providing a display picture of the target application, and the object screening rules comprise at least one of the following: rules based on distance from the camera, rules based on relation to camera view angle, rules based on rendering conditions in historical time;
executing the first task based on the picture description information and the object screening rule to obtain target object data and sending the target object data to the test end, wherein the target object data comprises object information of each of a plurality of target virtual objects in a target picture, the target picture is determined based on the picture description information, the target picture comprises a plurality of candidate virtual objects, and the plurality of target virtual objects are determined from the plurality of candidate virtual objects based on the object screening rule;
And under the condition that the testing end executes a second testing file, a second task and a plurality of testing logics are received, wherein the second testing file is generated by the testing end based on respective object information of the plurality of target virtual objects, the second task indicates to provide performance data difference information corresponding to each target virtual object, the plurality of testing logics are in one-to-one correspondence with the plurality of target virtual objects, and the testing logics indicate to acquire the performance data difference information through hiding the target virtual objects and canceling hiding the target virtual objects.
According to a third aspect of the present application, there is provided a performance testing apparatus configured at a testing end, where a communication relationship is established between the testing end and a tested end, and the tested end runs a target application, the apparatus includes:
the first file executing module: the method comprises the steps of responding to a received first test file, executing the first test file, wherein the first test file is used for guiding the tested terminal to provide object data of a display picture of the target application, the first test file comprises picture description information and object screening rules, and the object screening rules comprise at least one of the following: rules based on distance from the camera, rules based on relation to camera view angle, rules based on rendering conditions in historical time;
An object data receiving module: the target object data are used for receiving target object data sent by the tested end, the target object data comprise object information of each of a plurality of target virtual objects in a target picture, the target picture is determined based on the picture description information, the target picture comprises a plurality of candidate virtual objects, and the plurality of target virtual objects are determined from the plurality of candidate virtual objects based on the object screening rules;
and a second file executing module: the second test file is used for guiding the tested terminal to provide performance data difference information corresponding to each target virtual object, the second test file comprises a plurality of test logics, the plurality of test logics are in one-to-one correspondence with the plurality of target virtual objects, and the test logics indicate to acquire the performance data difference information through hiding the target virtual objects and unhidding the target virtual objects.
According to a fourth aspect of the present application, there is provided a performance testing apparatus configured at a tested end, the tested end running a target application, the tested end and the testing end establishing a communication relationship therebetween, the apparatus comprising:
A first data receiving module: the method comprises the steps that under the condition that the testing end executes a received first testing file, a first task, picture description information and object screening rules are received, the first task indicates object data for providing a display picture of the target application, and the object screening rules comprise at least one of the following: rules based on distance from the camera, rules based on relation to camera view angle, rules based on rendering conditions in historical time;
the task execution module: the target frame is used for executing the first task based on the frame description information and the object screening rule to obtain target object data and send the target object data to the testing end, wherein the target object data comprises object information of each of a plurality of target virtual objects in a target frame, the target frame is determined based on the frame description information, the target frame comprises a plurality of candidate virtual objects, and the plurality of target virtual objects are determined from the plurality of candidate virtual objects based on the object screening rule;
and a second data receiving module: the method comprises the steps that under the condition that a second test file is executed by the test end, a second task and a plurality of test logics are received, the second test file is generated by the test end based on object information of each of a plurality of target virtual objects, the second task indicates to provide performance data difference information corresponding to each target virtual object, the plurality of test logics are in one-to-one correspondence with the plurality of target virtual objects, and the test logics indicate to acquire the performance data difference information through hiding the target virtual objects and canceling hiding the target virtual objects.
According to a fifth aspect of the present application, there is provided an electronic device comprising at least one processor, and a memory communicatively connected to the at least one processor; wherein the memory stores at least one instruction or at least one program loaded and executed by the at least one processor to implement the performance test method according to the first aspect or the performance test method according to the second aspect.
According to a sixth aspect of the present application, there is provided a computer readable storage medium having stored therein at least one instruction or at least one program loaded and executed by a processor to implement the performance test method according to the first aspect or the performance test method according to the second aspect.
According to a seventh aspect of the present application, there is provided a computer program product comprising at least one instruction or at least one program, the at least one instruction or at least one program being loaded and executed by a processor to implement a performance test method as described in the first aspect, or a performance test method as described in the second aspect.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the application.
The application has the following beneficial effects:
the application provides a targeted performance test scheme. Compared with the related art, which focuses on simulating different load conditions and different pressure conditions, the performance test is performed through hiding/recovering the dimension of the virtual object, so that the accuracy of performance optimization of the target application can be improved. According to the method and the device, performance testing of the target application is achieved between the testing end and the tested end through execution of the first testing file and the second testing file and transmission of the target object data, and interaction of the testing end and the tested end provides support for convenience of performance testing. Meanwhile, attention to the target virtual object with more importance can be realized through the object screening rule, so that the target virtual object is hidden/restored, and the performance testing efficiency can be improved.
Other features and aspects of the present application will become apparent from the following detailed description of exemplary embodiments, which proceeds with reference to the accompanying drawings.
Drawings
In order to more clearly illustrate the technical solutions and advantages of embodiments of the present application or of the prior art, the following description will briefly introduce the drawings that are required to be used in the embodiments or the prior art descriptions, it is obvious that the drawings in the following description are only some embodiments of the present application, and other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 illustrates an application environment schematic according to an embodiment of the present application;
FIG. 2 shows a flow diagram of a performance testing method according to an embodiment of the present application;
FIG. 3 also illustrates an application environment schematic according to an embodiment of the present application;
FIG. 4 also shows a flow diagram of a performance testing method according to an embodiment of the present application;
fig. 5 shows a flowchart of determining a target screen according to an embodiment of the present application;
FIG. 6 shows a block diagram of an apparatus according to an embodiment of the present application;
FIG. 7 also shows a block diagram of an apparatus according to an embodiment of the present application;
FIG. 8 illustrates an interface schematic for hiding a target virtual object according to an embodiment of the present application;
FIG. 9 illustrates an interface diagram for restoring a target virtual object according to an embodiment of the present application;
fig. 10 shows a schematic diagram of an electronic device according to an embodiment of the application.
Detailed Description
The following description of the embodiments of the present application will be made clearly and fully with reference to the accompanying drawings, in which it is evident that the embodiments described are only some, but not all, of the embodiments of the present application. All other embodiments, which can be made by one of ordinary skill in the art without undue burden from the present disclosure, are within the scope of the present application based on the embodiments herein.
It should be noted that the terms "first," "second," and the like in the description and claims of the present application and the above figures are used for distinguishing between similar objects and not necessarily for describing a particular sequential or chronological order. It is to be understood that the data so used may be interchanged where appropriate such that embodiments of the present application described herein may be implemented in sequences other than those illustrated or otherwise described herein. Furthermore, the terms "comprises," "comprising," and "having," and any variations thereof, are intended to cover a non-exclusive inclusion, such that a process, method, system, article, or server that comprises a list of steps or elements is not necessarily limited to those steps or elements expressly listed or inherent to such process, method, article, or apparatus, but may include other steps or elements not expressly listed or inherent to such process, method, article, or apparatus.
Various exemplary embodiments, features and aspects of the present application will be described in detail below with reference to the accompanying drawings. In the drawings, like reference numbers indicate identical or functionally similar elements. Although various aspects of the embodiments are illustrated in the accompanying drawings, the drawings are not necessarily drawn to scale unless specifically indicated.
The word "exemplary" is used herein to mean "serving as an example, embodiment. Any embodiment described herein as "exemplary" is not necessarily to be construed as preferred or advantageous over other embodiments.
The term "and/or" is herein merely an association relationship describing an associated object, meaning that there may be three relationships, e.g., a and/or B, may represent: a exists alone, A and B exist together, and B exists alone. In addition, the term "at least one" herein means any one of a plurality or any combination of at least two of a plurality, for example, including at least one of A, B, C, and may mean including any one or more elements selected from the group consisting of A, B and C.
Furthermore, numerous specific details are set forth in the following detailed description in order to provide a better understanding of the present application. It will be understood by those skilled in the art that the present application may be practiced without some of these specific details. In some instances, methods, means, elements, and circuits have not been described in detail as not to unnecessarily obscure the present application.
Before further describing embodiments of the present application in detail, the terms and expressions that are referred to in the embodiments of the present application are described, and are suitable for the following explanation.
Performance test: the method is characterized in that various performance indexes of the system are tested by simulating various normal, peak and abnormal load conditions through a testing tool.
The object is: the object has a unique identifier, and the object includes attributes (Properties) which are information to be memorized, and Methods (Methods) which are services that the object can provide. In Object Oriented software, an Object (Object) is an Instance (Instance) of a Class (Class).
Referring to fig. 1, fig. 1 shows a schematic view of an application environment according to an embodiment of the present application, where a test end and a tested end may be included in the application environment. The test end and the tested end can be directly or indirectly connected through a wired or wireless communication mode. The tested end runs the target application. Performance testing of the target application may include the steps of: firstly, responding to a received first test file, executing the first test file by a test end, wherein the first test file is used for guiding a tested end to provide object data of a display picture of a target application, the first test file comprises picture description information and object screening rules, and the object screening rules comprise at least one of the following: rules based on distance from the camera, rules based on relation to camera view angle, rules based on rendering conditions in historical time; then, receiving target object data sent by a tested end, wherein the target object data comprises object information of each of a plurality of target virtual objects in a target picture, the target picture is determined based on picture description information, the target picture comprises a plurality of candidate virtual objects, and the plurality of target virtual objects are determined from the plurality of candidate virtual objects based on object screening rules; and generating and executing a second test file based on the object information of each of the plurality of target virtual objects, wherein the second test file is used for guiding the tested terminal to provide performance data difference information corresponding to each target virtual object, the second test file comprises a plurality of test logics, the plurality of test logics are in one-to-one correspondence with the plurality of target virtual objects, and the test logics indicate that the performance data difference information is obtained through hiding the target virtual objects and canceling hiding the target virtual objects. It should be noted that fig. 1 is only an example.
The testing end and the tested end can be smart phones, computers (such as desktop computers, tablet computers and notebook computers), augmented reality (augmented reality, AR)/Virtual Reality (VR) devices, digital assistants, intelligent voice interaction devices (such as intelligent sound boxes), intelligent wearable devices, intelligent household appliances, vehicle terminals and other entity devices. The operating systems of the test end and the tested end can be Android systems, iOS systems (mobile operating systems developed by apple corporation), linux systems (an operating system), microsoft Windows systems (microsoft windows operating system), and the like.
The performance testing scheme provided by the embodiments of the present application may be used with techniques related to artificial intelligence (Artificial Intelligence, AI). Artificial intelligence is the theory, method, technique and application system that uses a digital computer or a digital computer-controlled machine to simulate, extend and expand human intelligence, sense the environment, acquire knowledge and use the knowledge to obtain optimal results. In other words, artificial intelligence is an integrated technology of computer science that attempts to understand the essence of intelligence and to produce a new intelligent machine that can react in a similar way to human intelligence. Artificial intelligence, i.e. research on design principles and implementation methods of various intelligent machines, enables the machines to have functions of sensing, reasoning and decision. The artificial intelligence technology is a comprehensive subject, and relates to the technology with wide fields, namely the technology with a hardware level and the technology with a software level. Artificial intelligence infrastructure technologies generally include, for example, sensors, dedicated artificial intelligence chips, cloud computing, distributed storage, big data processing technologies, pre-training model technologies, operation/interaction systems, mechatronics, and the like. The pre-training model is also called a large model and a basic model, and can be widely applied to all large-direction downstream tasks of artificial intelligence after fine adjustment. The artificial intelligence software technology mainly comprises a computer vision technology, a voice processing technology, a natural language processing technology, machine learning/deep learning and other directions. For example, for the received performance data difference information corresponding to each target virtual object, the test end may utilize the relevant AI model to predict the target virtual object capable of contributing to greater performance optimization.
In practical applications, the target application may be a game application, and the game type provided by the game application may be ACT (action), risk, RPG (Role-playing game), narrative, strategy, FPS (First-person shooter), combat, puzzle, street machine, science fiction, open world, survival, etc. Gaming applications include, but are not limited to, hand-play and end-play. Of course, the target application may also be an e-commerce application, a navigation application, an audio-video application, and the like.
It should be noted that, for the first test file and the like having an association relationship with the user information, when the embodiments of the present application are applied to specific products or technologies, user permission or consent needs to be obtained, and the collection, use and processing of the relevant data need to comply with relevant laws and regulations and standards of relevant countries and regions.
Fig. 2 shows a flow chart of a performance testing method according to an embodiment of the present application, as shown in fig. 2, the method includes:
s201: executing a first test file in response to the received first test file, wherein the first test file is used for guiding the tested terminal to provide object data of a display picture of the target application, the first test file comprises picture description information and object screening rules, and the object screening rules comprise at least one of the following: rules based on distance from the camera, rules based on relation to camera view angle, rules based on rendering conditions in historical time;
In the embodiment of the present application, steps S201 to S203 provide a performance test scheme for the target application with the test end as the execution body, and correspondingly, the performance test scheme is applied to the test end. A communication relationship is established between the test end and the tested end, and the tested end runs the target application, and reference can be made to fig. 1. It can be understood that the testing end dominates the performance test of the target application, the testing end issues tasks to the tested end through the execution of the test file, and the tested end collects data related to the target application according to task requirements and returns the data to the testing end. The interaction between the testing end and the tested end supports the smooth development of the performance test, the adjustment of the testing link based on the service requirement and the like.
The first test file may be generated with the participation of a target object (e.g., a target user). For example, the related device provides an interactive interface, and the staff triggers a first type control on the interactive interface to generate the picture description information and the object screening rule. And the staff triggers a second type control on the interactive interface to realize the generation and the transmission of the first test file. The first test file is generated based on the picture description information, the object screening rule, and the first test task information. The relevant device may be a testing end, where the sending of the first test file may be understood as being sent by one module of the testing end (e.g. the module responsible for directing the generation of the test file) to another module (e.g. the module responsible for executing the test file). The relevant device may also be other than the testing terminal, where the sending of the first test file, that is, the sending of the first test file to the testing terminal by the other device, is performed. Of course, other devices may be the tested end, or may be devices other than the tested end and the tested end.
The test terminal receives the first test file and executes the first test file. The first test file is used for guiding the tested terminal to provide object data of the display picture of the target application. And combining the first test file to generate based on the picture description information, the object screening rule and the first test task information, wherein the first test task information is used for indicating a task which is required to be issued to the tested terminal by the tested terminal, and the task is to enable the tested terminal to collect and return the object data of the display picture of the target application. If the task indicated by the first test task information is a preset task, the object data of the display screen of the running application program is collected and returned. Then, the picture description information and the object screening rule refine a preset task specifically. Therefore, when the tested end definitely executes the preset task, the source range of the object data needs to be determined according to the picture description information: a target picture; it is necessary to determine the object to which the object data belongs according to the object screening rule.
The picture description information provides basis for determining the target picture, namely, the determination of the target picture can be realized through the picture description information. The basis provided can indicate a certain display picture of the target application; the provided basis may also indicate at least one presentation of the target application. For example, the picture description information may be description information of a time dimension, such as a picture shown in xx seconds after the target application is started. The screen description information may also indicate an abnormal screen that has not occurred, such as a screen when a click occurs in the operation of the target application as a target screen. The picture description information can also be description information of a service scene of a combined target application, such as taking any display picture related to the game level A service as a target picture. The different categories of the picture description information are not limited to the picture description information of the different categories provided herein, and the picture description information of the different categories may be used alone or in combination.
The object screening rule provides basis for determining the target virtual object from the target virtual object, namely, the target virtual object can be determined from a plurality of candidate virtual objects included in the target picture through the picture screening rule. The object screening rules include at least one of: rules based on distance from the camera, rules based on relationship to camera view, rules based on rendering conditions over historical time. It can be understood that the display screen of the target application is a shooting result of the application scene by the preset camera. Often, the presentation includes a plurality of virtual objects that are rendered for presentation, which may be character objects, model objects, UI objects, and the like. If the target picture comprises a plurality of candidate virtual objects, when a rule based on the distance between the candidate virtual objects and the camera is used, whether the candidate virtual objects can be used as the target virtual objects or not can be determined according to the distance between the candidate virtual objects and the preset camera; using rules based on relationships to camera perspectives, it may be determined whether a candidate virtual object is available as a target virtual object based on its relationship to camera perspectives; using rules based on rendering conditions over historical time, it may be determined whether a candidate virtual object may be a target virtual object based on its rendering conditions over historical time. The object screening rules provide screening indexes with different dimensions which can be selected and combined, and can improve the adaptability of screening the target virtual objects with higher importance. If the object filtering rules of at least two classes are used, it may be specified whether the target virtual object is required to conform to the object filtering rules of all classes or some classes in order to avoid collision.
Whether a candidate virtual object is important or not may depend on its performance on the target visual presentation (e.g., occupying a larger visual area) or may depend on the requirements of the test phase to which it belongs (e.g., the performance test prior to the test phase, which has focused on virtual objects occupying a larger visual area, and which requires focusing on virtual objects occupying a smaller visual area). Accordingly, when a rule based on a distance from the camera is used, a candidate virtual object having a distance equal to or greater than a distance threshold may be used as the target virtual object, or a candidate virtual object having a distance less than the distance threshold may be used as the target virtual object. When a rule based on a relationship with the camera view angle is used, a candidate virtual object distant from the camera view angle may be taken as a target virtual object, and a candidate virtual object close to or even at the camera view angle may be taken as a target virtual object. When the rule based on the rendering condition in the history time is used, the candidate virtual object with the rendering frequency less than or equal to the frequency threshold value can be used as the target virtual object, and the candidate virtual object with the rendering frequency greater than the frequency threshold value can be used as the target virtual object; the candidate virtual object with the rendering time less than or equal to the time length threshold value can be used as the target virtual object, and the candidate virtual object with the rendering time less than or equal to the time length threshold value can be used as the target virtual object.
S202: receiving target object data sent by the tested end, wherein the target object data comprises object information of each of a plurality of target virtual objects in a target picture, the target picture is determined based on the picture description information, the target picture comprises a plurality of candidate virtual objects, and the plurality of target virtual objects are determined from the plurality of candidate virtual objects based on the object screening rule;
in the embodiment of the application, the test end receives the target object data sent by the tested end. And combining the related records in the step S201, and collecting and returning object data of the display picture of the target application by the tested end according to the task requirement. The tested terminal determines the object source range of the object data according to the picture description information: a target picture; and determining the object to which the object data belongs according to the object screening rule. The use of the picture description information and the object filtering rule may refer to the above, and will not be described in detail. The target object data includes object information of each of a plurality of target virtual objects in the target screen. The object information may be an object identification, such as an object name.
S203: generating and executing a second test file based on the object information of each of the plurality of target virtual objects, wherein the second test file is used for guiding the tested terminal to provide performance data difference information corresponding to each of the target virtual objects, the second test file comprises a plurality of test logics, the plurality of test logics are in one-to-one correspondence with the plurality of target virtual objects, and the test logics indicate that the performance data difference information is obtained by hiding the target virtual objects and canceling hiding the target virtual objects.
In the embodiment of the application, the test terminal generates and executes the second test file based on the object information of each of the plurality of target virtual objects. The second test file is used for guiding the tested terminal to provide performance data difference information corresponding to each target virtual object. Similar to the first test file, the second test file may be generated based on a plurality of test logics and second test task information, where the second test task information is used to indicate a task that the test end needs to issue to the tested end, and the task is to enable the tested end to collect and return performance data difference information of the target virtual object. And if the task indicated by the second test task information is a preset task, acquiring and returning the performance data difference information of the target virtual object in the target picture of the running application program. Then, the plurality of test logic performs specific refinement on one preset task. Therefore, when the tested end definitely executes the preset task, the performance data difference information of the target virtual object needs to be obtained according to the test logic.
The second test file is generated by the test terminal, and the test terminal can determine a specific mode of hiding/recovering the target virtual object according to the object information of the target virtual object. Hiding/restoring the target virtual object, aiming at not rendering the target virtual object before and letting the logical computing overhead of the target virtual object be smaller than a threshold value, and then restoring the logical computing overhead of rendering the target virtual object and the target virtual object, refer to fig. 8 and 9. The specific modes for hiding/recovering the different target virtual objects can be different, and correspondingly, the specific modes for hiding/recovering the target virtual objects in different test logics can be different, so that the effectiveness of hiding/recovering the target virtual objects is guaranteed, and the accuracy and the efficiency of acquiring the performance data difference information are guaranteed. The type of the target virtual object (such as a role object, a model object, a UI object or other types of objects) can be determined according to the object information of the target virtual object and the development document of the target application, and a hiding/recovering mode related to the type of object in the development of the target application is used as a specific mode for hiding/recovering the target virtual object. And determining the associated object of the target virtual object according to the object information of the target virtual object and the development document of the target application, and taking the hiding/recovering modes of the target virtual object and the associated object of the target virtual object in the development of the target application as specific modes for hiding/recovering the target virtual object. The associated object may be a virtual object that is not yet shown in the target picture but has a performance overhead of the target picture. The performance data difference information of the target virtual object may be a frame rate (FPS) change value, a CPU usage change value, a memory usage change value, a GPU usage change value, a frame rendering time (frame time) change value, etc. due to concealment/restoration.
The embodiments of the present application will be described in detail below.
As a possible implementation manner, for the foregoing step S201, the test end includes a first module, the target application includes an engine module and a second module, a communication relationship is established between the first module and the second module, and executing the first test file includes: and executing the first test file by using the first module to send the picture description information and the object screening rule to the engine module through the second module.
For the foregoing step S202, the receiving the target object data sent by the tested end includes: and receiving the target object data sent by the second module by using the first module, wherein the target object data is generated by the engine module based on the picture description information and the object screening rule and is sent to the second module.
Illustratively, as shown in fig. 3, the communication relationship established between the testing end and the tested end may be implemented through interaction between a first module located at the testing end and a second module located at the tested end. The first module may be a test application running on the test side and the second module may be an SDK embedded in the target application. Communication between the first module and the second module may be implemented in a Socket-based manner. The target application comprises a second module and an engine module, wherein the engine module is mainly responsible for rendering the display screen of the target application. The communication between the second module and the engine module may employ the TCP protocol. The calling of the engine module may be achieved by calling a second module, such as by several commands to achieve a convenient call.
On this basis, the essence of the test end executing the first test file is that the first module executes the first test file. Because the first test file is used for guiding the tested terminal to provide the object data of the display picture of the target application, the first module executes the task to be issued to the tested terminal by the first test file, specifically: the first module sends the picture description information and the object screening rule to the second module, and the second module forwards the picture description information and the object screening rule to the engine module. The engine module is used as an actual executive party for collecting object data of a display picture of a target application according to task requirements and is used as an initiator for returning the object data, and specifically comprises the following steps: the engine module generates target object data based on the picture description information and the object screening rule and sends the target object data to the second module. The second module then sends the target object data to the first module. Accordingly, the essence of the test end receiving the target object data is that the first module receives the target object data.
In combination with the first test task information described in the step S201, the first module may also send the picture description information, the object screening rule, and the first test task information to the second module, and the second module forwards the picture description information, the object screening rule, and the first test task information to the engine module. The engine module may also generate target object data based on the picture description information, the object screening rule, and the first test task information, and send the target object data to the second module. The second module then sends the target object data to the first module.
The engine module mainly responsible for the display picture rendering of the target application is used for acquiring target object data, so that the effectiveness and convenience of acquiring the object information of the virtual object are improved, and the object information acquisition mode has good adaptability to tested ends of different equipment types. Such an acquisition manner is also beneficial to ensuring standardization of the form of the object information (such as the object name format) for the object information of different virtual objects. Meanwhile, a target picture is determined by the engine module based on the picture description information, and a plurality of target virtual objects are determined from a plurality of candidate virtual objects of the target picture based on the object screening rule. The participation of the engine module can also avoid the omission of a plurality of candidate virtual objects, because the omission can cause the limitation of performance test, thereby affecting the comprehensiveness of the performance data analysis. Such as missing the presentation effect on the target visual presentation, there is still a virtual object consumed by the logical computation, which may be an AI character behind the camera. In addition, when the target application displays the target picture, the engine module can acquire the real-time object information, thereby being beneficial to the efficiency of performance test.
Further, the executing the second test file may include the following steps: executing the second test file by using the first module, sending the plurality of test logics to the engine module by using the second module, and acquiring a difference information set by using the engine module based on the plurality of test logics, wherein the difference information set comprises performance data difference information corresponding to each target virtual object.
The essence of the test end executing the second test file is that the first module executes the second test file. Because the second test file is used for guiding the tested terminal to provide the performance data difference information corresponding to each target virtual object, the first module executes the task to be issued to the tested terminal by the second test file, specifically: the first module sends the plurality of test logics to the second module, and the second module forwards the plurality of test logics to the engine module. The engine module is used as an actual executive party for collecting the performance data difference information of the target virtual object according to the task requirement and is used as an initiator for returning the performance data difference information, and specifically comprises the following steps: the engine module obtains the difference information set based on the plurality of test logics and sends the difference information set to the second module. The second module sends the difference information set to the first module. Accordingly, the essence of the test end receiving the difference information set is that the first module receives the difference information set.
In combination with the second test task information recorded in the step S203, the first module may also send a plurality of test logics and the second test task information to the second module, and the second module forwards the plurality of test logics and the second test task information to the engine module. The engine module may also obtain a set of difference information based on the plurality of test logics and the second test task information and send the set of difference information to the second module. The second module sends the difference information set to the first module.
The engine module mainly responsible for the display picture rendering of the target application is used for acquiring the difference information set, the engine module is used for hiding/recovering the target virtual object, and acquiring the performance data difference information of the dimension of the target virtual object generated by hiding/recovering, so that the method is efficient, accurate and reliable.
It should be noted that, the engine module participates in the acquisition of the target object data and the acquisition of the difference information set, and can be understood as expanding a new function for the original engine function. Taking the engine 1 as an original engine as an example, a new function expanding mode may be to expand a function module (such as a function interface) for the engine 1. The engine module may refer to the engine 1 and the functional module as a whole or to the functional module. In practical application, the functional module, the first module and the second module may be used as a testing tool to implement performance testing.
As a possible implementation manner, for the foregoing step S203, after generating and executing the second test file based on the object information of each of the plurality of target virtual objects, the method may further include the following steps: firstly, receiving a difference information set sent by the tested terminal, wherein the difference information set comprises performance data difference information corresponding to each target virtual object; performance adjustment information for the target application is then generated based on the set of difference information.
The difference information set provides performance data difference information of the dimension of the virtual object, and the performance data difference information can guide performance adjustment of target application by taking the target picture as an anchor point, so that inefficiency caused by lack of pertinence of performance optimization is avoided. The performance adjustment for the target application may be embodied in code logic that optimizes the functionality of a certain virtual object, resource IO time consumption of a certain virtual object, model rendering time consumption of a certain virtual object, and so forth. The difference information set comprehensively gives out the performance data difference information of the target virtual object with more importance in the target drawing, which is generated by hiding/recovering. Some characterization data, such as difference extremum, difference mean, difference variance, etc., may be obtained based on a plurality of performance data difference information. These characterization data can also be refined to different types of objects. The object investigation sequence can be generated based on the characterization data, and then the investigation can be preferentially carried out on some target virtual objects which can contribute to larger performance optimization, so that the time can be saved, and the development and maintenance efficiency of target application can be improved. In addition, the difference information set is also convenient for subsequent iterative optimization aiming at target application, and attempts on completing optimization by blindly deleting part of virtual objects are avoided.
The technical scheme provided by the embodiment of the application can be seen that the embodiment of the application provides a targeted performance test scheme. Compared with the related art, which focuses on simulating different load conditions and different pressure conditions, the performance test is performed through hiding/recovering the dimension of the virtual object, so that the accuracy of performance optimization of the target application can be improved. According to the method and the device for testing the performance of the target application, performance testing of the target application is achieved between the testing end and the tested end through execution of the first testing file and the second testing file and transmission of the target object data, interaction of the testing end and the tested end provides support for convenience of performance testing, frequency of optimizing the target application can be improved adaptively, and development and maintenance efficiency is improved. Meanwhile, attention to the target virtual object with more importance can be realized through the object screening rule, so that the target virtual object is hidden/restored, and the performance testing efficiency can be improved.
Fig. 4 shows a flow chart of a performance testing method according to an embodiment of the present application, as shown in fig. 4, the method includes:
s401: under the condition that the testing end executes the received first testing file, a first task, picture description information and object screening rules are received, wherein the first task indicates object data for providing a display picture of the target application, and the object screening rules comprise at least one of the following: rules based on distance from the camera, rules based on relation to camera view angle, rules based on rendering conditions in historical time;
S402: executing the first task based on the picture description information and the object screening rule to obtain target object data and sending the target object data to the test end, wherein the target object data comprises object information of each of a plurality of target virtual objects in a target picture, the target picture is determined based on the picture description information, the target picture comprises a plurality of candidate virtual objects, and the plurality of target virtual objects are determined from the plurality of candidate virtual objects based on the object screening rule;
s403: and under the condition that the testing end executes a second testing file, a second task and a plurality of testing logics are received, wherein the second testing file is generated by the testing end based on respective object information of the plurality of target virtual objects, the second task indicates to provide performance data difference information corresponding to each target virtual object, the plurality of testing logics are in one-to-one correspondence with the plurality of target virtual objects, and the testing logics indicate to acquire the performance data difference information through hiding the target virtual objects and canceling hiding the target virtual objects.
In the embodiment of the present application, steps S401 to S403 provide a performance test scheme for the target application with the tested terminal as the execution body, and correspondingly, the performance test scheme is applied to the tested terminal. Steps S401 to S403 provide a performance test scheme for the target application using the tested end as the execution body, and the foregoing steps S201 to S203 provide a performance test scheme for the target application using the tested end as the execution body, which are based on the same inventive concept, and therefore will not be described in detail.
The embodiments of the present application will be described in detail below.
As one possible implementation manner, as shown in fig. 5, the target application is a game application, the display screen of the target application is a result of shooting a game scene by a game camera, the screen description information includes game progress information, game camera position information and game camera orientation information, and the target screen is determined by the following steps:
s501: running the target application to the display picture of the target application and matching the game progress information so as to determine the current display picture as a candidate picture;
s502: and adjusting the state of the game camera according to the game camera position information and the game camera orientation information so as to enable the candidate picture to be switched to the target picture.
In connection with the description of the screen description information in the foregoing step S201, an example of performing target screen determination in a game service scene is provided herein. Taking the characteristics of the game service scene into consideration, positioning candidate pictures according to game progress information, and guiding the candidate pictures in switching according to game camera position information and game camera orientation information to obtain target pictures. Because to enhance the use experience of the game player, the game visuals may be presented at different perspectives. The introduction of game camera position information and game camera orientation information here can improve the accuracy of locating a target picture that is a range of sources of objects. Meanwhile, the tested terminal can effectively respond to the position information of the game camera and the orientation information of the game camera in the first task execution, and support is provided for more flexible and more convenient performance test.
As one possible implementation manner, the target application is a game application, the display screen of the target application is a shooting result of a game camera on a game scene, and the plurality of target virtual objects are determined by the following ways:
1) Determining, for each of the candidate virtual objects, a spacing of the candidate virtual object from the game camera if the object screening rule is the camera spacing-based rule, and determining the candidate virtual object as the target virtual object if the spacing is less than a spacing threshold;
2) Determining, for each of the candidate virtual objects, that the candidate virtual object is the target virtual object if the candidate virtual object is determined to be within the perspective of the game camera if the object screening rule is the rule based on the relationship with camera perspective;
3) And determining, for each candidate virtual object, the number of times the candidate virtual object is rendered in a preset historical time period, where the object screening rule is the rule based on the rendering condition in the historical time, and determining that the candidate virtual object is the target virtual object, where the number of times the candidate virtual object is rendered is greater than a number threshold.
In connection with the description of the object screening rule in the foregoing step S201, an example of determining the target virtual object in the game service scenario is provided herein. With the development of game services, the quality of game pictures is higher and higher, and details in the pictures are also more and more. Accordingly, some game visuals involve a large number of virtual objects, thousands or even more. If these virtual objects are all targeted virtual objects, this can affect the efficiency of the performance test. Three ways of screening the target virtual object are provided herein, whereby the determined target virtual object has a greater likelihood of affecting the performance of the target application. Compared with a plurality of candidate virtual objects, the plurality of target virtual objects can reduce the number of the virtual objects to be processed to a certain extent, and further the efficiency of the subsequent links of the performance test can be improved. Thus, the accuracy and the efficiency of the performance test are considered.
For example, for a plurality of candidate virtual objects, candidate virtual objects having a pitch greater than a pitch threshold and outside the perspective of the game camera (e.g., behind the game camera) may be culled, thereby obtaining a plurality of target virtual objects. A list may be formed based on object information for each of the plurality of target virtual objects and returned as a function to the test site.
In practical application, when the performance test scheme provided by the embodiment of the application is applied, the rapid acquisition of the performance data difference information of the virtual object dimension can be realized for the target game scene in the game application. The whole process can be triggered by the first test file, and the whole process is automatic.
The first test file may be an automated test script written by python. The first test file comprises picture description information and object screening rules, and game camera position information (such as coordinate information) and game camera orientation information in the picture description information can be used for determining a display picture of a target game scene to be tested, namely a target picture; the object screening rule is used for determining a target virtual object from a plurality of candidate virtual objects of the target picture. The target virtual object may be an Actor object, which is a concept specific to the UE. Almost all game objects such as characters, static objects, lights, etc. in a game application can be derived based on an Actor. An Actor object may include at least one component. The virtual objects thus analyzed may not be limited to static models. The Actor object is hidden, and all components of the Actor object can be stopped. After the Actor object is completely shielded at the rendering level, various components carried by the Actor object such as animation, physics and the like can continuously run, and the Actor object has an influence on the current performance. By setting various components Tick of the Actor object to 0, the animation, physical and other components of the Actor object do not operate, so that the purpose of thoroughly shielding the logical operation of the Actor object is achieved. And traversing all the sub-objects of the Actor object, and setting the component Tick of all the sub-objects hung on the Actor object to 0, so that the effect of thoroughly shielding the logic consumption of the Actor object can be achieved.
The performance data difference information corresponding to each target virtual object may include performance indexes of various aspects, such as performance indexes of render thread and game thread. For the performance data difference information corresponding to each target virtual object, the corresponding difference information subset may be extracted according to the performance index of each aspect, so as to obtain a plurality of difference information subsets. Outlier (outlier) rejection, mean value taking and other operations can be performed on the differential information subsets to achieve performance statistics. The performance data difference information corresponding to each target virtual object and the performance statistics result corresponding to each difference information subset can be visually displayed, so that the performance data analysis can be conveniently carried out by the testers.
It should be noted that, the primary performance data difference information acquisition triggered by the first test file may be aimed at least one target frame. Taking a plurality of target frames as an example, the first test file may include a plurality of sets of filtering information, each set of filtering information including a frame description information and an object filtering rule. The picture description information in each set of filtering information is different and points to different target pictures. Of course, different target pictures may also indicate different game scenes, or may indicate the same game scene. The object screening rules in each set of screening information may be the same or different.
The embodiment of the present application further provides a performance testing apparatus, as shown in fig. 6, configured at a testing end, where a communication relationship is established between the testing end and a tested end, and the tested end runs a target application, where the performance testing apparatus 60 includes:
the first file execution module 601: the method comprises the steps of responding to a received first test file, executing the first test file, wherein the first test file is used for guiding the tested terminal to provide object data of a display picture of the target application, the first test file comprises picture description information and object screening rules, and the object screening rules comprise at least one of the following: rules based on distance from the camera, rules based on relation to camera view angle, rules based on rendering conditions in historical time;
the object data receiving module 602: the target object data are used for receiving target object data sent by the tested end, the target object data comprise object information of each of a plurality of target virtual objects in a target picture, the target picture is determined based on the picture description information, the target picture comprises a plurality of candidate virtual objects, and the plurality of target virtual objects are determined from the plurality of candidate virtual objects based on the object screening rules;
The second file execution module 603: the second test file is used for guiding the tested terminal to provide performance data difference information corresponding to each target virtual object, the second test file comprises a plurality of test logics, the plurality of test logics are in one-to-one correspondence with the plurality of target virtual objects, and the test logics indicate to acquire the performance data difference information through hiding the target virtual objects and unhidding the target virtual objects.
In one embodiment, the test end includes a first module, the target application includes an engine module and a second module, a communication relationship is established between the first module and the second module, and executing the first test file includes: executing the first test file by using the first module to send the picture description information and the object screening rule to the engine module through the second module; the receiving the target object data sent by the tested terminal comprises the following steps: and receiving the target object data sent by the second module by using the first module, wherein the target object data is generated by the engine module based on the picture description information and the object screening rule and is sent to the second module.
In one embodiment, the executing the second test file includes: executing the second test file by using the first module, sending the plurality of test logics to the engine module by using the second module, and acquiring a difference information set by using the engine module based on the plurality of test logics, wherein the difference information set comprises performance data difference information corresponding to each target virtual object.
In one embodiment, after the generating and executing the second test file based on the object information of each of the plurality of target virtual objects, the method further includes: receiving a difference information set sent by the tested terminal, wherein the difference information set comprises performance data difference information corresponding to each target virtual object; performance adjustment information for the target application is generated based on the set of difference information.
It should be noted that the apparatus and method embodiments in the apparatus embodiments are based on the same inventive concept.
The embodiment of the present application further provides a performance testing apparatus, as shown in fig. 7, configured at a tested end, where the tested end runs a target application, and a communication relationship is established between the tested end and a testing end, where the performance testing apparatus 70 includes:
The first data receiving module 701: the method comprises the steps that under the condition that the testing end executes a received first testing file, a first task, picture description information and object screening rules are received, the first task indicates object data for providing a display picture of the target application, and the object screening rules comprise at least one of the following: rules based on distance from the camera, rules based on relation to camera view angle, rules based on rendering conditions in historical time;
task execution module 702: the target frame is used for executing the first task based on the frame description information and the object screening rule to obtain target object data and send the target object data to the testing end, wherein the target object data comprises object information of each of a plurality of target virtual objects in a target frame, the target frame is determined based on the frame description information, the target frame comprises a plurality of candidate virtual objects, and the plurality of target virtual objects are determined from the plurality of candidate virtual objects based on the object screening rule;
the second data receiving module 703: the method comprises the steps that under the condition that a second test file is executed by the test end, a second task and a plurality of test logics are received, the second test file is generated by the test end based on object information of each of a plurality of target virtual objects, the second task indicates to provide performance data difference information corresponding to each target virtual object, the plurality of test logics are in one-to-one correspondence with the plurality of target virtual objects, and the test logics indicate to acquire the performance data difference information through hiding the target virtual objects and canceling hiding the target virtual objects.
In one embodiment, the target application is a game application, the display screen of the target application is a shooting result of a game scene by a game camera, the screen description information includes game progress information, game camera position information and game camera orientation information, and the target screen is determined by the following steps: running the target application to the display picture of the target application and matching the game progress information so as to determine the current display picture as a candidate picture; and adjusting the state of the game camera according to the game camera position information and the game camera orientation information so as to enable the candidate picture to be switched to the target picture.
In one embodiment, the target application is a game application, the display screen of the target application is a shooting result of a game camera on a game scene, and the plurality of target virtual objects are determined by the following steps: determining, for each of the candidate virtual objects, a spacing of the candidate virtual object from the game camera if the object screening rule is the camera spacing-based rule, and determining the candidate virtual object as the target virtual object if the spacing is less than a spacing threshold; determining, for each of the candidate virtual objects, that the candidate virtual object is the target virtual object if the candidate virtual object is determined to be within the perspective of the game camera if the object screening rule is the rule based on the relationship with camera perspective;
And determining, for each candidate virtual object, the number of times the candidate virtual object is rendered in a preset historical time period, where the object screening rule is the rule based on the rendering condition in the historical time, and determining that the candidate virtual object is the target virtual object, where the number of times the candidate virtual object is rendered is greater than a number threshold.
It should be noted that the apparatus and method embodiments in the apparatus embodiments are based on the same inventive concept.
In some embodiments, functions or modules included in the apparatus provided in the embodiments of the present application may be used to perform the methods described in the foregoing method embodiments, and specific implementations thereof may refer to descriptions of the foregoing method embodiments, which are not repeated herein for brevity.
Embodiments of the present application also provide a computer readable storage medium having at least one instruction or at least one program stored therein, the at least one instruction or at least one program loaded and executed by a processor to implement the above-described method. The computer readable storage medium may be a non-volatile computer readable storage medium.
The embodiment of the application also provides electronic equipment, which comprises at least one processor and a memory in communication connection with the at least one processor; wherein the memory stores at least one instruction or at least one program, and the at least one instruction or the at least one program is loaded and executed by the at least one processor to implement the above method.
The electronic device may be provided as a terminal, server or other form of device.
Fig. 10 shows a block diagram of an electronic device according to an embodiment of the application. For example, electronic device 1900 may be provided as a server. Referring to fig. 10, electronic device 1900 includes a processing component 1922 that further includes one or more processors and memory resources represented by memory 1932 for storing instructions, such as application programs, that can be executed by processing component 1922. The application programs stored in memory 1932 may include one or more modules each corresponding to a set of instructions. Further, processing component 1922 is configured to execute instructions to perform the methods described above.
The electronic device 1900 may also include a power component 1926 configured to perform power management of the electronic device 1900, a wired or wireless network interface 1950 configured to connect the electronic device 1900 to a network, and an input/output (I/O) interface 1958. The electronic device 1900 may operate based on an operating system stored in memory 1932, such as Windows Server, mac OS XTM, unixTM, linuxTM, freeBSDTM, or the like.
In an exemplary embodiment, a non-transitory computer readable storage medium is also provided, such as memory 1932, including computer program instructions executable by processing component 1922 of electronic device 1900 to perform the methods described above.
The present application may be a system, method, and/or computer program product. The computer program product may include a computer readable storage medium having computer readable program instructions embodied thereon for causing a processor to implement aspects of the present application.
The computer readable storage medium may be a tangible device that can hold and store instructions for use by an instruction execution device. The computer readable storage medium may be, for example, but not limited to, an electronic storage device, a magnetic storage device, an optical storage device, an electromagnetic storage device, a semiconductor storage device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer-readable storage medium would include the following: portable computer disks, hard disks, random Access Memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), static Random Access Memory (SRAM), portable compact disk read-only memory (CD-ROM), digital Versatile Disks (DVD), memory sticks, floppy disks, mechanical coding devices, punch cards or in-groove structures such as punch cards or grooves having instructions stored thereon, and any suitable combination of the foregoing. Computer-readable storage media, as used herein, are not to be construed as transitory signals per se, such as radio waves or other freely propagating electromagnetic waves, electromagnetic waves propagating through waveguides or other transmission media (e.g., optical pulses through fiber optic cables), or electrical signals transmitted through wires.
The computer readable program instructions described herein may be downloaded from a computer readable storage medium to a respective computing/processing device or to an external computer or external storage device over a network, such as the internet, a local area network, a wide area network, and/or a wireless network. The network may include copper transmission cables, fiber optic transmissions, wireless transmissions, routers, firewalls, switches, gateway computers and/or edge servers. The network interface card or network interface in each computing/processing device receives computer readable program instructions from the network and forwards the computer readable program instructions for storage in a computer readable storage medium in the respective computing/processing device.
Computer program instructions for performing the operations of the present application may be assembly instructions, instruction Set Architecture (ISA) instructions, machine-related instructions, microcode, firmware instructions, state setting data, or source or object code written in any combination of one or more programming languages, including an object oriented programming language such as Smalltalk, c+ and the like and conventional procedural programming languages, such as the "C" language or similar programming languages. The computer readable program instructions may be executed entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the case of a remote computer, the remote computer may be connected to the user's computer through any kind of network, including a Local Area Network (LAN) or a Wide Area Network (WAN), or may be connected to an external computer (for example, through the Internet using an Internet service provider). In some embodiments, aspects of the present application are implemented by personalizing electronic circuitry, such as programmable logic circuitry, field Programmable Gate Arrays (FPGAs), or Programmable Logic Arrays (PLAs), with state information for computer readable program instructions, which may execute the computer readable program instructions.
Various aspects of the present application are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the application. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer-readable program instructions.
These computer readable program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. These computer readable program instructions may also be stored in a computer readable storage medium that can direct a computer, programmable data processing apparatus, and/or other devices to function in a particular manner, such that the computer readable medium having the instructions stored therein includes an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer readable program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer, other programmable apparatus or other devices implement the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present application. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of instructions, which comprises one or more executable instructions for implementing the specified logical function(s). In some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The embodiments of the present application have been described above, the foregoing description is exemplary, not exhaustive, and not limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the various embodiments described. The terminology used herein was chosen in order to best explain the principles of the embodiments, the practical application, or the technical improvements in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein.

Claims (11)

1. The performance test method is characterized by being applied to a test end, wherein a communication relation is established between the test end and a tested end, and the tested end runs a target application, and the method comprises the following steps:
executing a first test file in response to the received first test file, wherein the first test file is used for guiding the tested terminal to provide object data of a display picture of the target application, the first test file comprises picture description information and object screening rules, and the object screening rules comprise at least one of the following: rules based on distance between cameras, rules based on relation between camera view angles, rules based on object rendering conditions in historical time;
Receiving target object data sent by the tested end, wherein the target object data comprises object information of each of a plurality of target virtual objects in a target picture, the target picture is determined based on the picture description information, the target picture comprises a plurality of candidate virtual objects, and the plurality of target virtual objects are determined from the plurality of candidate virtual objects based on the object screening rule;
generating and executing a second test file based on the object information of each of the plurality of target virtual objects, wherein the second test file is used for guiding the tested terminal to provide performance data difference information corresponding to each of the target virtual objects, the second test file comprises a plurality of test logics, the plurality of test logics are in one-to-one correspondence with the plurality of target virtual objects, and the test logics indicate that the performance data difference information is obtained by hiding the target virtual objects and canceling hiding the target virtual objects.
2. The method of claim 1, wherein the test terminal comprises a first module, the target application comprises an engine module and a second module, a communication relationship is established between the first module and the second module, and the executing the first test file comprises:
Executing the first test file by using the first module to send the picture description information and the object screening rule to the engine module through the second module;
the receiving the target object data sent by the tested terminal comprises the following steps: and receiving the target object data sent by the second module by using the first module, wherein the target object data is generated by the engine module based on the picture description information and the object screening rule and is sent to the second module.
3. The method of claim 2, wherein executing the second test file comprises:
executing the second test file by using the first module, sending the plurality of test logics to the engine module by using the second module, and acquiring a difference information set by using the engine module based on the plurality of test logics, wherein the difference information set comprises performance data difference information corresponding to each target virtual object.
4. The method of claim 1, wherein after generating and executing the second test file based on the object information of each of the plurality of target virtual objects, the method further comprises:
Receiving a difference information set sent by the tested terminal, wherein the difference information set comprises performance data difference information corresponding to each target virtual object;
performance adjustment information for the target application is generated based on the set of difference information.
5. The performance test method is characterized by being applied to a tested end, wherein the tested end runs a target application, a communication relation is established between the tested end and a test end, and the method comprises the following steps:
receiving a first task, picture description information and an object screening rule under the condition that the test end receives a first test file, wherein the first task indicates object data of a display picture for providing the target application, and the object screening rule comprises at least one of the following: rules based on distance between cameras, rules based on relation between camera view angles, rules based on object rendering conditions in historical time;
performing the first task based on the picture description information and the object filtering rule to obtain
Target object data and sending the target object data to the test end, wherein the target object data comprises object information of each of a plurality of target virtual objects in a target picture, the target picture is determined based on the picture description information, the target picture comprises a plurality of candidate virtual objects, and the plurality of target virtual objects are determined from the plurality of candidate virtual objects based on the object screening rule;
And under the condition that the testing end executes a second testing file, a second task and a plurality of testing logics are received, wherein the second testing file is generated by the testing end based on respective object information of the plurality of target virtual objects, the second task indicates to provide performance data difference information corresponding to each target virtual object, the plurality of testing logics are in one-to-one correspondence with the plurality of target virtual objects, and the testing logics indicate to acquire the performance data difference information through hiding the target virtual objects and canceling hiding the target virtual objects.
6. The method of claim 5, wherein the target application is a game application, the presentation screen of the target application is a result of photographing a game scene by a game camera, the screen description information includes game progress information, game camera position information, and game camera orientation information, and the target screen is determined by the steps of:
running the target application to the display picture of the target application and matching the game progress information so as to determine the current display picture as a candidate picture;
and adjusting the state of the game camera according to the game camera position information and the game camera orientation information so as to enable the candidate picture to be switched to the target picture.
7. The method of claim 5, wherein the target application is a game application, the presentation of the target application is a result of a game camera capturing a game scene, and the plurality of target virtual objects are determined by:
determining, for each of the candidate virtual objects, a spacing of the candidate virtual object from the game camera if the object screening rule is the camera spacing-based rule, and determining the candidate virtual object as the target virtual object if the spacing is less than a spacing threshold;
determining, for each of the candidate virtual objects, that the candidate virtual object is the target virtual object if the candidate virtual object is determined to be within the perspective of the game camera if the object screening rule is the rule based on the relationship with camera perspective;
and determining, for each candidate virtual object, the number of times the candidate virtual object is rendered in a preset historical time period, where the object screening rule is the rule based on the object rendering condition in the historical time, and determining that the candidate virtual object is the target virtual object, where the number of times the candidate virtual object is rendered is greater than a number threshold.
8. The utility model provides a performance test device which characterized in that disposes in the test end, the communication relation has been established between test end and the end that is surveyed, the end that is surveyed operation target application, the device includes:
the first file executing module: the method comprises the steps of responding to a received first test file, executing the first test file, wherein the first test file is used for guiding the tested terminal to provide object data of a display picture of the target application, the first test file comprises picture description information and object screening rules, and the object screening rules comprise at least one of the following: rules based on distance between cameras, rules based on relation between camera view angles, rules based on object rendering conditions in historical time;
an object data receiving module: the target object data are used for receiving target object data sent by the tested end, the target object data comprise object information of each of a plurality of target virtual objects in a target picture, the target picture is determined based on the picture description information, the target picture comprises a plurality of candidate virtual objects, and the plurality of target virtual objects are determined from the plurality of candidate virtual objects based on the object screening rules;
And a second file executing module: the second test file is used for guiding the tested terminal to provide performance data difference information corresponding to each target virtual object, the second test file comprises a plurality of test logics, the plurality of test logics are in one-to-one correspondence with the plurality of target virtual objects, and the test logics indicate to acquire the performance data difference information through hiding the target virtual objects and unhidding the target virtual objects.
9. The performance testing device is characterized by being configured at a tested end, wherein the tested end runs a target application, a communication relationship is established between the tested end and a testing end, and the device comprises:
a first data receiving module: the method comprises the steps that under the condition that the test end receives a first test file, a first task, picture description information and object screening rules are received, the first task indicates object data for providing a display picture of the target application, and the object screening rules comprise at least one of the following: rules based on distance between cameras, rules based on relation between camera view angles, rules based on object rendering conditions in historical time;
The task execution module: the target frame is used for executing the first task based on the frame description information and the object screening rule to obtain target object data and send the target object data to the testing end, wherein the target object data comprises object information of each of a plurality of target virtual objects in a target frame, the target frame is determined based on the frame description information, the target frame comprises a plurality of candidate virtual objects, and the plurality of target virtual objects are determined from the plurality of candidate virtual objects based on the object screening rule;
and a second data receiving module: the method comprises the steps that under the condition that a second test file is executed by the test end, a second task and a plurality of test logics are received, the second test file is generated by the test end based on object information of each of a plurality of target virtual objects, the second task indicates to provide performance data difference information corresponding to each target virtual object, the plurality of test logics are in one-to-one correspondence with the plurality of target virtual objects, and the test logics indicate to acquire the performance data difference information through hiding the target virtual objects and canceling hiding the target virtual objects.
10. An electronic device comprising at least one processor and a memory communicatively coupled to the at least one processor; wherein the memory stores at least one instruction or at least one program loaded and executed by the at least one processor to implement the performance testing method of any one of claims 1-4 or the performance testing method of any one of claims 5-7.
11. A computer readable storage medium having stored therein at least one instruction or at least one program loaded and executed by a processor to implement the performance test method of any one of claims 1-4 or the performance test method of any one of claims 5-7.
CN202311356260.8A 2023-10-19 2023-10-19 Performance test method and device, electronic equipment and storage medium Active CN117093466B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311356260.8A CN117093466B (en) 2023-10-19 2023-10-19 Performance test method and device, electronic equipment and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311356260.8A CN117093466B (en) 2023-10-19 2023-10-19 Performance test method and device, electronic equipment and storage medium

Publications (2)

Publication Number Publication Date
CN117093466A CN117093466A (en) 2023-11-21
CN117093466B true CN117093466B (en) 2024-01-16

Family

ID=88777259

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311356260.8A Active CN117093466B (en) 2023-10-19 2023-10-19 Performance test method and device, electronic equipment and storage medium

Country Status (1)

Country Link
CN (1) CN117093466B (en)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105468527A (en) * 2015-12-09 2016-04-06 百度在线网络技术(北京)有限公司 Test method and device of assembly in application
CN107368410A (en) * 2017-06-14 2017-11-21 腾讯科技(深圳)有限公司 The performance test methods and device of game engine, storage medium and electronic installation
CN108427630A (en) * 2018-03-15 2018-08-21 腾讯科技(深圳)有限公司 Performance information acquisition methods, device, terminal and computer readable storage medium
CN108845929A (en) * 2018-05-07 2018-11-20 北京三快在线科技有限公司 Page performance test method and apparatus
WO2021103743A1 (en) * 2019-11-27 2021-06-03 腾讯科技(深圳)有限公司 Program test method and apparatus, computer device, and storage medium
CN113886273A (en) * 2021-11-08 2022-01-04 北京奇艺世纪科技有限公司 Performance test method, device, test equipment and medium of application program
US11269756B1 (en) * 2018-09-26 2022-03-08 A9.Com, Inc. Self-healing web applications

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101691245B1 (en) * 2012-05-11 2017-01-09 삼성에스디에스 주식회사 System and method for web service monitoring
US9424167B2 (en) * 2014-05-21 2016-08-23 Cgi Technologies And Solutions Inc. Automated testing of an application system

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105468527A (en) * 2015-12-09 2016-04-06 百度在线网络技术(北京)有限公司 Test method and device of assembly in application
CN107368410A (en) * 2017-06-14 2017-11-21 腾讯科技(深圳)有限公司 The performance test methods and device of game engine, storage medium and electronic installation
CN108427630A (en) * 2018-03-15 2018-08-21 腾讯科技(深圳)有限公司 Performance information acquisition methods, device, terminal and computer readable storage medium
CN108845929A (en) * 2018-05-07 2018-11-20 北京三快在线科技有限公司 Page performance test method and apparatus
US11269756B1 (en) * 2018-09-26 2022-03-08 A9.Com, Inc. Self-healing web applications
WO2021103743A1 (en) * 2019-11-27 2021-06-03 腾讯科技(深圳)有限公司 Program test method and apparatus, computer device, and storage medium
CN113886273A (en) * 2021-11-08 2022-01-04 北京奇艺世纪科技有限公司 Performance test method, device, test equipment and medium of application program

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Web应用中间件性能测试系统设计与验证;刘维等;《现代计算机》;第29卷(第2期);88-93 *

Also Published As

Publication number Publication date
CN117093466A (en) 2023-11-21

Similar Documents

Publication Publication Date Title
CN108830235B (en) Method and apparatus for generating information
CN108805091B (en) Method and apparatus for generating a model
CN112584077B (en) Video frame interpolation method and device and electronic equipment
CN110876024B (en) Method and device for determining lip action of avatar
CN109618236B (en) Video comment processing method and device
US11461995B2 (en) Method and apparatus for inspecting burrs of electrode slice
CN111476871A (en) Method and apparatus for generating video
CN111858318B (en) Response time testing method, device, equipment and computer storage medium
CN111582375A (en) Data enhancement strategy searching method, device, equipment and storage medium
CN110059624B (en) Method and apparatus for detecting living body
CN111667420B (en) Image processing method and device
CN110070076B (en) Method and device for selecting training samples
US20190158800A1 (en) Focus-based video loop switching
CN112527115A (en) User image generation method, related device and computer program product
JP2023531350A (en) A method for incrementing a sample image, a method for training an image detection model and a method for image detection
JP2018026815A (en) Video call quality measurement method and system
CN111695516B (en) Thermodynamic diagram generation method, device and equipment
CN112584076A (en) Video frame interpolation method and device and electronic equipment
CN112820408A (en) Surgical operation risk determination method, related device and computer program product
CN114898177B (en) Defect image generation method, model training method, device, medium and product
JP2023039426A (en) Computer implementation method, information processing system, computer program (spatio-temporal relation based mr content arrangement)
CN109977905B (en) Method and apparatus for processing fundus images
CN108921138B (en) Method and apparatus for generating information
CN117093466B (en) Performance test method and device, electronic equipment and storage medium
CN105095398B (en) A kind of information providing method and device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant