NFV automatic testing method, device, equipment and storage medium

By optimizing the execution order of NFV test cases, the problem of heavy and low efficiency of the test process in the NFV architecture is solved, and the testing efficiency and cost improvements are achieved.

CN114143235BActive Publication Date: 2024-12-31CHINA MOBILE COMM LTD RES INST +1
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202010810322.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-08-13
Publication Date
2024-12-31
Estimated Expiration
2040-08-13

AI Technical Summary

Technical Problem

In the NFV architecture, the test process is heavy, costly, low efficiency, and difficult to scale. It is mainly due to the independent deployment of test cases, which leads to repeated deployment of the test environment, which affects efficiency.

Method used

By obtaining test cases collections, building test tasks and optimizing execution order, using dependency information in the use case description file, optimizing the execution order of test tasks, reducing duplicate deployment of the test environment, and improving testing efficiency.

Benefits of technology

It achieves improvement in testing efficiency, reduces testing costs, and optimizes the execution order of test cases, reduces duplicate deployment of the test environment and improves testing efficiency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114143235B_ABST
    Figure CN114143235B_ABST
Patent Text Reader

Abstract

The present invention discloses a NFV automatic testing method, device, equipment and storage medium. The method includes: obtaining a test case set required for the test, the test case set including at least two test cases; constructing a test task based on a test case description file of each test case in the test case set, the test case description file including: dependency information for describing the association between the test case and other test cases; optimizing the execution order of the test task based on the dependency information of each test case involved in the test task; and executing the test task based on the optimized execution order. The embodiment of the present invention can reduce the repeated deployment of the test environment, thereby improving the test efficiency.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of Network Function Virtualization (NFV), and in particular to an NFV automatic testing method, device, equipment and storage medium. Background Art

[0002] NFV refers to the technology that uses virtualization technology to carry various software-based network functions through servers, storage and switches to replace traditional proprietary hardware devices (such as routers, firewalls, content distribution networks, etc.). The NFV architecture includes: virtual infrastructure manager (VIM), which is responsible for managing the software and hardware resources of the infrastructure layer (network function virtualization infrastructure, NFVI); virtual network function manager (VNFM), which is responsible for the life cycle management of virtual network elements (virtual network function, VNF); element management system (EMS), which is responsible for the configuration, fault and alarm management of virtual network elements; network function virtualization orchestrator (NFVO), which is responsible for the life cycle management of network services (NS).

[0003] Since the NFV architecture involves many components and the interfaces between the components themselves and different components are complex and numerous, the workload of testing and docking is heavy. In related technologies, the process of testing network elements includes four steps: test case design, test environment construction, test task execution and test result analysis. In addition to the test task execution of some test cases (such as interface consistency testing, etc.), which can be optimized by automated scripts, other steps are often performed manually, which is costly, inefficient, error-prone and difficult to scale. Summary of the invention

[0004] In view of this, the embodiments of the present invention provide a NFV automatic testing method, apparatus, device and storage medium, aiming to reduce testing costs and improve testing efficiency.

[0005] The technical solution of the embodiment of the present invention is achieved as follows:

[0006] An embodiment of the present invention provides a NFV automatic testing method, including:

[0007] Obtaining a test case set required for the test, wherein the test case set includes at least two test cases;

[0008] Constructing a test task based on a use case description file of each test case in the test case set, wherein the use case description file includes: dependency information for describing the association between the test case and other test cases;

[0009] Optimizing the execution order of the test tasks based on the dependency information of each test case involved in the test tasks;

[0010] The test tasks are executed based on the optimized execution order.

[0011] The embodiment of the present invention further provides a NFV automatic testing device, including:

[0012] An acquisition module is used to acquire a test case set required for the test, wherein the test case set includes at least two test cases;

[0013] A task construction module, used to construct a test task based on a use case description file of each test case in the test case set, wherein the use case description file includes: dependency information for describing the association between the test case and other test cases;

[0014] A task scheduling module, used to optimize the execution order of the test tasks based on the dependency information of each test case involved in the test tasks;

[0015] The task execution module is used to execute the test task based on the optimized execution order.

[0016] An embodiment of the present invention further provides an NFV automatic testing device, comprising: a processor and a memory for storing a computer program that can be run on the processor, wherein the processor is used to execute the steps of the method described in the embodiment of the present invention when running the computer program.

[0017] An embodiment of the present invention further provides a storage medium, on which a computer program is stored. When the computer program is executed by a processor, the steps of the method described in the embodiment of the present invention are implemented.

