A firmware testing method, server and computer readable storage medium

By automatically generating and sending target instructions, combining protocol analysis and data mining algorithms, the problem of cumbersome and inefficient operation of firmware testing methods is solved, and an efficient firmware testing process is achieved.

CN113127338BActive Publication Date: 2024-12-20SICHUAN RUI MINGTONG TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202110303511.0
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-03-22
Publication Date
2024-12-20
Estimated Expiration
2041-03-22

AI Technical Summary

Technical Problem

The existing firmware testing methods have cumbersome operation steps and low efficiency, and require manual verification of data use cases one by one, resulting in low efficiency.

Method used

By obtaining test signaling and device identification, target instructions are automatically generated and sent to the device to be tested, test data is received, and protocol analysis and data mining algorithms are used to generate and manage test cases, simplify operational processes and improve testing efficiency.

Benefits of technology

Directly sending target instructions without manual verification significantly improves the efficiency of firmware testing, supports batch execution and one-click operation, is highly scalable, and reduces manual operation costs.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113127338B_ABST
    Figure CN113127338B_ABST
Patent Text Reader

Abstract

The present application is applicable to the field of computer technology, and provides a firmware testing method and server, the method comprising: the server obtains test signaling and a device identification of a device to be tested; obtains a test case according to the test signaling, and generates a target instruction according to the test case; sends the target instruction to the device to be tested according to the device identification, and receives the test data returned by the device to be tested. When performing firmware testing, the target instruction can be directly sent to the device to be tested without manual verification, which simplifies the operation steps and significantly improves the efficiency of firmware testing. In addition, in the embodiment of the present application, the use case data can be uniformly managed, batch executed, and operated with one click, which greatly improves efficiency and has strong scalability.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application belongs to the field of computer technology, and in particular, relates to a firmware testing method, a server, and a computer-readable storage medium. Background Art

[0002] In the field of security monitoring, in addition to connecting to its own video surveillance equipment, the security monitoring platform generally needs to be compatible with equipment from other manufacturers. In other words, the security monitoring platform needs to adapt to different devices according to different protocols. However, some devices are not developed completely in accordance with the prescribed protocols, resulting in compatibility issues when accessing the platform. Therefore, firmware testing is required before use. Currently, most firmware tests are manually checked by testers one by one according to established data use cases. The operation steps are cumbersome and the efficiency is relatively low. Summary of the invention

[0003] The embodiments of the present application provide a firmware testing method, a server, and a computer-readable storage medium, which can solve the problems of the existing firmware testing method having complicated operation steps and relatively low efficiency.

[0004] In a first aspect, an embodiment of the present application provides a firmware testing method, including:

[0005] Obtain test signaling and device identification of the device to be tested;

[0006] Acquire a test case according to the test signaling, and generate a target instruction according to the test case;

[0007] The target instruction is sent to the device to be tested according to the device identification, and test data returned by the device to be tested is received.

[0008] In the above scheme, when performing firmware testing, the target instruction can be directly sent to the device to be tested without manual verification, which simplifies the operation steps and significantly improves the efficiency of firmware testing. In addition, in the embodiment of the present application, the use case data can be managed uniformly, can be executed in batches, can be operated with one click, the efficiency is greatly improved, and the scalability is strong.

[0009] Further, the acquiring a test case according to the test signaling and generating a target instruction according to the test case includes:

[0010] Obtaining the associated protocol corresponding to the test signaling;

[0011] If the associated protocol corresponding to the test signaling is obtained, determining a test case according to the test signaling and its corresponding associated protocol;

[0012] The test case is subjected to protocol parsing to obtain target instructions.

[0013] In the above scheme, when the user inputs the test signaling on the front-end device, the user fills in the associated protocol, and then the associated protocol corresponding to the test signaling can be obtained. In this way, the user can determine the test case by setting the associated protocol. Only the test signaling with the associated protocol can determine the test case, and the user can flexibly manage and control the test case.

[0014] Further, the performing protocol parsing on the test case to obtain the target instruction includes:

[0015] If the test case has associated execution parameters, a target instruction is generated according to the associated execution parameters and the test case.

