Disclosure of Invention
Embodiments of the present invention provide a test case generation method, a test case execution method, and a test case execution device, which can implement mixed programming of CBBs using different types of programming languages in one test case.
In order to achieve the above purpose, the embodiment of the invention adopts the following technical scheme:
in a first aspect, a method for generating a test case is provided, which includes the following steps: receiving an instruction input by a user, and determining a CBB packaging module selected by the user in a universal basic module CBB library according to the instruction input by the user, wherein the instruction input by the user is used for indicating the CBB packaging module selected by the user in the CBB library and adopting the CBB packaging module selected by the user to form a composition strategy of a test case; the CBB library comprises a plurality of CBB encapsulation modules, each CBB encapsulation module comprises a tag header and a universal base module CBB, and the tag header comprises an identifier indicating the programming language type of the CBB; and generating a test case by adopting the CBB packaging module selected by the user according to the composition strategy, wherein the test case comprises at least one CBB packaging module, and the test case is formed by the execution sequence of the at least one CBB packaging module. In the scheme, a CBB packaging module selected by a user is determined in a CBB library according to an instruction input by the user, and a test case is generated by the CBB packaging module selected by the user according to a composition strategy indicated by the instruction input by the user, so that the test case comprises at least one CBB packaging module, and the at least one CBB packaging module in the test case is arranged according to the execution sequence of the CBB contained in the test case. Because the label head of the CBB encapsulation module in the test case carries the identification of the programming language type of the CBB contained in the CBB encapsulation module, when the test case generated by the method is executed, the execution process corresponding to the programming language type can be directly selected to respectively execute the CBB of each CBB encapsulation module of the test case, thereby realizing the mixed programming of the CBBs adopting different programming languages in one test case, and the test case can also be executed when the CBB encapsulation modules adopting different programming languages are mixed for programming.
In one possible design, before receiving the instruction input by the user, the method further includes the following steps: acquiring a programming language type of the CBB; and adding a label head to the CBB, generating the CBB encapsulation module, and adding the CBB encapsulation module to the CBB library. The CBB library can be generated by adopting the method, and the update of the CBB library is realized.
In one possible design, before adding the tag header to the CBB, the method further includes: analyzing the CBB and determining whether the CBB contains input parameters and/or output parameters; if the CBB contains input parameters and/or output parameters, the input parameters and/or output parameters are written to the tag header. According to the function realized by the CBB, the CBB may not have input parameters and output parameters, or only have input parameters, or only have output parameters, or have input parameters and output parameters at the same time; if the input parameters and/or the output parameters exist according to the result of analyzing the CBB, the input parameters and/or the output parameters are written into the tag header, so that when the function of the CBB is executed, whether the input parameters and/or the output parameters are contained in the tag header can be determined according to the tag header, and the values can be assigned to the input parameters and/or the output parameters contained in the CBB according to the input parameters and/or the output parameters analyzed from the tag header.
In a second aspect, a device for generating a test case is provided, which includes a receiving module and a packaging module, wherein the receiving module is used for receiving an instruction input by a user; the design module is used for determining the universal basic module CBB packaging module selected by the user in the universal basic module CBB library according to the instruction input by the user and received by the receiving module, wherein the instruction input by the user is used for indicating the CBB packaging module selected by the user in the CBB library and adopting the CBB packaging module selected by the user to form a composition strategy of the test case; the CBB library comprises a plurality of CBB encapsulation modules, each CBB encapsulation module comprises a tag header and a universal base module CBB, and the tag header comprises an identifier indicating the programming language type of the CBB; and generating a test case by adopting the CBB packaging module selected by the user according to the composition strategy, wherein the test case comprises at least one CBB packaging module, and the test case is formed by the execution sequence of the at least one CBB packaging module.
In one possible design, the method further comprises: an acquisition module and a packaging module; the acquisition module is used for acquiring the programming language type of the CBB; and the encapsulation module is used for adding the tag head to the CBB, generating a CBB encapsulation module and adding the CBB encapsulation module to the CBB library.
In one possible design, the method further comprises: the analysis module is used for analyzing the CBB and determining that the CBB comprises input parameters and/or output parameters; the input parameters and/or output parameters are written to the tag header.
In a third aspect, an apparatus for generating a test case is provided, including: communication interface, processor, memory, bus; the memory is used for storing computer execution instructions, the processor is connected with the memory through a bus, and when the test case generation device runs, the processor executes the computer execution instructions stored in the memory, so that the test case generation device executes the test case generation method of the first aspect.
In a fourth aspect, embodiments of the present application provide a computer storage medium comprising instructions which, when executed on a computer, cause the computer to perform the method of the first aspect.
In a fifth aspect, embodiments of the present application provide a computer program product comprising instructions which, when run on a computer, cause the computer to perform the method of the first aspect.
It can be understood that any one of the above-provided test case generation apparatuses, computer storage media, or computer program products is used to execute the above-provided test case generation method corresponding to the first aspect, and therefore, the beneficial effects that can be achieved by the above-provided test case generation apparatus, computer storage media, or computer program product can refer to the beneficial effects of the test case generation method according to the first aspect and the corresponding solutions in the following specific embodiments, and are not described herein again.
In a sixth aspect, a method for executing a test case is provided, including: loading a test case, wherein the test case comprises at least one universal basic module CBB encapsulation module, the at least one CBB encapsulation module forms the test case according to an execution sequence, the CBB encapsulation module comprises a tag header and a universal basic module CBB, and the tag header comprises a mark indicating the programming language type of the CBB in the CBB encapsulation module; according to the execution sequence, obtaining a pre-executed CBB encapsulation module in the test case, wherein the pre-executed CBB encapsulation module comprises a next executed CBB indicated by the execution sequence; analyzing the label head of the pre-executed CBB encapsulation module to obtain the programming language type of the CBB of the pre-executed CBB encapsulation module; and acquiring an execution process corresponding to the programming language type according to the programming language type, and executing the CBB of the pre-executed CBB encapsulation module through the execution process. In the scheme, because the tag header in the CBB encapsulation module carries the identifier of the programming language type of the CBB, when the test case composed of such CBB encapsulation modules is executed, the execution process can be directly selected for the CBB of the pre-executed CBB encapsulation module according to the programming language type to execute the CBB of the pre-executed CBB encapsulation module, for example, the execution order may be composed of an ID (identification) of each CBB encapsulation module, and the execution order is used for identifying the order in which the CBB of each CBB encapsulation module is executed; after the test case is loaded, firstly, determining a CBB encapsulation module of a first executed CBB according to the execution sequence, then analyzing a tag head of the CBB encapsulation module to obtain a programming language type of the first executed CBB, obtaining an execution process corresponding to the programming language type of the first executed CBB to execute the first executed CBB, then obtaining a CBB encapsulation module of a second executed CBB according to the execution sequence, and circulating the operation until the CBBs of all CBB encapsulation modules in the test case are executed. Therefore, even if the CBBs contained in the CBB packaging modules in the test cases adopt different programming language types, the test can be ensured to be executed, and the test cases adopting the mixed programming of the CBBs adopting different programming languages are executed.
One possible design way is that the tag header also includes input parameters of the CBB of the pre-executed CBB encapsulation module; before acquiring an execution process corresponding to the programming language type according to the programming language type and executing the CBB of the pre-executed CBB encapsulation module through the process, the method further comprises the following steps: analyzing a tag head of the pre-executed CBB encapsulation module to obtain input parameters of a CBB of the pre-executed CBB encapsulation module; acquiring an input value of a CBB of a pre-executed CBB encapsulation module; and assigning the input value to the input parameter of the CBB of the pre-executed CBB encapsulation module. The input value of the CBB of the pre-executed CBB encapsulation module may be input by a user or may be an output value of the CBB encapsulation module executed before the pre-executed CBB encapsulation module, and the following two ways may be specifically adopted to obtain the input value of the CBB of the pre-executed CBB encapsulation module, where the first way is: receiving an input value of the CBB of the pre-executed CBB encapsulation module input by a user; the second method comprises the following steps: reading the output value of the CBB encapsulation module executed before the pre-executed CBB encapsulation module according to the execution sequence and the input parameters of the CBB of the pre-executed CBB encapsulation module; and taking the output value of the CBB encapsulation module executed before the pre-executed CBB encapsulation module as the input value of the CBB of the pre-executed CBB encapsulation module.
One possible design approach is to assign input values to input parameters of the CBBs of the pre-executed CBB encapsulation module, including: converting the input value into a format which is the same as the format type of the input parameter; and assigning the input value after format conversion to the input parameter of the CBB of the pre-executed CBB encapsulation module.
One possible design approach is that the tag header further includes output parameters of the CBB of the pre-executed CBB encapsulation module; the method further comprises: analyzing a tag head of the pre-executed CBB encapsulation module to obtain output parameters of a CBB of the pre-executed CBB encapsulation module; according to the programming language type, obtaining an execution process corresponding to the programming language type, and after the CBB of the pre-executed CBB encapsulation module is executed through the process, the method further comprises the following steps: and assigning the output value of the CBB of the pre-executed CBB package to the output parameter of the CBB of the pre-executed CBB package module and storing the output parameter.
In addition, in the above solution, a unified format may be used before format conversion is performed on the input value and the output value, because cross-language multiplexing of the CBB encapsulation modules in the test case needs to be implemented, so that the input value and the output value of each CBB need to be stored in the unified format, for example, the input value of the first CBB encapsulation module in the test case is usually input by a user through an instruction, the input value included in the instruction input by the user may be in any format, first the input value needs to be stored in a system memory in a predetermined format (e.g., a character string format), when the CBB of the first CBB encapsulation module is executed by a corresponding execution program, the input value needs to be converted into a format (e.g., a numerical type) identical to the input parameter of the CBB of the first CBB encapsulation module, then the input parameter is assigned to the CBB of the first CBB encapsulation module, and the output value of the CBB of the first CBB encapsulation module is assigned to the output parameter of the CBB of the first CBB encapsulation module, and also converted into a predetermined format (e.g., a string format) for storage, so that the CBB of the next CBB encapsulation module is called by the corresponding executive when executed.
In a seventh aspect, an apparatus for executing a test case is provided, including: the test case comprises at least one CBB packaging module which forms the test case according to an execution sequence, the CBB packaging module comprises a label head and a universal basic module CBB, and the label head comprises a mark indicating the programming language type of the CBB in the CBB packaging module; the acquisition module is used for acquiring a pre-executed CBB encapsulation module in the test case loaded by the loading module according to the execution sequence, wherein the pre-executed CBB encapsulation module comprises a next executed CBB indicated by the execution sequence; the analysis module is used for analyzing the label head of the pre-executed CBB encapsulation module acquired by the acquisition module and acquiring the programming language type of the CBB of the pre-executed CBB encapsulation module; and the execution module is used for acquiring an execution process corresponding to the programming language type according to the programming language type analyzed by the analysis module and executing the CBB of the pre-executed CBB encapsulation module through the execution process.
One possible design is: the tag head also comprises input parameters of the CBB of the pre-executed CBB encapsulation module; the analysis module is also used for analyzing the label head of the pre-executed CBB encapsulation module acquired by the acquisition module and acquiring the input parameters of the CBB of the pre-executed CBB encapsulation module; the assignment module is used for acquiring the input value of the CBB of the pre-executed CBB encapsulation module; and assigning the input value to the input parameter of the CBB of the pre-executed CBB encapsulation module. Illustratively, the assignment module is specifically configured to receive user input of input values of the CBB of the pre-executed CBB encapsulation module. Or the assignment module is specifically configured to read an output value of the CBB encapsulation module executed before the pre-executed CBB encapsulation module according to the execution order and the input parameter of the CBB of the pre-executed CBB encapsulation module; and taking the output value of the CBB encapsulation module executed before the pre-executed CBB encapsulation module as the input value of the CBB of the pre-executed CBB encapsulation module.
One possible design is: the assignment module is specifically used for converting the input value into a format with the same format type as the input parameter; and assigning the input value after format conversion to the input parameter of the CBB of the pre-executed CBB encapsulation module.
One possible design is: the tag header also includes output parameters of the CBB of the pre-executed CBB encapsulation module; the analysis module is also used for analyzing the label head of the pre-executed CBB encapsulation module and acquiring the output parameters of the CBB of the pre-executed CBB encapsulation module; the assignment module is further configured to assign the output value of the CBB of the pre-executed CBB enclosure to the output parameter of the CBB of the pre-executed CBB enclosure module and store the output parameter.
In an eighth aspect, there is provided a device for executing a test case, including: communication interface, processor, memory, bus; the memory is used for storing computer execution instructions, the processor is connected with the memory through the bus, and when the execution device of the test case runs, the processor executes the computer execution instructions stored in the memory, so that the execution device of the test case executes the method according to the sixth aspect.
In a ninth aspect, there is provided a computer storage medium characterized in that it comprises instructions which, when run on a computer, cause the computer to perform the method of the sixth aspect.
In a tenth aspect, embodiments of the present application provide a computer program product comprising instructions which, when run on a computer, cause the computer to perform the method of the sixth aspect.
It can be understood that any one of the above-provided execution devices, computer storage media, or computer program products of the test case is used to execute the above-provided execution method of the test case corresponding to the sixth aspect, so that the beneficial effects that can be achieved by the execution device of the test case according to the sixth aspect and the beneficial effects of the solutions in the following specific embodiments may be referred to, and are not described herein again.
In an eleventh aspect, a method for generating a CBB library of generic base modules is provided, comprising the steps of: acquiring a programming language type of a universal basic module CBB; adding a label head to the CBB to generate a CBB encapsulation module of a universal basic module, wherein the CBB encapsulation module comprises the label head and the CBB, and the label head comprises an identifier indicating the programming language type of the CBB; the CBB encapsulation modules are added to the CBB library. In the scheme, because the CBB encapsulation modules contained in the CBB library generated according to the scheme have the tag headers and the CBBs, and the tag headers contain the identifications indicating the programming language types of the CBBs, when the CBB encapsulation modules are adopted to generate the test cases and are executed, the execution processes corresponding to the programming language types can be directly selected to respectively execute the CBBs of each CBB encapsulation module of the test cases, so that the mixed programming of the CBBs adopting different programming languages can be realized in one test case, and the test case can also be executed when the CBB encapsulation modules adopting different programming languages are mixed programmed.
In one possible design, before adding the tag header to the CBB, the method further includes: analyzing the CBB and determining whether the CBB contains input parameters and/or output parameters; if the CBB contains input parameters and/or output parameters, the input parameters and/or output parameters are written to the tag header. According to the function realized by the CBB, the CBB may not have input parameters and output parameters, or only have input parameters, or only have output parameters, or have input parameters and output parameters at the same time; if the input parameters and/or the output parameters exist according to the result of analyzing the CBB, the input parameters and/or the output parameters are written into the tag header, so that when the function of the CBB is executed, whether the input parameters and/or the output parameters are contained in the tag header can be determined according to the tag header, and the values can be assigned to the input parameters and/or the output parameters contained in the CBB according to the input parameters and/or the output parameters analyzed from the tag header.
In a twelfth aspect, an apparatus for generating a CBB library of a generic basic module is provided, where the obtaining module is configured to obtain a programming language type of the CBB; the encapsulation module is used for adding a label head to the CBB acquired by the acquisition module to generate a CBB encapsulation module of a universal basic module, the CBB encapsulation module comprises the label head and the CBB, and the label head comprises an identifier indicating the programming language type of the CBB; the CBB encapsulation modules are added to the CBB library.
In one possible design, the method further comprises: the analysis module is used for analyzing the CBB acquired by the acquisition module and determining whether the CBB comprises input parameters and/or output parameters; if the CBB contains input parameters and/or output parameters, the input parameters and/or output parameters are written to the tag header.
In a thirteenth aspect, an apparatus for generating a CBB library of generic base modules is provided, including: communication interface, processor, memory, bus; the memory is used for storing computer-executable instructions, and the processor is connected with the memory through the bus, and when the device for generating the universal base module CBB library runs, the processor executes the computer-executable instructions stored in the memory, so that the device for generating the universal base module CBB library executes the method of the eleventh aspect.
In a fourteenth aspect, embodiments of the present application provide a computer storage medium comprising instructions that, when executed on a computer, cause the computer to perform the method of the eleventh aspect.
In a fifteenth aspect, embodiments of the present application provide a computer program product comprising instructions which, when run on a computer, cause the computer to perform the method of the eleventh aspect.
It should be understood that any one of the above-mentioned apparatuses, computer storage media, or computer program products for generating a CBB library of a generic basic module is used to execute the method for generating a CBB library of a generic basic module according to the first aspect, and therefore, the beneficial effects achieved by the method for generating a CBB library of a generic basic module according to the first aspect and the beneficial effects of the solution according to the following embodiments may be referred to, and are not repeated herein.
Detailed Description
The technical solution in the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings in the embodiments of the present invention.
The principle of this application does: adding a label head containing the identification of the programming language type to the CBB to form a CBB encapsulation module; and then, mixing CBB packaging modules of CBBs of different programming language types in the same test case to develop a test case with complete functions. The test case can send the CBB of each CBB encapsulation module written by different programming languages into different execution processes to be executed in the execution process, thereby realizing the mixed programming of the CBBs adopting different programming languages in one test case.
The present solution needs to operate in the following application scenarios, where the device under test and the computer (e.g. a personal PC) are connected through communication (e.g. using a network card for connection), and the computer needs to install a front-end IDE (Integrated Development Environment) for test case Development, which is an example: the computer operating system can be Windows7, more than 512M memory, more than 40G hard disk (including system disk). The tested device provides a background execution engine for executing the test case. CBB refers to components, modules, techniques and other related design results that can be shared between different products and systems, and in this application, refers to program code that can be written in a programming language to implement specific functions, and that can be shared between different products and systems. Test Case (Test Case) refers to a set of Test inputs, execution conditions, and expected results tailored for a particular target in order to Test a certain program path or verify whether a certain specific requirement is met.
As shown in fig. 1, the embodiment of the present application is applied to a system architecture composed of a test case generation device and a test case execution device, where the test case generation device runs a front-end IDE, has functions of adding a tag header to a CBB and completing test case design, and the test case generation device may be a computer itself or a functional entity integrated in the computer. The execution device of the test case runs the background execution engine, executes the loaded test case according to the actual input parameters output by the user and outputs the running result, and the execution device of the test case can be the tested device or a functional entity in the tested device.
The device for generating the test case comprises: referring to fig. 2, the communication interface 101, the processor 102, the memory 103 and the bus 104 are included, and the communication interface 101 and the processor 102 are connected to the memory 103 through the bus 104.
The processor 102 may be a general-purpose Central Processing Unit (CPU), a microprocessor, an Application-Specific Integrated Circuit (ASIC), or one or more Integrated circuits configured to control the execution of programs in accordance with the teachings of the present disclosure.
The Memory 103 may be a Read-Only Memory (ROM) or other type of static storage device that can store static information and instructions, a Random Access Memory (RAM) or other type of dynamic storage device that can store information and instructions, an Electrically Erasable Programmable Read-Only Memory (EEPROM), a Compact Disc Read-Only Memory (CD-ROM) or other optical Disc storage, optical Disc storage (including Compact Disc, laser Disc, optical Disc, digital versatile Disc, blu-ray Disc, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited to these. The memory may be self-contained and coupled to the processor via a bus. The memory may also be integral to the processor.
The memory 103 is used for storing application program codes for executing the scheme of the application, and the processor 102 controls the execution. The communication interface 101 is configured to receive content input by an external device, such as a user instruction in the present application, and the processor 102 is configured to execute application program code stored in the memory 103, so as to implement the method for generating a test case described in the embodiment of the present application.
The execution device of the test case comprises: referring to fig. 3, the communication interface 201, the processor 202, the memory 203 and the bus 204 are included, and the communication interface 201 and the processor 202 are connected to the memory 203 through the bus 204.
Processor 202 may be a general-purpose Central Processing Unit (CPU), a microprocessor, an Application-Specific Integrated Circuit (ASIC), or one or more Integrated circuits configured to control the execution of programs in accordance with the teachings of the present disclosure.
The Memory 203 may be a Read-Only Memory (ROM) or other type of static storage device that can store static information and instructions, a Random Access Memory (RAM) or other type of dynamic storage device that can store information and instructions, an Electrically Erasable Programmable Read-Only Memory (EEPROM), a Compact Disc Read-Only Memory (CD-ROM) or other optical Disc storage, optical Disc storage (including Compact Disc, laser Disc, optical Disc, digital versatile Disc, blu-ray Disc, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited to such. The memory may be self-contained and coupled to the processor via a bus. The memory may also be integral to the processor.
The memory 203 is used for storing application program codes for executing the scheme of the application, and the processor 102 controls the execution. The communication interface 201 is configured to receive content input by an external device, such as a user instruction in the present application, and the processor 202 is configured to execute application program code stored in the memory 203, so as to implement the method for executing the test case described in the embodiment of the present application.
Based on the system and the entity apparatus provided in the foregoing scenario, referring to fig. 4, an embodiment of the present application provides a method for generating a test case, including the following steps:
s301, the generating device of the test case acquires the programming language type of the CBB.
Here, the CBB may be an existing or newly developed program module in a CBB library, and the programming language type of the CBB refers to a function implemented by what language the CBB is written in, where the programming language type may include: python (an object-oriented interpreted computer programming Language), Ruby (an object-oriented computer programming Language), TCL (Tool Command Language), DLL (a file format), Perl (actual Extraction and Reporting Language), C Language, and the like.
S302, adding a label head to the CBB by the test case generating device, generating a CBB encapsulation module, and adding the CBB encapsulation module to the CBB library.
The CBB library in step S302 may be composed of CBB encapsulation modules generated by a plurality of newly developed CBBs, or all CBBs in the existing CBB library (including CBBs in the prior art) are updated to the CBB library formed by the CBB encapsulation modules through step S302, or the CBB encapsulation modules including CBBs with new functions may be added to the CBB library through step S302, so as to continuously update and extend the CBB library.
The CBB packaging module comprises a label head and a CBB. The label head comprises: the tag header contains an identification that indicates the programming language type of the CBB. The tag header is identified with fixed format annotations according to the different programming language types in step S301, for example: // Language: c (identify C language). The CBB encapsulation module shown with reference to FIG. 5 also contains the functional implementation of the CBB, i.e. the program code that implements the CBB. In step S302, automatic tag header addition is performed on the existing CBBs in the CBB library, or the tag header is automatically added to the newly developed CBBs, so as to ensure that the execution engine can uniformly identify and execute corresponding processing on the CBBs of the CBB encapsulation module.
And S303, receiving an instruction input by a user by the test case generating device.
S304, the test case generation device determines the CBB packaging module selected by the user in the universal basic module CBB library according to the instruction input by the user, wherein the instruction input by the user is used for indicating the CBB packaging module selected by the user in the CBB library and adopting the CBB packaging module selected by the user to form a test case composition strategy.
S305, the test case generating device generates the test case by adopting the CBB packaging module selected by the user according to the composition strategy, wherein the test case comprises at least one CBB packaging module, and the at least one CBB packaging module forms the test case according to the execution sequence.
With respect to steps S303-S305, the design interface of the test case may be a canvas that is presented to the user and allows the user to perform a drag and drop operation and a wire connection operation directly. The test case generation device may directly receive an instruction input by a user, for example, the instruction input by the user may be to select the CBB encapsulation module by dragging a graph of the CBB encapsulation module on a canvas according to the instruction input by the user, and further perform a connection operation between the graphs of the selected CBB encapsulation module on the canvas according to the instruction input by the user, so as to assemble the CBB encapsulation module into a specific test case, thereby completing a function of a specific test item. It is understood that the wiring operation between the patterns of the selected CBB encapsulation modules is only a composition strategy for composing the selected CBB encapsulation modules into test cases, and other ways for implementing the composition strategy are also possible. In addition, in the test case, the CBB encapsulation modules are arranged according to the execution order of the CBBs included in each CBB encapsulation module, as shown in fig. 5, in the test case design function, the relationship of the CBB encapsulation modules is designed according to the execution order of the CBBs of the CBB encapsulation modules as follows: CBB encapsulation module 1 containing CBB1 written by Python, CBB encapsulation module 2 containing CBB2 written by Ruby, and after CBB encapsulation module 2 in two branches respectively: CBB Package Module 3 containing CBB3 written by TCL and CBB Package Module 4 containing CBB4 written by DLL. The execution order may be composed of an ID (identification) of each CBB encapsulation module, and the execution order is used to identify the sequence in which the CBBs of each CBB encapsulation module are executed. It is understood that steps S301 and S302 are not necessary in all embodiments, that is, in one embodiment, if a CBB library is already obtained and contains a plurality of CBB encapsulation modules, the test case generation only needs to execute steps S303-305.
Specifically, an example is provided to provide the following detailed description for the generation of the test case:
opening a template of a CBB encapsulation module in an IDE environment, wherein the template of the CBB encapsulation module consists of a CBB identification graph on the left side in a figure 6 and a Dialog box (Dialog) on the right side in the figure 6, the CBB identification graph has no input parameter and output parameter in an initial state, the Dialog box on the right side in the figure 6 pops up after double-clicking the CBB identification graph, a function parameter function description part only has a CBB label head part and does not contain the implementation process content of the functions of the CBB, the implementation code of the CBB developed by the existing Ruby or Python language and other languages can be copied into the CBB encapsulation module, and the CBB encapsulation module is formed with the CBB label head predefined by the system. The editing process of the tag head comprises the following specific processes:
a. the identification of the programming Language type of the CBB is added, and according to the programming Language type of the CBB, the identification is carried out by adopting a fixed format annotation, such as # # Language: Ruby (the Ruby Language is identified for the CBB).
b. Analyzing the CBB and determining whether the CBB contains input parameters and/or output parameters; if the CBB contains input parameters and/or output parameters, the input parameters and/or output parameters are written into a tag header, and the input parameters and/or output parameters are respectively identified in the tag header according to fixed format comments so as to execute engine identification.
Wherein the function parameter function description part in fig. 6 constitutes a tag header, which also carries the ID of the CBB. The following are exemplary: the label head comprises input parameters: # PARA 1: alloarm, output parameter # # output 1: and (5) alarm. In the initial state, the CBB flag pattern has no input parameters and no output parameters, and after the input parameters and/or the output parameters are written into the tag header in step b, input parameter flags (which may be text boxes, for example, the oval text boxes corresponding to AllAlarm and AlarmList in fig. 6) and output parameter flags (oval text boxes corresponding to Alarm) are generated on the CBB flag pattern, and the user may directly edit the input parameters on the CBB flag pattern to assign values to the output parameters. In addition, the tag header also contains the execution result of the CBB: branch1: suc (success), branch 2: fail; the result of the execution of the same CBB is identified on the CBB identification graph. The completion of the dialog box editing can be confirmed by OK, or by cancel.
Providing a specific example of the step S305, a process of composing a test case by using the selected CBB encapsulation module according to the composition policy: specifically, any test case may be formed by combining the operations of the CBB identification patterns. For example: the branch selection after the CBB execution of the CBB encapsulation module in the test case is completed can be realized by the connection line between the CBB identification patterns, as shown in fig. 7: the method can realize that different branches are selected to execute according to the execution result of the CBB of the last CBB encapsulation module. The CBB of the CBB encapsulation module 1 is used to implement the condition selection function, and is described as: and printing and reporting result information fed back by the DUT (Device under test), wherein if the result information is successful, the reporting module detects RTWP (Received Total Wideband Power) information, and otherwise, printing and reporting error information. The CBB encapsulation module 1 is connected to the CBB encapsulation module 2 and the CBB encapsulation module 3, the CBB encapsulation module 2 and the CBB encapsulation module 3 form a selection relation according to the execution result of the CBB encapsulation module 1, and the CBB of the CBB encapsulation module 2 is executed if the CBB of the CBB encapsulation module 1 is successfully executed (suc), and the CBB encapsulation module has the following functions: and reporting a result, wherein the description is as follows: and (5) successfully testing, reporting a successful test result, and uploading a test record. A CBB failure to execute (Fail) of CBB encapsulation module 1 executes the CBB of CBB encapsulation module 3, which functions as: and reporting a result, wherein the description is as follows: and (5) reporting the failure test result and uploading the test record when the test fails. The cyclic processing of the CBB encapsulation modules in the test case can be realized by the connection lines between the CBB identification patterns, as shown in fig. 8: the CBBs of CBB encapsulated modules that need to be executed in a loop are indicated directly by the line with arrows. The CBB of CBB encapsulation module 1 has the following functions: issuing a command, after determining a slot (slot) into which a single board is inserted, inquiring single board software version information (SoftVer), wherein an input parameter of the single board software version information is the slot, an output parameter of the single board software version information is the SoftVer, if the CBB of the CBB encapsulation module 1 is successfully executed, the CBB of the CBB encapsulation module 2 is executed, and the function of the single board software version information is compared and is described as follows: the single board software version verification comprises the following input parameters: SoftVer, BOM (Bill of Material ), and softpkgvver (software package version), and if the CBB of the CBB encapsulation module 2 is successfully executed, the above-mentioned loop is executed on the board software version information of the next slot in a loop manner. In addition, the parameter class variables between CBBs may be passed, for example, with the output parameters of the CBB of the previous CBB enclosure module as input parameters of the CBB of the following CBB enclosure module, as shown in FIG. 9: through the ellipse icons in the figure representing variables (input parameters or output parameters), parameters are transferred among different CBBs, and a plurality of CBB encapsulation modules are connected to form a test case, for example, the CBB of the CBB encapsulation module 1 has the function of acquiring a bar code, and is described as follows: acquiring a single board bar code (Barcode) from the actuator, wherein the CBB of the CBB encapsulation module 2 has the function of calculating Bom, and is described as follows: and calculating the single board Bom code according to the single board bar code, wherein the output parameter Barcode of the CBB encapsulation module 1 is used as the input parameter of the CBB encapsulation module 2. In addition, the sub-process composed of a plurality of CBB encapsulation modules can be nested and encapsulated into a CBB encapsulation module with larger grain size. As shown in fig. 10: the execution flow composed of the CBB encapsulation module 1, the CBB encapsulation module 2, and the CBB encapsulation module 3 can be encapsulated to be represented by a CBB identification graph (CBB encapsulation module 4).
Providing a complete test case, referring to fig. 11, dragging the CBB encapsulation module in the CBB library to a test case editing area (test case editing area: the part of fig. 11 bearing all CBB identification graphs) of the IDE with a mouse, and determining the selected CBB encapsulation module according to the dragged CBB encapsulation module; and assembling the CBB encapsulation module according to the editing mode of the template of the CBB encapsulation module and the combination mode of the CBB identification graph to generate a test case. Specifically, the test case may be saved in an ini (Initialization File) text File in a script File form.
In the scheme, a CBB packaging module selected by a user is determined in a CBB library according to an instruction input by the user, and a test case is generated by the CBB packaging module selected by the user according to a composition strategy indicated by the instruction input by the user, so that the test case comprises at least one CBB packaging module, and the at least one CBB packaging module in the test case is arranged according to the execution sequence of the CBB contained in the test case. Because the label head of the CBB encapsulation module in the test case carries the identification of the programming language type of the CBB contained in the CBB encapsulation module, when the test case generated by the method is executed, the execution process corresponding to the programming language type can be directly selected to respectively execute the CBB of each CBB encapsulation module of the test case, thereby realizing the mixed programming of the CBBs adopting different programming languages in one test case, and the test case can also be executed when the CBB encapsulation modules adopting different programming languages are mixed for programming.
It is to be appreciated that, since the CBB library can be generated or updated individually, in one embodiment of the present application, a method for generating a CBB library of generic base modules is provided, which includes the following steps with reference to fig. 12:
s401, the device for generating the CBB library of the universal basic module obtains the programming language type of the CBB of the universal basic module.
S402, adding a label head to the CBB by the device for generating the CBB library of the universal basic module to generate a CBB encapsulation module of the universal basic module, wherein the CBB encapsulation module comprises the label head and the CBB, and the label head comprises an identifier indicating the programming language type of the CBB.
Before adding the label head to the CBB, analyzing the CBB and determining whether the CBB contains input parameters and/or output parameters; if the CBB contains input parameters and/or output parameters, the input parameters and/or output parameters are written to the tag header.
And S403, adding the CBB encapsulation module to the CBB library by the device for generating the CBB library of the universal basic module.
The specific schemes of steps S401 to 403 executed by the device for generating the CBB library of the generic basic module are similar to the steps S301 to 303 executed by the device for generating the test case, and detailed descriptions thereof are omitted.
In the scheme, because the CBB encapsulation modules contained in the CBB library generated according to the scheme have the tag headers and the CBBs, and the tag headers contain the identifications indicating the programming language types of the CBBs, when the CBB encapsulation modules are adopted to generate the test cases and are executed, the execution processes corresponding to the programming language types can be directly selected to respectively execute the CBBs of each CBB encapsulation module of the test cases, so that the mixed programming of the CBBs adopting different types of programming languages is realized in one test case, and the test case can also be executed when the CBB encapsulation modules adopting different types of programming languages are mixed programmed.
The process completes the generation process of a test case, for the execution of the test case, after the execution device of the test case loads the test case, the label head of each CBB packaging module is analyzed and identified, the test scripts of the CBBs in different programming languages are sent to different execution processes for execution, and the assignment of input parameters and output parameters is subjected to push-off unified processing. Based on the system and the entity apparatus provided in the foregoing scenario, referring to fig. 13, an embodiment of the present application provides a method for executing a test case, including the following steps:
s501, loading the test case by the execution device of the test case.
The test case comprises at least one CBB encapsulation module, the at least one CBB encapsulation module forms the test case according to the execution sequence, the CBB encapsulation module comprises the tag header and the CBB, and the tag header comprises an identifier indicating the programming language type of the CBB in the CBB encapsulation module.
S502, the execution device of the test case acquires the pre-executed CBB encapsulation module in the test case according to the execution sequence, wherein the pre-executed CBB encapsulation module comprises the next executed CBB indicated by the execution sequence.
For example: the execution order may be composed of an ID (identification) of each CBB encapsulation module, which serves to identify the sequential order in which the CBBs of each CBB encapsulation module are executed; certainly, when CBBs of CBB encapsulation modules in a test case are sequentially executed according to an execution order, the CBB encapsulation module identified first is the CBB encapsulation module with the first ID number in the execution order, in the scheme, a process execution process table may be generated according to the execution order after a test case generation device generates the test case, the execution order is indicated by the sequence order of IDs of the CBB encapsulation modules included in the process table, and the corresponding process execution process table is acquired when the test case is loaded by the execution device of the test case.
S503, the executing device of the test case analyzes the label head of the pre-executed CBB encapsulation module, and obtains the programming language type of the CBB of the pre-executed CBB encapsulation module.
Of course, according to the above test case generation method, if the tag header further includes the input parameters of the CBB of the pre-executed CBB encapsulation module; before step S504, the tag header of the pre-executed CBB encapsulation module needs to be analyzed to obtain the input parameters of the CBB of the pre-executed CBB encapsulation module; acquiring an input value of a CBB of a pre-executed CBB encapsulation module; and assigning the input value to the input parameter of the CBB of the pre-executed CBB encapsulation module.
The input value of the CBB of the pre-executed CBB encapsulation module may be obtained in the following two ways: receiving an input value of a CBB of a pre-executed CBB encapsulation module input by a user; the second method comprises the following steps: reading the output value of the CBB encapsulation module executed before the pre-executed CBB encapsulation module according to the execution sequence and the input parameters of the CBB of the pre-executed CBB encapsulation module; and taking the output value of the CBB encapsulation module executed before the pre-executed CBB encapsulation module as the input value of the CBB of the pre-executed CBB encapsulation module. In addition, assigning the input value to the input parameter of the CBB of the pre-executed CBB encapsulation module specifically includes: converting the input value into a format which is the same as the format type of the input parameter; and assigning the input value after format conversion to the input parameter of the CBB of the pre-executed CBB encapsulation module. For example, the input values of the pre-executed CBB encapsulation modules may be input by a user through an instruction, the input values included in the instruction input by the user may be in any format, first, the input values need to be stored in a predetermined format (e.g., a string format) in a system memory, when the CBB of the first CBB encapsulation module is executed by the corresponding execution program, the input values need to be converted into the same format (e.g., a numerical type) as the input parameters of the CBB of the first CBB encapsulation module, and then the input parameters are assigned to the CBB of the first CBB encapsulation module.
Of course, if the tag header further includes the output parameters of the CBB of the pre-executed CBB encapsulation module; the method further comprises: and analyzing the label head of the pre-executed CBB encapsulation module to obtain the output parameters of the CBB of the pre-executed CBB encapsulation module.
S504, the execution device of the test case acquires an execution process corresponding to the programming language type according to the programming language type, and executes the CBB of the pre-executed CBB encapsulation module through the execution process.
If the tag header of the pre-executed CBB encapsulation module is parsed before step S504, and the output parameters of the CBB of the pre-executed CBB encapsulation module are obtained, step S404 is followed by: and assigning the output value of the CBB of the pre-executed CBB package to the output parameter of the CBB of the pre-executed CBB package module and storing the output parameter. For example: and assigning the output value of the CBB of the pre-executed CBB package to the output parameter of the CBB of the pre-executed CBB package module, and converting the output value into a preset format (such as a character string format) for storage.
In the scheme, the input value and the output value are stored in the system content in the same format, and when the input value and the output value need to be assigned to corresponding parameters, format conversion is carried out, so that cross-language multiplexing of the CBB packaging module in the test case is realized through stack pushing and pull unified processing. For example, the input value of the first CBB encapsulation module in the test case is usually input by a user through a command, the input value included in the command input by the user may be in any format, first the input value needs to be stored in a predetermined format (for example, a character string format) in the system memory, when the CBB of the first CBB encapsulation module is executed by the corresponding executive, the input values are converted to the same format (e.g., numeric type) as the input parameters of the CBB of the first CBB encapsulation module, and then assigned to the input parameters of the CBB of the first CBB encapsulation module, the output value of the CBB of the first CBB encapsulation module is assigned to the output parameter of the CBB of the first CBB encapsulation module and then is converted into a preset format (such as a character string format) for storage, so that the CBB of the next CBB encapsulation module is invoked by the corresponding executive when executed.
Referring to fig. 14, the test case execution method is illustrated, and after the test case is loaded, the pre-executed CBB encapsulation modules in the test case are obtained according to the execution order, and then the CBBs of each CBB encapsulation module are processed through different execution processes according to the programming language type of the CBB encapsulation module. For example, after the test case is loaded, according to the execution order of the CBBs of each CBB encapsulation module, the CBB encapsulation module with the first ID number is obtained, the identifier of the programming language type in the tag header is analyzed, and if the CBB encapsulation module with the first ID number is written by Ruby, the execution process corresponding to Ruby is selected to execute the CBB of the CBB encapsulation module with the first ID number. Referring to the test case generation method, if the test case is stored in a script file form, in a specific execution process, because the CBB of the CBB encapsulation module with the first ID number is a script code written by Ruby, the Ruby script parser is directly called, and the script code written by Ruby of the CBB encapsulation module with the first ID number is directly injected into the Ruby parser for execution, so that an execution result is obtained and stored. And then, executing the CBB of the CBB encapsulation module with the second ID number according to the execution sequence, and repeating the process until the whole test case is executed.
Of course, if the tag header of each CBB encapsulation module further includes input parameters and/or output parameters, the input parameters, the output parameters, and the operation results of the CBBs of each CBB encapsulation module are uniformly stored in the system memory by pushing and popping, and the specific process is as follows: the input value of the CBB encapsulation module with the first bit ID number in the test case is usually input through an instruction input by a user, the input value included in the instruction input by the user may be in any format, first, the input value needs to be converted into a predetermined format (e.g., a character string format) and stored in a system memory, when the CBB of the CBB encapsulation module with the first bit ID number is executed by an execution program, the input value needs to be converted into the same type (e.g., a numerical type or a character string type) as the input parameter of the CBB encapsulation module with the first bit ID number, then, the input parameter of the CBB assigned to the CBB encapsulation module with the first bit ID number is assigned to the output parameter, and then, after the execution is completed, the output value of the CBB encapsulation module with the first bit ID number is assigned to the output parameter, the input parameter needs to be converted into the predetermined format (e.g., a character string format) and stored, so that when the output parameter of the CBB encapsulation module with the first bit ID, the CBB of the CBB encapsulation module after the CBB encapsulation module is called by the corresponding executive program when the execution program executes. The input parameter of the CBB encapsulation module after the CBB encapsulation module with the first ID number may be assigned as the output value of the CBB of the previous CBB encapsulation module or as a specific value input by the user, and the actual condition depends on whether a parameter variable transfer relationship as shown in fig. 9 exists between the two. In addition, the execution result success (suc) or failure (fail) of the CBB of each CBB encapsulation module is also converted into the predetermined format (e.g. character string format) and stored in the system memory.
In the scheme, because the tag header in the CBB encapsulation module carries the identifier of the programming language type of the CBB, when the test case composed of such CBB encapsulation modules is executed, the execution process can be directly selected for the CBB of the pre-executed CBB encapsulation module according to the programming language type to execute the CBB of the pre-executed CBB encapsulation module, for example, the execution order may be composed of an ID (identification) of each CBB encapsulation module, and the execution order is used for identifying the order in which the CBB of each CBB encapsulation module is executed; after the test case is loaded, firstly, determining a CBB encapsulation module of a first executed CBB according to the execution sequence, then analyzing a tag head of the CBB encapsulation module to obtain a programming language type of the first executed CBB, obtaining an execution process corresponding to the programming language type of the first executed CBB to execute the first executed CBB, then obtaining a CBB encapsulation module of a second executed CBB according to the execution sequence, and circulating the operation until the CBBs of all CBB encapsulation modules in the test case are executed. Therefore, even if the CBBs contained in the CBB packaging modules in the test cases adopt different programming language types, the test can be ensured to be executed, and the test cases adopting the mixed programming of the CBBs adopting different programming languages are executed.
The embodiment of the application provides a device for generating a test case, which is used for executing the method for generating the test case. In the embodiment of the present application, the functional modules may be divided according to the above method examples, for example, each functional module may be divided corresponding to each function, or two or more functions may be integrated into one processing module. The integrated module can be realized in a hardware mode, and can also be realized in a software functional module mode. It should be noted that, in the embodiment of the present application, the division of the module is schematic, and is only one logic function division, and there may be another division manner in actual implementation.
In the case of adopting a method of dividing each functional module corresponding to each function, fig. 15 shows a schematic diagram of a possible structure of the device for generating a test case according to the above embodiment, and the device 600 for generating a test case includes: a receiving module 601 and a designing module 602. The receiving module 601 is configured to support the test case generation device to execute the process S303 in fig. 4; the design module 602 is configured to support the test case generation apparatus to execute the processes S304-S305 in fig. 4. In addition, the obtaining module 603 is further included to enable the generating device supporting the test case to execute the process S301 in fig. 4, and the encapsulating module 604 is further included to enable the generating device supporting the test case to execute the process S302 in fig. 4. Illustratively, the apparatus further comprises a parsing module 605 for supporting the generating apparatus of the test case to execute step b. All relevant contents of each step related to the above method embodiment may be referred to the functional description of the corresponding functional module, and are not described herein again.
In the case of using an integrated unit, fig. 16 shows a schematic diagram of a possible structure of the test case generation apparatus according to the above embodiment. The test case generation apparatus 600 includes: a storage unit 611, a processing unit 612, and an interface unit 613. The processing unit 612 is configured to control and manage the operation of the test case generation device, for example, the processing unit 612 is configured to support the test case generation device to execute the processes S301, S302, S304, and S305 in fig. 4. The storage unit 611 is used to store program codes and data of the test case generation apparatus. The interface unit 613 is used for connecting with other external devices to receive instructions input by a user, for example, to execute step S303.
The processing unit 612 may be the processor 102 in fig. 2. The storage unit 611 may be the memory 103 in fig. 2.
The embodiment of the application provides an execution device of a test case, which is used for executing the execution method of the test case. In the embodiment of the present application, the functional modules may be divided according to the above method examples, for example, each functional module may be divided corresponding to each function, or two or more functions may be integrated into one processing module. The integrated module can be realized in a hardware mode, and can also be realized in a software functional module mode. It should be noted that, in the embodiment of the present application, the division of the module is schematic, and is only one logic function division, and there may be another division manner in actual implementation.
In the case of adopting a method of dividing each functional module corresponding to each function, fig. 17 shows a schematic diagram of a possible structure of the apparatus for executing the test case in the embodiment, where the apparatus 700 for executing the test case includes: a loading module 701, an obtaining module 702, an analyzing module 703 and an executing module 704. The loading module 701 is configured to support the execution device of the test case to execute the process S501 in fig. 13, the obtaining module 702 is configured to support the execution device of the test case to execute the process S502 in fig. 13, the parsing module 703 is configured to support the execution device of the test case to execute the process S503 in fig. 13, and the executing module 704 is configured to support the execution device of the test case to execute the process S504 in fig. 13. The parsing module 703 is further configured to parse input parameters and/or output parameters in the tag header, and the apparatus further includes an assigning module 705 configured to perform relevant steps of assigning values to the input parameters and/or the output parameters, which refer to the above method embodiments specifically. All relevant contents of each step related to the above method embodiment may be referred to the functional description of the corresponding functional module, and are not described herein again.
Fig. 18 shows a schematic diagram of a possible structure of the device for executing the test case involved in the above embodiment, in the case of using an integrated unit. The test case execution device 700 includes: a memory unit 711, a processing unit 712, and an interface unit 713. The processing unit 712 is configured to control and manage actions of the execution device of the test case, for example, the processing unit 712 is configured to support the execution device of the test case to execute the processes S701 to S704 in fig. 13. The storage unit 711 is used to store program codes and data of the test case execution device. The interface unit 713 is used to connect with other external devices to receive input contents.
The processing unit 712 may be the processor 202 in fig. 3, among others. The memory unit 711 may be the memory 203 in fig. 3.
The embodiment of the application provides a device for generating a CBB library of a universal basic module, which is used for executing the method for generating the CBB library of the universal basic module. In the embodiment of the present application, the functional modules may be divided according to the above method examples, for example, each functional module may be divided corresponding to each function, or two or more functions may be integrated into one processing module. The integrated module can be realized in a hardware mode, and can also be realized in a software functional module mode. It should be noted that, in the embodiment of the present application, the division of the module is schematic, and is only one logic function division, and there may be another division manner in actual implementation.
Fig. 19 is a schematic diagram showing a possible structure of the apparatus for generating a CBB library of generic basic modules according to the above embodiment, in a case where each functional module is divided according to each function, and the apparatus 800 for generating a CBB library of generic basic modules includes: an acquisition module 801 and an encapsulation module 802. The obtaining module 801 is configured to support the device that generates the CBB library of generic base module to execute the process S401 in fig. 12, and the encapsulating module 802 is configured to support the device that generates the CBB library of generic base module to execute the processes S402 and S403 in fig. 12. The apparatus further includes an analyzing module 803, configured to perform a relevant step of analyzing the input parameter and/or the output parameter of the CBB, which refers to the foregoing method embodiments specifically. All relevant contents of each step related to the above method embodiment may be referred to the functional description of the corresponding functional module, and are not described herein again.
In the case of integrated units, fig. 20 shows a schematic diagram of a possible structure of the apparatus for generating a CBB library of generic base modules as referred to in the above embodiments. The apparatus 800 for generating a CBB library of generic building blocks comprises: a storage unit 811, a processing unit 812, and an interface unit 813. The processing unit 812 is used for controlling and managing the actions of the device for generating the CBB library, for example, the processing unit 812 is used for supporting the execution device of the test case to execute the processes S401 to S404 in fig. 12. The storage unit 811 is used to store program codes and data of the apparatus for generating the CBB library of the generic basic module. The interface unit 813 is used for connecting with other external devices to receive input contents.
The processing unit 812 is a processor, the storage unit 811 is a memory, and the interface unit is a communication interface. The device for generating the CBB library of the universal basic module comprises the following components: referring to fig. 21, the communication interface 901, the processor 902, the memory 903, and the bus 904 are included, and the communication interface 901 and the processor 902 are connected to the memory 903 via the bus 904.
The processor 902 may be a general-purpose Central Processing Unit (CPU), a microprocessor, an Application-Specific Integrated Circuit (ASIC), or one or more Integrated circuits configured to control the execution of programs in accordance with the teachings of the present disclosure.
The Memory 903 may be a Read-Only Memory (ROM) or other type of static storage device that can store static information and instructions, a Random Access Memory (RAM) or other type of dynamic storage device that can store information and instructions, an Electrically Erasable Programmable Read-Only Memory (EEPROM), a Compact Disc Read-Only Memory (CD-ROM) or other optical Disc storage, optical Disc storage (including Compact Disc, laser Disc, optical Disc, digital versatile Disc, blu-ray Disc, etc.), magnetic disk storage media or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer, but is not limited to these. The memory may be self-contained and coupled to the processor via a bus. The memory may also be integral to the processor.
The memory 903 is used for storing application program codes for executing the scheme of the application, and the processor 902 controls the execution. The communication interface 901 is configured to receive content input by an external device, and the processor 902 is configured to execute application program codes stored in the memory 903, so as to implement the method for generating the CBB library of the generic base module described in the embodiment of the present application.
It should be understood that, in the various embodiments of the present application, the sequence numbers of the above-mentioned processes do not mean the execution sequence, and the execution sequence of each process should be determined by its function and inherent logic, and should not constitute any limitation to the implementation process of the embodiments of the present application.
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
It is clear to those skilled in the art that, for convenience and brevity of description, the specific working processes of the above-described systems, apparatuses and units may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus, and method may be implemented in other ways. For example, the above-described device embodiments are merely illustrative, and for example, the division of the units is only one logical functional division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit.
In the above embodiments, the implementation may be wholly or partially realized by software, hardware, firmware, or any combination thereof. When implemented using a software program, may be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. The procedures or functions described in accordance with the embodiments of the present application are all or partially generated upon loading and execution of computer program instructions on a computer. The computer may be a general purpose computer, a special purpose computer, a network of computers, or other programmable device. The computer instructions may be stored on a computer readable storage medium or transmitted from one computer readable storage medium to another, for example, from one website, computer, server, or data center to another website, computer, server, or data center via wire (e.g., coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.). The computer-readable storage medium can be any available medium that can be accessed by a computer or can comprise one or more data storage devices, such as a server, a data center, etc., that can be integrated with the medium. The usable medium may be a magnetic medium (e.g., floppy Disk, hard Disk, magnetic tape), an optical medium (e.g., DVD), or a semiconductor medium (e.g., Solid State Disk (SSD)), among others.
The above description is only for the specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present application, and shall be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.