[0018] According to the technical solution provided by an embodiment of the present invention, the use case description file of each test case in a test case set includes: dependency information for describing the association between the test case and other test cases, so that the dependency information of each test case involved in the test task can be obtained, and the execution order of the test task can be optimized based on the dependency information of each test case, so that the execution order of each test case in the test task can be optimized and adjusted, and the repeated deployment of the test environment can be reduced, thereby improving the test efficiency. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] Figure 1 This is a schematic diagram of the structure of the NFV automatic test architecture according to an embodiment of the present invention;

[0020] Figure 2 This is a flow chart of the NFV automatic testing method according to an embodiment of the present invention;

[0021] Figure 3 This is a schematic diagram of the structure of an NFV automatic test device according to an application example of the present invention;

[0022] Figure 4 This is a schematic diagram of the structure of the NFV automatic testing device according to an embodiment of the present invention;

[0023] Figure 5 It is a schematic diagram of the structure of the NFV automatic testing equipment according to an embodiment of the present invention. DETAILED DESCRIPTION

[0024] The present invention will be described in further detail below in conjunction with the accompanying drawings and embodiments.

[0025] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art of the present invention. The terms used in the specification of the present invention herein are only for the purpose of describing specific embodiments and are not intended to limit the present invention.

[0026] Before describing the NFV automatic testing method according to the embodiment of the present invention, the NFV automatic testing architecture according to the embodiment of the present invention is described. Figure 1As shown, the NFV automatic test architecture includes: NFV automatic test equipment 101, general equipment 102, instrument equipment 103, components to be tested or systems to be tested 104 and surrounding components 105, wherein the NFV automatic test equipment 101 is in communication connection with the general equipment 102, instrument equipment 103, components to be tested or systems to be tested 104 and surrounding components 105; the general equipment 102 is mainly a general server, centralized storage and switching equipment, which is used to carry the hardware of the NFV automatic test equipment; the instrument equipment 103 includes physical instruments and virtual instruments. The system to be tested can be an end-to-end overall system under test (SUT) that conforms to the NFV architecture; the component to be tested can be a specific software functional component (FUT) in the NFV architecture, wherein the system to be tested may include several FUTs, which need to form a test environment with the instrument equipment 103 and surrounding components 105. The surrounding components 105 may be other components in the NFV system that are not the SUT and will not be controlled or observed during the test. The surrounding components 105 are used to form a test environment with the instrument equipment 103 to facilitate testing of the components under test or the system under test 104 .

[0027] The embodiment of the present invention provides a NFV automatic testing method, which can be applied to the aforementioned NFV automatic testing device 101, such as Figure 2 As shown, the method includes:

[0028] Step 201, obtaining a test case set required for testing, wherein the test case set includes at least two test cases;

[0029] Here, the NFV automatic test device may receive the test cases selected by the test executor and determine a test case set, where the test case set includes at least two selected test cases.

[0030] In the embodiment of the present invention, a test case is an independent unit used to test a component to be tested, and a test task can be understood as a collection of multiple test cases.

[0031] Here, the test case can be described by a use case description file. In some embodiments, the use case description file includes four types of information elements: test environment (also called test topology or topology configuration), preconditions (also called input conditions or prior conditions), test steps (also called test flow or execution steps), and decision conditions (also called checkpoints or observation items). Among them:

[0032] Test environment (Configuration): used to describe the test topology that needs to be built before executing the test steps, usually including the components to be tested, general equipment, instrument equipment, surrounding components and the network (wired or wireless) connection between them.

[0033] Pre-test Conditions: After the test environment is set up, the prerequisites before executing the test steps, such as business or resource parameter configuration for network connection, which may be configured in the form of commands, scripts or UI (User Interface), or other manual / automatic test verification items it depends on (such as connectivity and functional test verification before performance testing).

[0034] Test Sequence: A series of operation procedures for elements in the test environment are used to simulate specific scenarios such as business processes, information interactions, or equipment failures in the actual environment to verify whether the system / component under test meets the expected specific functions, performance, reliability, interface compliance, and other requirements.

[0035] Test Verdict: To determine whether a test case passes, or to determine whether the behavior of the component under test meets the expected conditions. Specifically, it can be reflected in the pre-, mid-, and post-test observation items and their logical combinations involved in each test step.

[0036] Step 202, constructing a test task based on a use case description file of each test case in the test case set, wherein the use case description file includes: dependency information for describing the association between the test case and other test cases;

[0037] Here, the NFV automatic test equipment extracts the use case description file of each test case in the test case set based on the acquired test case set, and constructs a test task including each test case. Among them, the use case description file of each test case may include the dependency information in addition to the aforementioned four types of information elements. Exemplarily, the dependency information may include a topology description file for describing the test topology of the test case or reference information of the topology description file. In some embodiments, the dependency information may also include configuration information for specifying the dependency relationship between different test cases.