[0016] In the above scheme, when performing protocol parsing, it is possible to first determine whether the test case has associated execution parameters. The associated execution parameters are the conditions that the user fills in the test case before the test case is parsed and sent. The user can flexibly set the test data and test environment by setting the associated execution parameters, which greatly improves the efficiency of the test.

[0017] Further, the performing protocol parsing on the test case to obtain the target instruction includes:

[0018] If the test case does not have associated execution parameters, a target instruction is generated according to the preset default execution parameters and the test case.

[0019] In the above scheme, when performing protocol parsing, it is possible to first determine whether the test case has associated execution parameters. The associated execution parameters are the conditions that the user fills in the test case before the test case is parsed and sent. When the associated execution parameters set by the user are not obtained, in order to ensure the smooth testing, the preset default execution parameters set in advance can be used to continue the test, thereby ensuring the progress of the test. In addition, the preset default execution parameters can be understood as the default test mode. When the user does not set the preset default execution parameters, the test can be conveniently performed.

[0020] Further, after receiving the test data returned by the device to be tested, the method further includes:

[0021] If the test data is data returned in response to the test signaling, data conversion is performed on the test data to obtain one or more of test interaction track data, test process data, and test result data.

[0022] In the above scheme, if the test data is data returned for the test signaling, the server will perform data conversion on the test data to obtain the corresponding test result. Performing a check on the test data once to check whether it is data returned for the test signaling can effectively ensure that when multiple devices to be tested are tested at the same time, the test result corresponding to each device to be tested can be accurately obtained, thereby improving the test efficiency.

[0023] Further, obtaining a test case according to the test signaling includes:

[0024] The test case corresponding to the test signaling is determined based on the test signaling and the use case data set with a strong correlation.

[0025] The server can parse the test signaling to obtain the corresponding test case, and then obtain the test case that is most closely related to the test signaling from the strongly associated case data set, that is, obtain the test case that the user is most likely to use. The strongly associated case data set is pre-set, which reduces the cost of manual operation and further improves the efficiency of firmware verification.

[0026] Furthermore, before determining the test case corresponding to the test signaling according to the test signaling and the use case data set with a strong correlation, the method further includes:

[0027] The use case data in the preset use case set is learned through data mining algorithms to obtain a use case data set with strong correlation.

[0028] The server can learn data use cases and obtain a data set of use cases with strong correlations. Automatic learning of data use cases also further reduces the cost of manual operations and further improves the efficiency of firmware verification.

[0029] In a second aspect, an embodiment of the present application provides a server, including:

[0030] An acquisition unit, used for acquiring the test signaling and the device identification of the device to be tested;

[0031] A first processing unit, configured to obtain a test case according to the test signaling, and generate a target instruction according to the test case;

[0032] The second processing unit is used to send the target instruction to the device to be tested according to the device identification, and receive the test data returned by the device to be tested.

[0033] Furthermore, the first processing unit is specifically configured to:

[0034] Obtaining the associated protocol corresponding to the test signaling;

[0035] If the associated protocol corresponding to the test signaling is obtained, determining a test case according to the test signaling and its corresponding associated protocol;

[0036] The test case is subjected to protocol parsing to obtain target instructions.

[0037] Furthermore, the first processing unit is specifically configured to:

[0038] If the test case has associated execution parameters, a target instruction is generated according to the associated execution parameters and the test case.

[0039] Furthermore, the first processing unit is specifically configured to:

[0040] If the test case does not have associated execution parameters, a target instruction is generated according to the preset default execution parameters and the test case.

[0041] Furthermore, the server further includes:

[0042] The third processing unit is used to perform data conversion on the test data if the test data is data returned for the test signaling, so as to obtain one or more of test interaction track data, test process data and test result data.

[0043] Furthermore, the first processing unit is specifically configured to:

[0044] The test case corresponding to the test signaling is determined based on the test signaling and the use case data set with a strong correlation.

[0045] Furthermore, the server further includes:

[0046] The fourth processing unit is used to learn the use case data in the preset use case set through a data mining algorithm to obtain a use case data set with a strong correlation.

[0047] In a third aspect, an embodiment of the present application provides a server, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the firmware testing method as described in the first aspect above when executing the computer program.

[0048] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and wherein when the computer program is executed by a processor, the firmware testing method as described in the first aspect above is implemented.

[0049] In an embodiment of the present application, the server obtains the test signaling and the device identification of the device to be tested; obtains the test case according to the test signaling, and generates the target instruction according to the test case; sends the target instruction to the device to be tested according to the device identification, and receives the test data returned by the device to be tested. When performing firmware testing, the target instruction can be directly sent to the device to be tested without manual verification, which simplifies the operation steps and significantly improves the efficiency of firmware testing. In addition, in an embodiment of the present application, the use case data can be uniformly managed, batch executed, and operated with one click, which greatly improves efficiency and has strong scalability. BRIEF DESCRIPTION OF THE DRAWINGS

[0050] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings required for use in the embodiments or the description of the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying any creative labor.

[0051] Figure 1 is a schematic flow chart of a firmware testing method provided in the first embodiment of the present application;

[0052] Figure 2 is a schematic flowchart of the refinement of S102 in a firmware testing method provided in the first embodiment of the present application;

[0053] Figure 3 is a schematic diagram of a server provided in the second embodiment of the present application;

[0054] Figure 4 It is a schematic diagram of a server provided in the third embodiment of the present application. DETAILED DESCRIPTION

[0055] In the following description, specific details such as specific system structures, technologies, etc. are provided for the purpose of illustration rather than limitation, so as to provide a thorough understanding of the embodiments of the present application. However, it should be clear to those skilled in the art that the present application may also be implemented in other embodiments without these specific details. In other cases, detailed descriptions of well-known systems, devices, circuits, and methods are omitted to prevent unnecessary details from obstructing the description of the present application.

[0056] It should be understood that when used in the present specification and the appended claims, the term "comprising" indicates the presence of described features, wholes, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, wholes, steps, operations, elements, components and / or combinations thereof.

[0057] It should also be understood that the term “and / or” used in the specification and appended claims refers to and includes any and all possible combinations of one or more of the associated listed items.

[0058] As used in the specification and appended claims of this application, the term "if" can be interpreted as "when" or "uponce" or "in response to determining" or "in response to detecting", depending on the context. Similarly, the phrase "if it is determined" or "if [described condition or event] is detected" can be interpreted as meaning "uponce it is determined" or "in response to determining" or "uponce [described condition or event] is detected" or "in response to detecting [described condition or event]", depending on the context.

[0059] In addition, in the description of the present application specification and the appended claims, the terms "first", "second", "third", etc. are only used to distinguish the descriptions and cannot be understood as indicating or implying relative importance.

[0060] References to "one embodiment" or "some embodiments" etc. described in the specification of this application mean that one or more embodiments of the present application include specific features, structures or characteristics described in conjunction with the embodiment. Therefore, the statements "in one embodiment", "in some embodiments", "in some other embodiments", "in some other embodiments", etc. that appear in different places in this specification do not necessarily refer to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in other ways. The terms "including", "comprising", "having" and their variations all mean "including but not limited to", unless otherwise specifically emphasized in other ways.

[0061] See also Figure 1 , Figure 1 1 is a schematic flow chart of a firmware testing method provided in the first embodiment of the present application. In this embodiment, the execution subject of a firmware testing method is a server. Figure 1 The firmware testing method shown may include:

[0062] S101: Acquire test signaling and a device identification of a device to be tested.

[0063] The server obtains the test signaling and the device identification of the device to be tested. The test signaling may include signaling data, use case data composed of the signaling data, and use case set data composed of the use case data, which are not limited here.

[0064] The device identification is a unique and definite identification of each device. For example, the identification of the device to be tested 1 may be A, and the identification of the device to be tested 2 may be B.

[0065] In one implementation, the server may obtain test signaling and a device identification of the device to be tested from preset test data. For example, it may be pre-set that under a certain trigger condition, the test signaling and the device identification of the device to be tested are obtained from the preset test data to test the device to be tested.

[0066] In one implementation, the server may receive the test signaling and the device identification of the device to be tested sent by the front-end device. The user may input the test signaling and the device identification of the device to be tested through the page of the front-end device, and then the front-end device sends the test signaling and the device identification of the device to be tested to the server; or the user may send the test signaling and the device identification of the device to be tested to the front-end device through other devices, and then the front-end device sends the test signaling and the device identification of the device to be tested to the server, and there is no restriction here. In this way, the user can flexibly set the test signaling and the device identification of the device to be tested, which can be executed in batches and operated with one key, which improves the efficiency of the test when conducting the test.