[0038] Exemplarily, after the NFV automatic test equipment extracts the use case description file of each test case in the trial case set, the NFV automatic test equipment performs parameter configuration for each test case based on the input information of the test execution personnel. Here, the test execution personnel need to supplement the test parameters related to the actual test environment of the test case that cannot be specified in the use case description file in advance. For example, the test execution personnel configure the address port of the DHCP (Dynamic Host Configuration Protocol) service required for this test task, the SIM (Subscriber Identification Module) card number of the mobile terminal used in this test task, etc., so as to complete the construction of the test task.

[0039] Step 203, optimizing the execution order of the test task based on the dependency information of each test case involved in the test task;

[0040] Here, the NFV automatic test equipment parses the use case description file of each test case in the test task. Since each use case description file includes: a topology description file for describing the test topology or reference information of the topology description file, the test topology involved in the test task can be determined. Exemplarily, each topology description file adopts a unified format specification specified by the test framework, which is used to describe all network nodes, network connections and related configurations in each specific test topology, and each topology description file has a unique UUID (Universally Unique Identifier), and the reference information can be the UUID of the topology description file.

[0041] The NFV automatic test device can determine all test topologies included in the test task based on the UUID of the topology description file involved in the test task, and optimize the execution order of each test case in the test task based on each test topology.

[0042] Step 204: execute the test task based on the optimized execution order.

[0043] The NFV automatic test equipment can execute corresponding test cases based on the optimized execution order of each test case.

[0044] In the related art, the test topology of each test case is often deployed independently. Although the functions of each test case are simple, the logic is clear, and the test cases are independent of each other, it often leads to unnecessary repeated deployment of the test environment, thereby affecting the test efficiency.

[0045] In an embodiment of the present invention, since the use case description file of each test case in each test case set includes: a topology description file for describing the test topology or reference information of the topology description file, the test topology involved in the test task can be obtained, and the execution order of the test task can be optimized based on each test topology, the execution order of each test case in the test task can be optimized and adjusted, and the repeated deployment of the test environment can be reduced, thereby improving the test efficiency.

[0046] In practical applications, before constructing the test task, the method further includes:

[0047] Constructing the topology description file for use in the test case;

[0048] The use case description file for the test case is constructed based on the topology description file.

[0049] Exemplarily, the NFV automatic test equipment can construct a standardized topology description file based on the input information of the test designer. For example, the test designer converts the corresponding test topology (including several systems under test, several test instruments, and their network connection relationships) and its specific configuration information into a formal topology description file based on the input of the graphical interface. The topology description file can adopt the yaml format defined by the TOSCA standard. The topology description file may include: the UUID of the component to be tested, the UUID of other network nodes involved in the test topology, the description information of the network connection and related configuration, and the topology description file also has a globally unique UUID.

[0050] Exemplarily, the NFV automatic test equipment can convert the test script, input and output parameters, etc. of each test case into a formalized use case description file according to the input information of the test designer. Among them, each use case description file can contain a UUID reference to the topology description file it depends on. In this way, the NFV automatic test equipment can encapsulate the use case description file (including the UUID reference of the topology description file, the test script, the test process file, etc.) in a specified format and publish it to the test case database for the test executor to call when building the test task. It is understandable that the NFV automatic test equipment can assign a globally unique UUID to each use case description file, that is, the use case description file can carry the UUID of the use case description file.

[0051] In some embodiments, step 203 includes:

[0052] Parsing each of the use case description files in the test task to determine the test topology involved in the test task;

[0053] Classify the test cases that share the same test topology into a first-level test case group;

[0054] Accordingly, step 204 includes:

[0055] Execute the test cases in the same first-level test case group in series; or,

[0056] The test cases in the same first-level test case group are executed in parallel.

[0057] Here, in the case where the use case description file includes a topology description file, the use case description file can be parsed, and the UUID of the topology description file can be obtained based on the topology description file; when the use case description file includes a UUID reference to the topology description file, the use case description file can be parsed, and the UUID of the topology description file can also be obtained based on the UUID reference. Then, based on the correspondence between the UUID of the topology description file and the UUID of the use case description file, the use case description files that share the same topology description file can be classified into the same first-level use case group (also called a sub-use case group).

[0058] In this way, when executing test tasks, NFV test equipment can realize parallel execution or serial execution of test cases that share the same test environment, thereby reducing repeated deployment of the test environment and improving test efficiency.