[0067] In addition, when the user enters the test signaling on the front-end device, different plug-ins can be selected. In this way, the user can select different plug-ins according to the needs, which is more flexible when conducting the test and helps to improve the efficiency of the test. For example, by selecting different plug-ins, you can choose whether to send a use case or a use case set when sending data to the device to be tested. When the user enters the test signaling on the front-end device, the front-end interface can set a drop-down box for selecting the associated protocol. Selecting the associated protocol is a required item. If the associated protocol is not filled in, then when adding the test signaling, it is determined that the current test signaling has no associated protocol, the adding process is terminated, and the process of adding the test signaling is returned.

[0068] S102: Acquire a test case according to the test signaling, and generate a target instruction according to the test case.

[0069] The server obtains the test case according to the test signaling. The test signaling may include signaling data, case data composed of the signaling data, and use case data composed of the case data. The server may obtain the test case in the test signaling, or integrate the test signaling to obtain the test case.

[0070] After obtaining the test case, the server generates a target instruction according to the test case. The server can decompose the test case to obtain the target instruction corresponding to the test case that can be recognized by the device to be tested.

[0071] Specifically, S102 may include S1021 to S1023, such as Figure 2 As shown, S1021 to S1023 are as follows:

[0072] S1021: Obtain the associated protocol corresponding to the test signaling.

[0073] The server obtains the associated protocol corresponding to the test signaling. When the user inputs the test signaling on the front-end device, the user fills in the associated protocol, and then the associated protocol corresponding to the test signaling can be obtained.

[0074] When the user inputs the test signaling on the front-end device, if the user does not fill in the associated protocol, the associated protocol corresponding to the test signaling cannot be obtained.

[0075] S1022: If the associated protocol corresponding to the test signaling is obtained, determine a test case according to the test signaling and its corresponding associated protocol.

[0076] If the server obtains the associated protocol corresponding to the test signaling, the test case is determined according to the test signaling and its corresponding associated protocol, that is, the device composes the test signaling and its corresponding associated protocol into a case to obtain the test case.

[0077] S1023: Perform protocol parsing on the test case to obtain target instructions.

[0078] The server can perform protocol analysis on the test case to obtain the target instruction. During the analysis, the test case can be analyzed according to a preset protocol to obtain the target instruction recognizable by the device to be tested.

[0079] Specifically, when performing protocol parsing, you can first determine whether the test case has associated execution parameters. The associated execution parameters are the conditions that the user fills in the test case before the test case is parsed and sent. For example, for a test case in the heartbeat scenario of the device to be tested, you need to enter a time period of a heartbeat cycle as an associated execution parameter. If the time interval of the heartbeat of the device to be tested exceeds this time period, the test case is considered to have failed.

[0080] If the test case has associated execution parameters, the target instruction is generated according to the associated execution parameters and the test case. When generating the target instruction according to the associated execution parameters and the test case, the device can also determine whether the current associated execution parameters are complete. If the test case has associated execution parameters and the associated execution parameters are complete, the target instruction can be generated according to the associated execution parameters and the test case.

[0081] If the test case does not have associated execution parameters, the server can obtain preset default execution parameters and generate target instructions according to the preset default execution parameters and the test case.

[0082] In addition, when parsing the test case protocol, you can also first determine whether the test case has an associated scenario. The associated scenario is filled in and set by the user before the test case is parsed and issued. Business scenarios generally include: device registration, device authentication, device heartbeat, etc. Independent test cases that are not associated with scenarios can parse and issue a single test case; test case sets associated with business scenarios can parse and issue batches of test cases.

[0083] In one implementation, the server obtains the test case according to the test signaling, including: determining the test case corresponding to the test signaling according to the test signaling and the use case data set with a strong correlation. The server pre-stores the use case data set with a strong correlation, wherein the use case data set with a strong correlation stores the correlation between the learned test cases. The server can parse the test signaling to obtain the corresponding test case, and then obtain the test case that is most closely related to the test signaling from the use case data set with a strong correlation, that is, obtain the test case that the user is most likely to use.

[0084] Among them, the use case data set with strong correlation can be automatically learned based on the data use cases collected by the server. The server learns the use case data in the preset use case set through the data mining algorithm to obtain the use case data set with strong correlation. Each time the server parses a new test case, it can store the new test case in the storage area of ​​the server to obtain the data use case. The server can learn the data use case to obtain the use case data set with strong correlation. In order to obtain the correlation between frequent items from the existing data use cases in the database, the FP-growth algorithm can be used here to generate strong correlation items between data use cases, further improving the verification efficiency of the tool.

[0085] In the process of automatic learning, there are two active parameters, support and confidence, which require us to train based on a large amount of data.

[0086] The main task of the FP-Growth algorithm is to find frequent item sets in the data set. The steps are roughly divided into the following three steps:

[0087] (1) Construct an item header table, which records the set and support counts of all frequent items and arranges them in descending order of support counts.

[0088] (2) Construct FP-Tree.

[0089] (3) Mining frequent itemsets based on FP-Tree.

[0090] It should be noted that each time the server parses a new test case, it can store the new test case in the server's storage area to obtain a data case. This storage area can be used to save the test case reading rules, test case verification rules, and can provide data such as query test cases and store test case execution results.

[0091] S103: Sending the target instruction to the device to be tested according to the device identification, and receiving test data returned by the device to be tested.

[0092] The server sends the target instruction to the device to be tested corresponding to the device identification according to the device identification.

[0093] When the device under test receives the target instruction, it performs the test according to the target instruction and generates the test data, and the device under test sends the generated test data to the server. The server receives the test data returned by the device under test.

[0094] The test data includes data generated by the device to be tested during the test process and test result data. For example, the test data may include test interaction trajectory data, test process data, and test result data.

[0095] It is understandable that the device to be tested can receive multiple types of test tasks, that is, receive different target instructions for testing. Therefore, when the device to be tested returns test data, the server needs to determine whether the received test data is data returned for the test signaling. If the test data is data returned for the test signaling, the test data is converted to obtain one or more of the test interaction track data, test process data, and test result data.

[0096] In the embodiment of the present application, the server obtains the test signaling and the device identification of the device to be tested; obtains the test case according to the test signaling, and generates the target instruction according to the test case; sends the target instruction to the device to be tested according to the device identification, and receives the test data returned by the device to be tested. When performing firmware testing, the target instruction can be directly sent to the device to be tested without manual verification, which simplifies the operation steps and improves the test efficiency.

[0097] In addition, the use case data can be managed in a unified manner, executed in batches, and operated with one click, which greatly improves efficiency. At the same time, the method in this application is highly scalable and can support use case data of different devices and different protocols, and can expand multi-dimensional use case data.

[0098] It should be understood that the size of the serial numbers of the steps in the above embodiments does not mean the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of the present application.

[0099] See also Figure 3 , Figure 3 Schematic diagram of a server provided in the second embodiment of the present application. The units included are used to execute Figures 1-2 For details, please refer to the steps in the corresponding embodiment. Figures 1-2 For the convenience of explanation, only the parts related to this embodiment are shown. Figure 3 , server 3 includes:

[0100] An acquisition unit 310 is used to acquire a test signaling and a device identification of a device to be tested;

[0101] A first processing unit 320, configured to obtain a test case according to the test signaling, and generate a target instruction according to the test case;

[0102] The second processing unit 330 is configured to send the target instruction to the device to be tested according to the device identification, and receive test data returned by the device to be tested.

[0103] Furthermore, the first processing unit 320 is specifically configured to:

[0104] Obtaining the associated protocol corresponding to the test signaling;

[0105] If the associated protocol corresponding to the test signaling is obtained, determining a test case according to the test signaling and its corresponding associated protocol;

[0106] The test case is subjected to protocol parsing to obtain target instructions.

[0107] Furthermore, the first processing unit 320 is specifically configured to:

[0108] If the test case has associated execution parameters, a target instruction is generated according to the associated execution parameters and the test case.

[0109] Furthermore, the first processing unit 320 is specifically configured to:

[0110] If the test case does not have associated execution parameters, a target instruction is generated according to the preset default execution parameters and the test case.

[0111] Furthermore, the server 3 further includes:

[0112] The third processing unit is used to perform data conversion on the test data if the test data is data returned for the test signaling, so as to obtain one or more of test interaction track data, test process data and test result data.

[0113] Furthermore, the first processing unit 320 is specifically configured to:

[0114] The test case corresponding to the test signaling is determined based on the test signaling and the use case data set with a strong correlation.

[0115] Furthermore, the server 3 further includes:

[0116] The fourth processing unit is used to learn the use case data in the preset use case set through a data mining algorithm to obtain a use case data set with a strong correlation.

[0117] Figure 4 Schematic diagram of a server provided in the third embodiment of the present application. Figure 4 As shown, the server 4 of this embodiment includes: a processor 40, a memory 41, and a computer program 42 stored in the memory 41 and executable on the processor 40, such as a firmware testing program. When the processor 40 executes the computer program 42, the steps in the above-mentioned firmware testing method embodiments are implemented, such as Figure 1 Alternatively, when the processor 40 executes the computer program 42, the functions of each module / unit in the above-mentioned device embodiments are realized, for example, Figure 3 Functions of modules 310 to 330 are shown.

[0118] Exemplarily, the computer program 42 may be divided into one or more modules / units, which are stored in the memory 41 and executed by the processor 40 to complete the present application. The one or more modules / units may be a series of computer program instruction segments capable of completing specific functions, which are used to describe the execution process of the computer program 42 in the server 4. For example, the computer program 42 may be divided into an acquisition unit, a first processing unit, and a second processing unit, and the specific functions of each unit are as follows:

[0119] An acquisition unit, used for acquiring the test signaling and the device identification of the device to be tested;

[0120] A first processing unit, configured to obtain a test case according to the test signaling, and generate a target instruction according to the test case;

[0121] The second processing unit is used to send the target instruction to the device to be tested according to the device identification, and receive the test data returned by the device to be tested.

[0122] The server may include, but is not limited to, a processor 40 and a memory 41. Those skilled in the art will appreciate that Figure 4 It is only an example of server 4 and does not constitute a limitation on server 4. It may include more or fewer components than shown in the figure, or a combination of certain components, or different components. For example, the server may also include input and output devices, network access devices, buses, etc.

[0123] The processor 40 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor, etc.

[0124] The memory 41 may be an internal storage unit of the server 4, such as a hard disk or memory of the server 4. The memory 41 may also be an external storage device of the server 4, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, etc. equipped on the server 4. Further, the server 4 may also include both an internal storage unit of the server 4 and an external storage device. The memory 41 is used to store the computer program and other programs and data required by the server. The memory 41 may also be used to temporarily store data that has been output or is to be output.

[0125] It should be noted that the information interaction, execution process, etc. between the above-mentioned devices / units are based on the same concept as the method embodiment of the present application. Their specific functions and technical effects can be found in the method embodiment part and will not be repeated here.

[0126] The technicians in the relevant field can clearly understand that for the convenience and simplicity of description, only the division of the above-mentioned functional units and modules is used as an example for illustration. In practical applications, the above-mentioned function allocation can be completed by different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiment can be integrated in a processing unit, or each unit can exist physically separately, or two or more units can be integrated in one unit. The above-mentioned integrated unit can be implemented in the form of hardware or in the form of software functional units. In addition, the specific names of the functional units and modules are only for the convenience of distinguishing each other, and are not used to limit the scope of protection of this application. The specific working process of the units and modules in the above-mentioned system can refer to the corresponding process in the aforementioned method embodiment, which will not be repeated here.

[0127] An embodiment of the present application also provides a network device, which includes: at least one processor, a memory, and a computer program stored in the memory and executable on the at least one processor, wherein the processor implements the steps in any of the above-mentioned method embodiments when executing the computer program.

[0128] An embodiment of the present application further provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps in the above-mentioned method embodiments can be implemented.

[0129] An embodiment of the present application provides a computer program product. When the computer program product runs on a mobile terminal, the mobile terminal can implement the steps in the above-mentioned method embodiments when executing the computer program product.