[0059] It is understandable that in actual applications, if there is no resource conflict or limitation (for example, the number of VNF or instrument licenses, the total amount of test resources, etc.), that is, the test resources are sufficient and it is hoped to shorten the total execution time of the test task as much as possible, multiple parallel test environments can be built for the same test topology at the same time, and the corresponding test cases can be run in parallel.

[0060] In some embodiments, step 203 may further include:

[0061] Parsing the topology description file of each of the test topologies, and identifying the network nodes included in each of the test topologies;

[0062] Performing topological clustering based on the network nodes included in each of the test topologies;

[0063] Classifying the first-level use case group of each of the test topologies in the same topology cluster into a second-level use case group;

[0064] Accordingly, step 204 includes:

[0065] The first-level use case groups in the same second-level use case group are executed serially in sequence.

[0066] Here, the NFV automatic test device may parse the topology description files of each test topology in the test task, identify the UUIDs of the network nodes included in each topology description file, and perform topology clustering based on the UUIDs of the network nodes.

[0067] Exemplarily, the NFV automatic test equipment classifies the test topology including the same network node into the same topology cluster based on the UUID of the network node, and then classifies the first-level use case groups under the same topology cluster into the same second-level use case group (also called parent use case group).

[0068] The NFV automatic testing equipment sequentially and serially executes the first-level use case groups in the same second-level use case group. When testing the test cases in the same first-level use case group, since there is no need to change the test topology, it can be implemented by referring to the aforementioned sequential serial execution or parallel execution method, which will not be repeated here.

[0069] It is understandable that for different first-level use case groups, the network connection configuration of the test topology is updated. Before executing different first-level use case groups, the NFV automatic test equipment can insert a topology switching use case to be responsible for configuring the network connection, but there is no need to pull up or destroy the VNF (virtualized network function) node.

[0070] In some embodiments, step 203 may further include:

[0071] Orchestrate switching paths between clusters of different topologies;

[0072] Determining an execution order of the second-level use case groups of different topological clusters based on the switching path;

[0073] Accordingly, step 204 includes:

[0074] Based on the execution order, each of the second-level use case groups is executed serially.

[0075] Here, the NFV automatic test equipment can arrange the switching paths between different topology clusters so that different second-level use case groups are tested according to the test topology corresponding to the switching paths. The NFV automatic test equipment can arrange the switching paths based on the switching costs between different topology clusters so that the cumulative switching costs of the switching paths are minimized. The switching costs can be the topology switching costs set based on preset information, or can also be the topology switching costs determined based on historical test results.

[0076] In some embodiments, the NFV automatic test equipment can directly build a super topology cluster containing all VNF sets of network nodes involved in all test topologies, and insert a super cluster case before all test cases are executed. The super cluster case is responsible for completing the deployment of all network nodes in the super topology cluster. Subsequently, all test topology switching is degenerated into network connection construction and configuration operations, without cluster switching or VNF node pull-up / destruction operations. Optionally, the NFV automatic test equipment can check each time the test topology is switched during the execution of the test task. If a VNF is not used in the remaining test topology, the VNF can be destroyed in time to save resources.

[0077] In some embodiments, the step of arranging switching paths between clusters of different topologies includes:

[0078] Constructing a directed graph with each of the topological clusters as a node and the switching costs between different topological clusters as edge weights;

[0079] Based on the directed graph, a node traversal path with the smallest cumulative switching cost is selected as the switching path.

[0080] Exemplarily, the NFV automatic test equipment uses topological clusters as nodes, and the switching costs between different topological clusters (i.e., the operation costs of pulling up or destroying nodes) as edge weights to construct a directed graph, solve the node traversal path P={N1, N2, ...} with the smallest cumulative switching cost on the directed graph, and perform the arrangement of the order of the test topological clusters according to the path. When switching between different topological clusters, the NFV automatic test equipment can perform the pulling up or destroying operation of the VNF node, that is, update the test topology, so as to execute the second-level use case group corresponding to the different topological clusters.

[0081] In practical applications, NFV automatic test equipment performs switching between different topology clusters, which may include one of the following:

[0082] The NFV automatic test equipment dismantles the existing test topology and rebuilds a new test topology;

[0083] The NFV automatic test equipment parses the topology description file, compares the differences between the network nodes included in the topology description file to be updated and the topology description file of the existing test topology, retains the duplicated network nodes in the two, destroys the no longer used network nodes in the existing test topology, and pulls up the newly added network nodes in the test topology to be updated.

[0084] The NFV automatic test device parses the topology description file, compares the differences between the network nodes included in the topology description file to be updated and the topology description file of the existing test topology, and only pulls up the newly added network nodes in the test topology to be updated.

[0085] In some embodiments, the method further comprises:

[0086] Obtaining indication information for optimizing the usage time of a target network node;

[0087] Determine a test topology using the target network node based on the indication information;

[0088] The executing the test task based on the optimized execution order includes:

[0089] The test cases corresponding to the test topology of the target network node are executed preferentially.

[0090] Here, the NFV automatic test equipment can preferentially execute the test cases of the test topology of the target network node, thereby reducing the usage time of the target network node.

[0091] Exemplarily, the NFV automatic test equipment receives instruction information input by the test execution personnel, and the instruction information may indicate to shorten the usage time of a specific VNF or instrument equipment. Then, the NFV automatic test equipment optimizes the execution order of the test cases based on the various test topologies involved in the test task, matches the test topology using the specific VNF or instrument equipment, and optimizes the execution order of the test cases based on at least one of the aforementioned test topology sharing, topological clustering of the test topology, and path switching of the topological clustering. In this way, the usage time of the specific VNF or instrument equipment can be reduced. For specific VNFs or instrument equipment that are charged according to usage time, the testing cost can be effectively reduced.

[0092] The present invention is further described in detail below in conjunction with application examples.

[0093] like Figure 3 As shown, in this application embodiment, the VNF automatic testing device includes: a test design subsystem 301 and a test execution subsystem 302, wherein the test design subsystem 301 includes: a topology design module 3011, a use case design module 3012 and a test case library 3013; the test execution subsystem 302 includes: a task construction module 3021, a use case orchestration module 3022 and a test execution module 3023.

[0094] The test design subsystem 301 is used to provide test designers with a graphical network topology design interactive interface for designing test cases with reference to test specifications (text descriptions), and to convert descriptions of test cases and corresponding test topologies into formal description files that can be automatically processed by the system, and publish them to a test case library that can be used by test executors.

[0095] The topology design module 3011 is used to convert the corresponding test topology (including several systems under test, several test instruments, and their network connection relationships) and its specific configuration information into a formal topology description file according to the input of the test designer on the graphical interface. Each topology description file has a globally unique UUID.

[0096] The use case design module 3012 is used to convert the test script, input and output parameters of each test case into a formalized use case description file according to the input of the test designer, wherein each use case description file contains a UUID reference of the topology description file it depends on.

[0097] The test case library 3013 is used to package the packaged use case description files (including topology description files of test topology, test scripts, test process files, etc.) according to the specified format and publish them to the test execution subsystem 302.

[0098] The test execution subsystem 302 is responsible for triggering the test task execution process for the test case selected by the test executor from the test case library.

[0099] The task construction module 3021 extracts the corresponding test case description file and fills in specific test parameters according to the test case set selected by the test executor for a specific test task.

[0100] The use case scheduling module 3022 is responsible for optimizing and scheduling the execution order of the corresponding test case set in each test task, and delivering the optimized test case set to the test execution system for sequential execution.

[0101] The test execution module 3023 is responsible for sequentially executing the test cases in the test tasks.

[0102] The specific execution process of the use case arrangement module 3022 is described as follows, which includes:

[0103] Step 1: Topology Identification and Use Case Grouping

[0104] a) Parse the use case description file of each test case one by one and identify the UUID of the corresponding test topology;

[0105] b) Group the test cases into {T1, T2, ...}, and group the test cases with the same test topology into one group, Ti = {ti1, ti2, ...}, where Ti represents a set of test cases with the same test topology (i.e., the aforementioned first-level test case group), and ti1, ti2, etc. represent the test cases in the same first-level test case group;

[0106] c) Test cases in the same group are executed sequentially without switching the test topology.

[0107] Step 2: Topological clustering

[0108] a) Parse the topology description files involved in the test task one by one and identify the network node UUID set contained therein.

[0109] b) Perform topological clustering {C1, C2, ...} on different test topologies; wherein the test topologies containing the same network nodes (software and hardware network element devices, etc.) are classified into one category, Cj = {Tj1, Tj2, ...}, that is, the topological cluster Cj includes the same network nodes Tj1, Tj2, etc.

[0110] c) When the test cases of different test topologies in the same topology cluster are executed sequentially, a topology switching case is inserted to configure the network connection, but there is no need to pull up or destroy the VNF node.

[0111] Step 3: Cluster switching path

[0112] Method 1: directly build a super topology cluster containing all VNF sets of network nodes involved in all test topologies, and insert a special super cluster case before all test cases are executed. This special super cluster case is responsible for completing the deployment of all nodes in the super topology cluster. All subsequent test topology switching degenerates into network connection construction and configuration operations, without cluster switching or VNF node pull-up / destruction operations. Optionally, during the execution of the test task, a check can be performed each time the test topology is switched. If a VNF is not used in the remaining topology, the VNF is destroyed in time to save resources.