[0130] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present application implements all or part of the processes in the above-mentioned embodiment method, which can be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium, and the computer program can implement the steps of the above-mentioned various method embodiments when executed by the processor. Among them, the computer program includes computer program code, and the computer program code can be in source code form, object code form, executable file or some intermediate form. The computer-readable medium can at least include: any entity or device that can carry the computer program code to the camera / terminal device, recording medium, computer memory, read-only memory (ROM, Read-Only Memory), random access memory (RAM, RandomAccess Memory), electric carrier signal, telecommunication signal and software distribution medium. For example, a USB flash drive, a mobile hard disk, a disk or an optical disk. In some jurisdictions, according to legislation and patent practice, computer-readable media cannot be electric carrier signals and telecommunication signals.

[0131] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0132] Those of ordinary skill in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered to be beyond the scope of this application.

[0133] In the embodiments provided in the present application, it should be understood that the disclosed devices / network equipment and methods can be implemented in other ways. For example, the device / network equipment embodiments described above are merely schematic. For example, the division of the modules or units is only a logical function division. There may be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms.

[0134] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0135] The embodiments described above are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, a person skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features may be replaced by equivalents. Such modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application, and should all be included in the protection scope of the present application.

Claims

1. A firmware testing method, characterized in that: The method is applied to a server and includes: Obtain test signaling and device identification of the device to be tested; Acquire a test case according to the test signaling, and generate a target instruction according to the test case; Sending the target instruction to the device to be tested according to the device identification, and receiving the test data returned by the device to be tested; The step of obtaining the test case according to the test signaling includes: determining the test case corresponding to the test signaling according to the test signaling and a use case data set with a strong correlation; the use case data set stores the correlation between the learned test cases; the server obtains the corresponding test case according to the test signaling parsing, and then obtains the test case with the closest relationship to the test signaling from the use case data set with a strong correlation, that is, obtains the test case that the user is most likely to use; The use case data set with strong correlation can be automatically learned based on the data use cases collected by the server. The server learns the use case data in a preset use case set through a data mining algorithm to obtain the use case data set with strong correlation.

2. The firmware testing method according to claim 1, characterized in that: The acquiring a test case according to the test signaling and generating a target instruction according to the test case includes: Obtaining the associated protocol corresponding to the test signaling; If the associated protocol corresponding to the test signaling is obtained, determining a test case according to the test signaling and its corresponding associated protocol; The test case is subjected to protocol parsing to obtain target instructions.

3. The firmware testing method according to claim 2, characterized in that: The performing protocol parsing on the test case to obtain a target instruction includes: If the test case has associated execution parameters, a target instruction is generated according to the associated execution parameters and the test case.

4. The firmware testing method according to claim 2, characterized in that: The performing protocol parsing on the test case to obtain a target instruction includes: If the test case does not have associated execution parameters, a target instruction is generated according to the preset default execution parameters and the test case.

5. The firmware testing method according to claim 1, wherein: After receiving the test data returned by the device to be tested, the method further includes: If the test data is data returned in response to the test signaling, data conversion is performed on the test data to obtain one or more of test interaction track data, test process data, and test result data.

6. A server, characterized in that: include: An acquisition unit, used for acquiring the test signaling and the device identification of the device to be tested; A first processing unit, configured to obtain a test case according to the test signaling, and generate a target instruction according to the test case; A second processing unit, configured to send the target instruction to the device to be tested according to the device identification, and receive test data returned by the device to be tested; Among them, the first processing unit is also used to determine the test case corresponding to the test signaling based on the test signaling and the use case data set with a strong correlation; the use case data set stores the correlation relationship between each test case that has been learned; the server obtains the corresponding test case based on the test signaling analysis, and then obtains the test case that is most closely related to the test signaling from the use case data set with a strong correlation, that is, obtains the test case that the user is most likely to use; the use case data set with a strong correlation can be automatically learned based on the data use cases collected by the server, and the server learns the use case data in the preset use case set through a data mining algorithm to obtain the use case data set with a strong correlation.

7. A server comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that: When the processor executes the computer program, the method according to any one of claims 1 to 5 is implemented.

8. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by a processor, the method according to any one of claims 1 to 5 is implemented.