[0113] Method 2: Use topological clusters as nodes and the switching costs between different topological clusters (i.e., node startup / destruction operation costs) as edge weights to construct a directed graph. Solve the node traversal path P = {N1, N2, ...} with the minimum cumulative cost on the directed graph. Perform the test topological clustering sequence according to this path. When switching between different topological clusters, VNF node startup / destruction operations are required.

[0114] Exemplarily, for the node traversal of the directed graph mentioned above, a greedy algorithm description of the node traversal is given.

[0115]

[0116]

[0117] The use case orchestration module 3022 will perform path planning for the directed graph F(n) from the current node X and the adjacent Y node, delete the node X from the node set of the directed graph F(n), obtain the directed graph F(n-1) of n-1 nodes, and use the directed graph F(n-1) and node Y to call the path planning function Planning of the Path, and repeat this process until the number of remaining nodes in the directed graph is zero, and the Path after path planning is obtained.

[0118] In the NFV automatic testing method of this application embodiment, the test design subsystem 301 specifies the test topology corresponding to the test case, and the topology description file of the test topology can be designed independently of the test case. The use case description file of the test case can directly include the topology description file or reference the topology description file, and the use case description file including or referencing the topology description file is published to the test case library 3013 for the test execution personnel to call. The test execution personnel select the use case description file required for the test task in the test execution subsystem 302, the task construction module 3021 generates the test task based on the selected test case set, the use case arrangement module 3022 optimizes the execution order of each test case in the test case set based on the test topology involved in the test task, and the test execution module 3023 executes the test cases in the test task based on the optimized execution order, thereby reducing the repeated deployment of the test environment and improving the test efficiency.

[0119] In order to implement the method of the embodiment of the present invention, the embodiment of the present invention also provides a NFV automatic testing device, which corresponds to the above-mentioned NFV automatic testing method, and each step in the above-mentioned NFV automatic testing method embodiment is also fully applicable to the present NFV automatic testing device embodiment.

[0120] like Figure 4As shown, the NFV automatic test device 400 includes: an acquisition module 401, a task construction module 402, a task scheduling module 403 and a task execution module 404. Among them, the acquisition module 401 is used to acquire a test case set required for the test, and the test case set includes at least two test cases; the task construction module 402 is used to construct a test task based on the test case description file of each test case in the test case set, and the test case description file includes: dependency information for describing the association between the test case and other test cases; the task scheduling module 403 is used to optimize the execution order of the test task based on the dependency information of each test case involved in the test task; the task execution module 404 is used to execute the test task based on the optimized execution order.

[0121] In some embodiments, the dependency information includes: a topology description file for describing the test topology of the test case or reference information of the topology description file, and the task scheduling module 403 is specifically used to:

[0122] Parsing each of the use case description files in the test task to determine the test topology involved in the test task;

[0123] Classify the test cases that share the same test topology into a first-level test case group;

[0124] Accordingly, the task execution module 404 is specifically used for:

[0125] Execute the test cases in the same first-level test case group in series; or,

[0126] The test cases in the same first-level test case group are executed in parallel.

[0127] In some embodiments, the task scheduling module 403 is further configured to:

[0128] Parsing the topology description file of each of the test topologies, and identifying the network nodes included in each of the test topologies;

[0129] Performing topological clustering based on the network nodes included in each of the test topologies;

[0130] Classifying the first-level use case group of each of the test topologies in the same topology cluster into a second-level use case group;

[0131] Accordingly, the task execution module 404 is also used for:

[0132] The first-level use case groups in the same second-level use case group are executed serially in sequence.

[0133] In some embodiments, the task scheduling module 403 is further configured to:

[0134] Orchestrate switching paths between clusters of different topologies;

[0135] Determining an execution order of the second-level use case groups of different topological clusters based on the switching path;

[0136] Accordingly, the task execution module 404 is also used for:

[0137] Based on the execution order, each of the second-level use case groups is executed serially.

[0138] In some embodiments, the task scheduling module 403 is specifically used to:

[0139] Constructing a directed graph with each of the topological clusters as a node and the switching costs between different topological clusters as edge weights;

[0140] Based on the directed graph, a node traversal path with the smallest cumulative switching cost is selected as the switching path.

[0141] In some embodiments, the NFV automatic testing device further includes:

[0142] The construction module 405 is used to construct the topology description file for use in the test case; and to construct the use case description file for the test case based on the topology description file.

[0143] In some embodiments, the acquisition module 401 is also used to: obtain indication information for optimizing the usage time of the target network node; the task scheduling module 403 is also used to determine the test topology using the target network node based on the indication information; the task execution module 404 is also used to preferentially execute the test cases corresponding to the test topology of the target network node.

[0144] It can be understood that the task construction module 402 corresponds to the aforementioned task construction module 3021, the task orchestration module 403 corresponds to the aforementioned use case orchestration module 3022, the task execution module 404 corresponds to the aforementioned test execution module 3023, and the construction module 405 corresponds to the aforementioned topology design module 3011 and use case design module 3012.

[0145] In actual application, the acquisition module 401, the task construction module 402, the task scheduling module 403, the task execution module 404 and the construction module 405 can be implemented by a processor in the NFV automatic testing device 400. Of course, the processor needs to run the computer program in the memory to implement its function.

[0146] It should be noted that: the NFV automatic test device provided in the above embodiment only uses the division of the above program modules as an example when performing NFV automatic testing. In actual applications, the above processing can be assigned to different program modules as needed, that is, the internal structure of the device is divided into different program modules to complete all or part of the processing described above. In addition, the NFV automatic test device provided in the above embodiment and the NFV automatic test method embodiment belong to the same concept, and the specific implementation process is detailed in the method embodiment, which will not be repeated here.

[0147] Based on the hardware implementation of the above program modules and in order to implement the method of the embodiment of the present invention, the embodiment of the present invention also provides a NFV automatic testing device. Figure 5 Only an exemplary structure of the NFV automatic test equipment is shown, not all structures, and it can be implemented as needed. Figure 5 Partial or complete structure shown.

[0148] like Figure 5 As shown, the NFV automatic test device 500 provided in the embodiment of the present invention includes: at least one processor 501, a memory 502, a user interface 503 and at least one network interface 504. The various components in the NFV automatic test device 500 are coupled together through a bus system 505. It can be understood that the bus system 505 is used to realize the connection and communication between these components. In addition to the data bus, the bus system 505 also includes a power bus, a control bus and a status signal bus. However, for the sake of clarity, Figure 5 Various buses are labeled as bus system 505 .

[0149] The user interface 503 may include a display, a keyboard, a mouse, a trackball, a click wheel, keys, buttons, a touch pad or a touch screen.

[0150] The memory 502 in the embodiment of the present invention is used to store various types of data to support the operation of the NFV automatic test device. Examples of such data include: any computer program used to operate on the NFV automatic test device.

[0151] The NFV automatic testing method disclosed in the embodiment of the present invention can be applied to the processor 501, or implemented by the processor 501. The processor 501 may be an integrated circuit chip with signal processing capabilities. In the implementation process, each step of the NFV automatic testing method can be completed by the hardware integrated logic circuit or software instructions in the processor 501. The above-mentioned processor 501 can be a general-purpose processor, a digital signal processor (DSP, Digital Signal Processor), or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. The processor 501 can implement or execute the methods, steps and logic block diagrams disclosed in the embodiment of the present invention. The general-purpose processor can be a microprocessor or any conventional processor, etc. In combination with the steps of the method disclosed in the embodiment of the present invention, it can be directly embodied as a hardware decoding processor to execute, or it can be executed by a combination of hardware and software modules in the decoding processor. The software module can be located in a storage medium, which is located in the memory 502. The processor 501 reads the information in the memory 502 and completes the steps of the NFV automatic testing method provided in the embodiment of the present invention in combination with its hardware.

[0152] In an exemplary embodiment, the NFV automatic test equipment may be implemented by one or more application specific integrated circuits (ASIC), DSP, programmable logic device (PLD), complex programmable logic device (CPLD), FPGA, general purpose processor, controller, microcontroller (MCU), microprocessor, or other electronic components to perform the aforementioned method.

[0153] It can be understood that the memory 502 can be a volatile memory or a non-volatile memory, and can also include both volatile and non-volatile memories. Among them, the non-volatile memory can be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM), a magnetic random access memory (FRAM), a flash memory, a magnetic surface memory, an optical disk, or a compact disc read-only memory (CD-ROM); the magnetic surface memory can be a disk memory or a tape memory. The volatile memory can be a random access memory (RAM), which is used as an external cache. By way of example and not limitation, many forms of RAM are available, such as static random access memory (SRAM), synchronous static random access memory (SSRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDRSDRAM), enhanced synchronous dynamic random access memory (ESDRAM), synchronous link dynamic random access memory (SLDRAM, SyncLink Dynamic Random Access Memory), and direct RAM bus random access memory (DRRAM, Direct Rambus Random Access Memory).The memories described in the embodiments of the present invention are intended to include, but are not limited to, these and any other suitable types of memories.

[0154] In an exemplary embodiment, the embodiment of the present invention further provides a storage medium, namely a computer storage medium, which may be a computer-readable storage medium, for example, a memory 502 storing a computer program, and the computer program may be executed by a processor 501 of the NFV automatic test device to complete the steps described in the method of the embodiment of the present invention. The computer-readable storage medium may be a memory such as a ROM, a PROM, an EPROM, an EEPROM, a Flash Memory, a magnetic surface memory, an optical disk, or a CD-ROM.

[0155] It should be noted that: "first", "second", etc. are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence.

[0156] In addition, the technical solutions described in the embodiments of the present invention can be arbitrarily combined without conflict.

[0157] The above is only a specific embodiment of the present invention, but the protection scope of the present invention is not limited thereto. Any person skilled in the art can easily think of changes or substitutions within the technical scope disclosed by the present invention, which should be included in the protection scope of the present invention. Therefore, the protection scope of the present invention should be based on the protection scope of the claims.

Claims

1. A NFV automatic testing method, characterized in that: include: Obtaining a test case set required for the test, wherein the test case set includes at least two test cases; Constructing a test task based on a use case description file of each test case in the test case set, wherein the use case description file includes: dependency information for describing the association between the test case and other test cases; Optimizing the execution order of the test tasks based on the dependency information of each test case involved in the test tasks; Execute the test task based on the optimized execution order; The dependency information includes: a topology description file for describing the test topology of the test case or reference information of the topology description file, and the optimization of the execution order of the test task based on the dependency information of each test case involved in the test task includes: Parsing each of the use case description files in the test task to determine the test topology involved in the test task; Classify the test cases that share the same test topology into a first-level test case group; Parsing the topology description file of each of the test topologies, and identifying the network nodes included in each of the test topologies; Performing topology classification based on the network nodes included in each of the test topologies; The first-level use case groups of the test topologies in the same topology classification are classified into second-level use case groups.

2. The method according to claim 1, characterized in that The executing the test task based on the optimized execution order includes: Execute the test cases in the same first-level test case group in series; or, The test cases in the same first-level test case group are executed in parallel.

3. The method according to claim 1, characterized in that The executing the test task based on the optimized execution order includes: The first-level use case groups in the same second-level use case group are executed serially in sequence.

4. The method according to claim 1, characterized in that: The optimizing the execution order of the test tasks based on the dependency information of each test case involved in the test tasks further includes: Orchestrate switching paths between different topological classifications; Determining an execution order of the second-level use case groups of different topological classifications based on the switching path; The executing the test task based on the optimized execution order includes: Based on the execution order, each of the second-level use case groups is executed serially.

5. The method according to claim 4, characterized in that The arranging of switching paths between different topology classifications includes: Constructing a directed graph with each of the topological classifications as a node and the switching costs between different topological classifications as edge weights; Based on the directed graph, a node traversal path with the smallest cumulative switching cost is selected as the switching path.

6. The method according to claim 1, characterized in that The method further comprises: Constructing the topology description file for use in the test case; The use case description file for the test case is constructed based on the topology description file.

7. The method according to claim 1, characterized in that The method further comprises: Obtaining indication information for optimizing the usage time of a target network node; Determine a test topology using the target network node based on the indication information; The executing the test task based on the optimized execution order includes: The test cases corresponding to the test topology of the target network node are executed preferentially.

8. A NFV automatic testing device, characterized in that: include: An acquisition module is used to acquire a test case set required for the test, wherein the test case set includes at least two test cases; A task construction module, used to construct a test task based on a use case description file of each test case in the test case set, wherein the use case description file includes: dependency information for describing the association between the test case and other test cases; A task scheduling module, used to optimize the execution order of the test tasks based on the dependency information of each test case involved in the test tasks; A task execution module, used for executing the test task based on the optimized execution order; The dependency information includes: a topology description file for describing the test topology of the test case or reference information of the topology description file, and the task scheduling module is specifically used to: Parsing each of the use case description files in the test task to determine the test topology involved in the test task; Classify the test cases that share the same test topology into a first-level test case group; Parsing the topology description file of each of the test topologies, and identifying the network nodes included in each of the test topologies; Performing topology classification based on the network nodes included in each of the test topologies; The first-level use case groups of the test topologies in the same topology classification are classified into second-level use case groups.

9. A NFV automatic testing device, characterized in that: include: A processor and a memory for storing a computer program that can be executed on the processor, wherein: The processor is used to execute the steps of the method according to any one of claims 1 to 7 when running a computer program.

10. A storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the steps of the method according to any one of claims 1 to 7 are implemented.