WO2023130569A1 - 产品测试方法、装置、计算机设备及存储介质 - Google Patents
产品测试方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- WO2023130569A1 WO2023130569A1 PCT/CN2022/080734 CN2022080734W WO2023130569A1 WO 2023130569 A1 WO2023130569 A1 WO 2023130569A1 CN 2022080734 W CN2022080734 W CN 2022080734W WO 2023130569 A1 WO2023130569 A1 WO 2023130569A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- node
- test
- test item
- file
- item
- Prior art date
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 404
- 238000003860 storage Methods 0.000 title claims abstract description 14
- 238000000034 method Methods 0.000 claims abstract description 102
- 230000008569 process Effects 0.000 claims abstract description 87
- 230000007704 transition Effects 0.000 claims description 9
- 238000012546 transfer Methods 0.000 claims description 5
- 230000006870 function Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 6
- 230000009286 beneficial effect Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000004519 manufacturing process Methods 0.000 description 4
- 239000000463 material Substances 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000007717 exclusion Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000011056 performance test Methods 0.000 description 3
- 238000002360 preparation method Methods 0.000 description 3
- 238000006467 substitution reaction Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 230000002950 deficient Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000014509 gene expression Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012800 visualization Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06312—Adjustment or analysis of established resource schedule, e.g. resource or task levelling, or dynamic rescheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0631—Resource planning, allocation, distributing or scheduling for enterprises or organisations
- G06Q10/06313—Resource planning in a project environment
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/30—Computing systems specially adapted for manufacturing
Definitions
- the present application relates to the technical field of testing, in particular to a product testing method, device, computer equipment and storage medium.
- test function points are also called test items, and the product needs to pass all the test items in these processes before it can be shipped as qualified.
- Product testing efficiency is related to production output, whether product testing stress is sufficient, and whether faults can be screened out within a limited time, so it has received widespread attention.
- the present application aims at solving one of the technical problems existing in related situations at least to a certain extent.
- embodiments of the present application provide a product testing method, device, computer equipment, and storage medium.
- the embodiment of the present application provides a product testing method, including: obtaining the established test item flow file and test item relationship file; the test item flow file is used to represent the execution timing relationship between each test item, The test item relationship file is used to describe the constraints corresponding to each of the test items; according to the test item process file, build a process node tree; according to the test item relationship file, for the process node tree Constraint conditions are configured for each node to obtain a test scheduling model; the product is tested through the test scheduling model.
- an embodiment of the present application provides a product testing device, which includes: an acquisition module configured to acquire established test item flow files and test item relationship files; the test item flow files are used to characterize each The execution timing relationship between test items, the test item relationship file is used to describe the constraints corresponding to each of the test items; the building module is configured to build a process node tree according to the test item process file; the configuration module is configured to configure constraint conditions for each node on the process node tree according to the test item relationship file to obtain a test scheduling model; a test module is configured to test the product through the test scheduling model.
- an embodiment of the present application provides a computer device, including: at least one processor; at least one memory configured to store at least one program; wherein, when the at least one program is executed by the at least one processor , enabling the at least one processor to implement the above product testing method.
- the embodiment of the present application also provides a computer-readable storage medium, which stores a processor-executable program, and the processor-executable program is used to implement the above-mentioned product testing method when executed by the processor. .
- Fig. 1 is the implementation environment schematic diagram of a kind of product testing method provided in the embodiment of the present application
- Fig. 2 is a schematic flow chart of a product testing method provided in the embodiment of the present application.
- Fig. 3 is the implementation schematic diagram of step 140 in a kind of product testing method provided in the embodiment of the present application.
- FIG. 4 is a schematic structural view of a product testing device provided in an embodiment of the present application.
- FIG. 5 is a schematic structural diagram of a computer device provided in an embodiment of the present application.
- test function points are also called test items, and the product needs to pass all the test items in these processes before it can be shipped as qualified.
- Product testing efficiency is related to production output, whether product testing stress is sufficient, and whether faults can be screened out within a limited time, so it has received widespread attention.
- an embodiment of the present application provides a product testing method, device, computer equipment, and storage medium, by coupling the test process part and the test dependency part (test constraints) of the test item to two original test attributes Separation can effectively reduce the difficulty of test preparation; during product testing, the test process node tree can be determined based on the test item process file, and constraints can be configured for each test item on the process node tree according to the test item relationship file , can adapt to the complex performance test of circular nesting of test items, and can flexibly constrain the execution logic and execution timing between test items, which is convenient for adaptive adjustment and extended application of test tasks according to different types of products.
- FIG. 1 is a schematic diagram of an implementation environment of a product testing method provided in an embodiment of the present application.
- the software and hardware main body of the implementation environment mainly includes an operation terminal 101 and a server 102 , and the operation terminal 101 is connected to the server 102 in communication.
- the product testing method can be configured separately on the operation terminal 101 for execution, or can be separately configured for execution on the server 102, or can be executed based on the interaction between the operation terminal 101 and the server 102, and can be appropriately adjusted according to actual application conditions. selection, which is not specifically limited in this embodiment.
- the operation terminal 101 and the server 102 may be nodes in the block chain, which is not specifically limited in this embodiment.
- the operation terminal 101 in this application may include, but is not limited to, any one of a smart watch, a smart phone, a computer, a personal digital assistant (Personal Digital Assistant, PDA), a smart voice interaction device, a smart home appliance, or a vehicle-mounted terminal.
- the server 102 can be an independent physical server, or a server cluster or distributed system composed of multiple physical servers, and can also provide cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communications, Cloud servers for basic cloud computing services such as middleware services, domain name services, security services, CDN (Content Delivery Network, content distribution network) and big data and artificial intelligence platforms.
- CDN Content Delivery Network, content distribution network
- a communication connection can be established between the operating terminal 101 and the server 102 through a wireless network or a wired network, which uses standard communication techniques and/or protocols, and the network can be set to the Internet, or any other network, such as including but Not limited to any combination of Local Area Network (LAN), Metropolitan Area Network (MAN), Wide Area Network (WAN), mobile, wired or wireless, private or virtual private network.
- LAN Local Area Network
- MAN Metropolitan Area Network
- WAN Wide Area Network
- mobile wired or wireless, private or virtual private network.
- FIG. 2 is a flow chart of a product testing method provided by an embodiment of the present application.
- the execution subject of the method may be at least one of an operation terminal or a server.
- the product testing method is configured in The operation terminal is used as an example to illustrate.
- the product testing method includes but not limited to step 110 to step 140 .
- Step 110 Obtain the established test item flow file and test item relationship file; the test item flow file is used to represent the execution timing relationship between each test item, and the test item relationship file is used to describe the constraint conditions corresponding to each test item.
- test process part and the test dependency part (test constraints) of the test item can be divided into two original The test properties that are coupled together are separated, thereby reducing the difficulty of test preparation.
- the test item process file is used to represent the execution timing relationship between each test item, such as the relationship between execution and whether it can be executed concurrently;
- the test item relationship file is used to describe the constraints corresponding to each test item itself, such as test Grouping of items, mutual exclusion between groups, and under what conditions a test item passes or fails.
- the test item process file can use the MMD file edited based on the Mermaid data format, and the Mermaid data can be used to draw charts and flow charts in text mode, which is more lightweight and convenient than conventional drawing programs.
- a small amount of data can clearly describe the complex process control relationship;
- the test item relationship file can use XML files, which can effectively express the dependencies between test items through text or relational expressions, and the content is rich Flexible, combining the test item process file and the test item relationship file can effectively meet the complex testing requirements of the product.
- Step 120 Build a process node tree according to the test item process file.
- a visualized process node tree can be constructed.
- the node process tree in the embodiment of the present application includes a plurality of test nodes, wherein the types of test nodes can include test item nodes and test condition nodes, and the test item nodes represent a certain or For some test tasks, the test condition node represents the execution logic requirements and execution timing relationship of each test item node in the test process.
- the process node tree can be used to describe the position of these nodes in the entire test process, which can facilitate the user to arrange the test process in time and logical dimensions.
- the visual display Through the visual display, the user can Intuitively understand the layout of test items.
- Step 130 According to the test item relationship file, configure constraint conditions for each node on the process node tree to obtain a test scheduling model.
- the test item relationship file is used to describe the constraints corresponding to each test item itself. These constraints can be flexibly set as needed, and after setting, when each node on the process node tree is built, these constraints can be configured to the corresponding nodes to obtain a test scheduling model.
- the constraint relationship of test items can be recorded through XML data, for example, a variety of attribute tags can be set, and the constraint relationship of test items can be expressed based on attribute tags and free combinations between attribute tags and render.
- attribute tags such as Title, MaxCount, Timeout, AllowTime, Group, WaitGroup, etc. can be configured for the test item.
- the Title tag can be used as the unique identifier of the test item, and the same identifier can be configured for each test item in the test item process file.
- the MaxCount tag can be used to limit the maximum number of executions of a test item. After this condition is met, the test item will not be scheduled for execution. It is more suitable for test tasks that have an upper limit for certain chips or functions.
- the Timeout tag can limit the upper limit of the execution time of the test item. When the test item exceeds the time and is not over, the timeout information can be reported.
- the AllowTime tag can be used to limit the time period for certain test items to be executed. For example, some programs are usually started and executed at night, and this tag can be used to restrict the test items.
- the Group tag can be used to bind multiple test items into a group, constraining them to be scheduled together and executed in parallel each time; on the contrary, the WaitGroup tag can be used to set the mutual exclusion relationship between test items, with mutual exclusion Test items for relationships cannot be executed in parallel.
- the WaitGroup tag can be used to set the mutual exclusion relationship between test items, with mutual exclusion Test items for relationships cannot be executed in parallel.
- the free combination here includes constraining different test items with different attribute tags, It also includes constraints on the same test item using multiple attribute tags at the same time. For example, you can use the Timeout tag and the Group tag to constrain the upper limit of the execution time of a group of test items.
- Step 140 Test the product through the test scheduling model.
- the test items can be scheduled in a manner similar to neuron conduction information. For example, first execute the first test item of the product to start the test. After the end, if the test passes, the signal is transmitted to other nodes that depend on it, such as the test item node and the test condition node. Rely on each node to check whether its preconditions are satisfied, if so, the node starts to execute the test task, otherwise ignore the signal. This cycle repeats until the test items set to end the test are executed, or when the test time is exhausted, the test ends.
- the above-mentioned node signal transmission and test end active triggering are used for product testing, without scanning and querying the execution status of each node, which can reduce the consumption of system hardware device resources.
- test constraint condition the difficulty of preparing for the test work can be effectively reduced;
- the process node tree of the test can be determined based on the test item process file, and the constraint conditions can be configured for each test item on the process node tree according to the test item relationship file, which can adapt to the complex performance test of test item loop nesting, And it can flexibly constrain the execution logic and execution timing between test items, which is convenient for adaptive adjustment and extended application of test tasks according to different types of products.
- the scheduling test process of the product testing method in the embodiment of the present application is mainly described, and it is defaulted that in this process, both the test item process file and the test item relationship file are established files.
- the product testing method process it may also include the establishment process of the test item flow file and the test item relationship file, wherein the test item flow file can be established through the following steps:
- Step 150 Obtain various test tasks of the product, and establish test item nodes according to each test task;
- Step 160 Establish test condition nodes according to the execution logic requirements of each test task
- Step 170 According to the execution timing relationship of each test task, determine the node jump relationship between each test item node and the test condition node, and obtain the test item flow file.
- test item process file it can be edited, established and visualized through the relevant process drawing program.
- test item process file when establishing the test item process file, firstly, various test tasks of the product can be obtained, and corresponding test item nodes can be established according to each test task, and each test item node represents a test item that needs to be executed .
- a test condition node can be established to limit the execution logic requirements between them through the test condition node.
- the node jump relationship between each node can be determined. The node jump relationship can be understood as After the test task or judgment logic at a node is executed, jump to the next node to continue the test according to the node jump relationship.
- three identifiers can be used to organize the information of its test process, including jump relationship information, condition description and jump identifier.
- the jump relationship information is used to define the post-transfer node of the node, that is, after the current node is executed, which node or nodes are transferred to perform the next test task or judgment logic, and the condition description is to describe the current node and Various jump conditions between post-forward nodes, and the jump flag specifically indicates whether the conditions are met. It can be understood that, for a test item node, since it is not used for judging requirements on the execution process, the field information of its condition description and jump identifier is empty.
- the jump relationship information can be represented by a line segment with an arrow
- the condition description can include various types, such as the local time cycle type, which can be used to implement local small cycle scheduling.
- the condition description can also include the total time cycle type, which is used to realize the overall large cycle of scheduling.
- test condition node with the condition description of the total time cycle type When the test condition node with the condition description of the total time cycle type is executed, it is judged whether the current time minus the execution time to start the test is set If it is within the range, jump to the corresponding node when the condition is met and execute the loop, otherwise, the test node is executed and the test is completed.
- the condition description can also be combined with the combination type, or the combination type and the waiting type, where the combination type indicates that when all the preconditions of the test condition node are met, jump to the corresponding node when the condition is met and continue to execute, otherwise jump to Go to the corresponding node when the condition is not satisfied; or the combination type indicates that when any one of all the preconditions of the test condition node is satisfied, jump to the corresponding node when the condition is met and continue to execute, if none are satisfied Then jump to the corresponding node for execution when the condition is not met; the wait type indicates that after reaching the test condition node, wait for a predetermined period of time before executing the test.
- the jump flag is used to represent whether the jump condition between the current node and the forward node is satisfied or not. When it is satisfied, the jump flag can be set to CY, and when it is not satisfied, the jump flag can be set to CN.
- field information includes the current node name, post-transfer node name, jump identifier and condition description; among them, the jump identifier is used to represent the current The jump condition between the node and the forward node is satisfied or not;
- the current node When the jump identifier is empty, the current node is configured as a test item node; or, when the jump identifier is not empty, the current node is configured as a test condition node.
- regular expression matching when parsing the test item process file, regular expression matching can be used to parse each line of data to obtain multiple field information of a node.
- the field information includes the name of the current node and the name of the post-forward node.
- the post-forward node here is the node that needs to be jumped to after the current node is executed. It is understandable that a current node may correspond to There are multiple post-forward junctions.
- the field information also includes a jump identifier and a condition description. The jump identifier specifically indicates that the jump condition between the current node and the forward node is satisfied or not satisfied, and the condition description describes the current node and the forward node. Various jump conditions between.
- the current node and the forward node can be created and added to the process node tree.
- the node type that is, whether the node belongs to a test condition node or a test item node.
- the field information of its condition description and jump identifier is empty. Therefore, when the jump identifier is empty, the current node can be configured as a test item node; when the jump identifier is not empty, the current node can be configured as a test condition node.
- the connection relationship between each node can be stored in the form of a set, for example: if the current node is configured as a test item node, it does not need to be judged The condition determines the jump, so the post-forward node can be directly added to the post-forward node set of the current node.
- the post-forward node set of the test item node includes the successful post-forward node set and the failure post-forward node set.
- the test scheduling model specifically schedules each test item node, it often needs to determine the situation of the pre-test item node or the pre-test condition node. Therefore, in the embodiment of the present application, when constructing the process node tree, it can be based on The determined jump relationship between each node determines the pre-test item node set and pre-test condition node set of each node. Specifically, in the previous steps, the jump relationship between nodes has been established from front to back.
- the transition point set or the post-failure transition point set it means that it is the post-transition point of the node corresponding to the successful post-transition point set or the post-failure transition point set.
- the success post-transition point The node corresponding to the collection or the transfer node collection after failure is the preceding node of the first node.
- the predecessor nodes of the first node can be determined, and then, according to all the precedence nodes corresponding to the first node node, the pre-test item node set and pre-test condition node set of the first node can be determined.
- the pre-test item node set includes all pre-test item nodes of the first node
- the pre-test condition node set includes all pre-test condition nodes of the first node.
- the target test item node when testing the product through the test scheduling model, for each test item node, it can internally scan the node state of the pre-test item node set and the pre-test condition node set, which is recorded as The target test item node, the target test item node is used to guide the execution of the target test task.
- the pre-test item node sets of the target test item node are all completed, and the pre-test condition node sets are all satisfied, it means that the target test node can be executed, and the target test task can be executed on the product at this time.
- the above-mentioned target test item node determines the execution timing by monitoring and scanning the state of the preceding node.
- each node in the embodiment of the present application can carry forward the task after executing the task of the node.
- the point passes a trigger signal.
- the target test node when the target test node receives the trigger signal, scan the pre-test item node set and the pre-test condition node set of the target test item node once; if the pre-test item node set of the target test item node When the item node set has been completed and the pre-test condition node set has been satisfied, it means that the target test node can be executed, and the target test task can be performed on the product at this time; if the pre-test item of the target test item node If the node set is not fully completed, or the pre-test condition node set is not fully satisfied, the trigger signal will be skipped and the scan will be performed after the next trigger signal. In this way, there is no need to scan and query the execution status of each node, which can reduce the consumption of system hardware device resources.
- the embodiment of the present application also provides a product testing device, including:
- the obtaining module 201 is configured to obtain the established test item flow file and test item relationship file; the test item flow file is used to represent the execution timing relationship between each test item, and the test item relationship file is used to describe each test item. Restrictions;
- the construction module 202 is configured to construct a process node tree according to the test item process file
- the configuration module 203 is configured to configure constraint conditions for each node on the process node tree according to the test item relationship file to obtain a test scheduling model
- the testing module 204 is configured to test the product through the test scheduling model.
- the embodiment of the present application also discloses a computer device, including:
- At least one processor 301 At least one processor 301;
- At least one memory 302 configured to store at least one program
- the at least one processor 301 When at least one program is executed by at least one processor 301, the at least one processor 301 implements the embodiment of the product testing method shown in FIG. 2 .
- the embodiment of the present application also discloses a computer-readable storage medium, which stores a processor-executable program, and the processor-executable program is used to implement the product testing method as shown in FIG. 2 when executed by the processor. example.
- a product testing method disclosed in the embodiment of the present application obtains the established test item flow file and test item relationship file; the test item flow file is configured to represent the execution timing relationship between each test item, and the test item relationship
- the file is configured to describe the constraints corresponding to each test item; according to the test item process file, a process node tree is constructed; according to the test item relationship file, constraints are configured for each node on the process node tree to obtain a test scheduling model; The product is tested through the test scheduling model.
- This method can effectively reduce the difficulty of test preparation; it can adapt to the complex performance test of circular nesting of test items, and can flexibly constrain the execution logic and execution timing between test items, which is convenient for adapting test tasks according to different types of products Adjust and extend the app.
- the functions/operations noted in the block diagrams may occur out of the order noted in the operational diagrams.
- two blocks shown in succession may, in fact, be executed substantially concurrently or the blocks may sometimes be executed in the reverse order, depending upon the functionality/operations involved.
- the embodiments presented and described in the flowcharts of this application are provided by way of example for the purpose of providing a more comprehensive understanding of the technology. The disclosed methods are not limited to the operations and logical flow presented herein. Alternative embodiments are contemplated in which the order of various operations is changed and in which sub-operations described as part of larger operations are performed independently.
- the functions are realized in the form of software functional units and sold or used as independent products, they can be stored in a computer-readable storage medium.
- the technical solution of the present application is essentially or the part that contributes to the prior art or the part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium, including Several instructions are used to make a computer device (which may be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the methods in the various embodiments of the present application.
- the aforementioned storage media include: U disk, mobile hard disk, read-only memory (ROM, Read-Only Memory), random access memory (RAM, Random Access Memory), magnetic disk or optical disc, etc., which can store program codes. .
- a "computer-readable medium” may be any device that can contain, store, communicate, propagate, or transmit a program for use in or in conjunction with an instruction execution system, device, or device.
- computer-readable media include the following: electrical connection with one or more wires (electronic device), portable computer disk case (magnetic device), random access memory (RAM), Read Only Memory (ROM), Erasable and Editable Read Only Memory (EPROM or Flash Memory), Fiber Optic Devices, and Portable Compact Disc Read Only Memory (CDROM).
- the computer-readable medium may even be paper or other suitable medium on which the program may be printed, as it may be possible, for example, by optically scanning the paper or other medium, followed by editing, interpretation or other suitable means if necessary. Processing to obtain programs electronically and store them in computer memory.
- each part of the present application may be realized by hardware, software, firmware or a combination thereof.
- various steps or methods may be implemented by software or firmware stored in memory and executed by a suitable instruction execution system.
- a suitable instruction execution system For example, if implemented in hardware, as in another embodiment, it can be implemented by any one or combination of the following techniques known in the art: having logic gates configured to perform logic functions on data signals Discrete logic circuits, ASICs with suitable combinational logic gates, programmable gate arrays (PGAs), field programmable gate arrays (FPGAs), etc.
Landscapes
- Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Engineering & Computer Science (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Strategic Management (AREA)
- Operations Research (AREA)
- Physics & Mathematics (AREA)
- Educational Administration (AREA)
- Marketing (AREA)
- Development Economics (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Game Theory and Decision Science (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biodiversity & Conservation Biology (AREA)
- Debugging And Monitoring (AREA)
Abstract
一种产品测试方法、装置、计算机设备及存储介质,该方法获取建立好的测试项流程文件和测试项关系文件(110);所述测试项流程文件用于表征各个测试项之间的执行时序关系,所述测试项关系文件用于描述各个所述测试项对应的约束条件;根据所述测试项流程文件,构建流程结点树(120);根据所述测试项关系文件,为所述流程结点树上的各个结点配置约束条件,得到测试调度模型(130);通过所述测试调度模型对产品进行测试(140)。
Description
相关申请的交叉引用
本申请基于申请号为202210018967.7,申请日为2022年01月05日的中国专利申请提出,并要求该中国专利申请的优先权,该中国专利申请的全部内容在此引入本申请作为参考。
本申请涉及测试技术领域,尤其是一种产品测试方法、装置、计算机设备及存储介质。
工业制造领域内,产品在发货前,一般需要进行一系列工序的测试,以减少残次产品的流出。其中,部分工序存在一系列的测试功能点,这些测试功能点又称为测试项,产品需要通过这些工序的全部测试项才能合格发货。产品的测试效率关系着生产产出量、产品的测试应力是否充足以及能否在有限的时间下筛查出故障等,因而受到广泛关注。
在一些情形中,随着技术的逐渐发展,产品的复杂性、元器件的精细化程度逐渐升高,对测试调度的要求也逐渐升高。目前对于产品的测试,存在流程可视化差、执行逻辑扩展不易的问题,难以满足日益复杂的产品测试要求。
综上,一些情形中存在的问题亟需得到解决。
发明内容
本申请旨在至少一定程度上解决相关情形中存在的技术问题之一。
为此,本申请实施例提供一种产品测试方法、装置、计算机设备及存储介质。
有鉴于此,本申请实施例所采取的技术方案包括:
一方面,本申请实施例提供了一种产品测试方法,包括:获取建立好的测试项流程文件和测试项关系文件;所述测试项流程文件用于表征各个测试项之间的执行时序关系,所述测试项关系文件用于描述各个所述测试项对应的约束条件;根据所述测试项流程文件,构建流程结点树;根据所述测试项关系文件,为所述流程结点树上的各个结点配置约束条件,得到测试调度模型;通过所述测试调度模型对产品进行测试。
另一方面,本申请实施例提供一种产品测试装置,所述装置包括:获取模块,被配置为获取建立好的测试项流程文件和测试项关系文件;所述测试项流程文件用于表征各个测试项 之间的执行时序关系,所述测试项关系文件用于描述各个所述测试项对应的约束条件;构建模块,被配置为根据所述测试项流程文件,构建流程结点树;配置模块,被配置为根据所述测试项关系文件,为所述流程结点树上的各个结点配置约束条件,得到测试调度模型;测试模块,被配置为通过所述测试调度模型对产品进行测试。
另一方面,本申请实施例提供了一种计算机设备,包括:至少一个处理器;至少一个存储器,被配置为存储至少一个程序;其中,当所述至少一个程序被所述至少一个处理器执行时,使得所述至少一个处理器实现上述的产品测试方法。
另一方面,本申请实施例还提供了一种计算机可读存储介质,其中存储有处理器可执行的程序,上述处理器可执行的程序在由处理器执行时用于实现上述的产品测试方法。
本申请的优点和有益效果将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
为了更清楚地说明本申请实施例或者相关情形中的技术方案,下面对本申请实施例或者相关情形中的相关技术方案附图作以下介绍,应当理解的是,下面介绍中的附图仅仅为了方便清晰表述本申请的技术方案中的部分实施例,对于本领域的技术人员来说,在无需付出创造性劳动的前提下,还可以根据这些附图获取到其他附图。
图1为本申请实施例中提供的一种产品测试方法的实施环境示意图;
图2为本申请实施例中提供的一种产品测试方法的流程示意图;
图3为本申请实施例中提供的一种产品测试方法中步骤140的实施示意图;
图4为本申请实施例中提供的一种产品测试装置的结构示意图;
图5为本申请实施例中提供的一种计算机设备的结构示意图。
下面结合说明书附图和具体的实施例对本申请进行进一步的说明。所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人 员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
工业制造领域内,产品在发货前,一般需要进行一系列工序的测试,以减少残次产品的流出。其中,部分工序存在一系列的测试功能点,这些测试功能点又称为测试项,产品需要通过这些工序的全部测试项才能合格发货。产品的测试效率关系着生产产出量、产品的测试应力是否充足以及能否在有限的时间下筛查出故障等,因而受到广泛关注。
在一些情形中,随着技术的逐渐发展,产品的复杂性、元器件的精细化程度逐渐升高,对测试调度的要求也逐渐升高。目前对于产品的测试,存在流程可视化差、执行逻辑扩展不易的问题,难以满足日益复杂的产品测试要求。
有鉴于此,本申请实施例中提供一种产品测试方法、装置、计算机设备及存储介质,通过将测试项的测试流程部分和测试依赖部分(测试约束条件)两个原本耦合在一起的测试属性分开,可有效减轻测试工作的准备难度;在进行产品测试时,基于测试项流程文件可以确定测试的流程结点树,根据测试项关系文件可以为流程结点树上的各个测试项配置约束条件,能够适应测试项循环嵌套的复杂性能测试,并且可以灵活约束测试项之间的执行逻辑和执行时序,方便根据不同类型的产品对测试任务做适应性调整和扩展应用。
图1是本申请实施例提供的一种产品测试方法的实施环境示意图。参照图1,该实施环境的软硬件主体主要包括操作终端101和服务器102,操作终端101与服务器102通信连接。其中,该产品测试方法可以单独配置于操作终端101执行,也可以单独配置于服务器102执行,或者基于操作终端101与服务器102二者之间的交互来执行,具体可以根据实际应用情况进行适当的选择,本实施例对此并不作具体限定。此外,操作终端101与服务器102可以为区块链中的结点,本实施例对此并不作具体限定。
具体地,本申请中的操作终端101可以包括但不限于智能手表、智能手机、电脑、个人数字助理(Personal Digital Assistant,PDA)、智能语音交互设备、智能家电或者车载终端中的任意一种或者多种。服务器102可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)以及大数据和人工智能平台等基础云计算服务的云服务器。操作终端101与服务器102之间可以通过无线网络或有线网络建立通信连接,该无线网络或有线网络使用标准通信技术和/或协议,网络可以设置为因特网,也可以是其它任何网络,例如包括但不限于局域网(Local Area Network,LAN)、城域网(Metropolitan Area Network,MAN)、广域网(Wide Area Network,WAN)、移动、有线或者无线网络、专用网络或者虚拟专用网 络的任何组合。
请参照图2,图2是本申请实施例提供的一种产品测试方法的流程图,该方法的执行主体可以是操作终端或者服务器中的至少一者,图2中以该产品测试方法配置于操作终端执行为例进行说明。参照图2,该产品测试方法包括但不限于步骤110至步骤140。
步骤110:获取建立好的测试项流程文件和测试项关系文件;测试项流程文件用于表征各个测试项之间的执行时序关系,测试项关系文件用于描述各个测试项对应的约束条件。
本步骤中,对于日渐复杂的产品测试需求,为了方便测试工作人员搭建整体的测试流程和各个细分的测试任务,可以把测试项的测试流程部分和测试依赖部分(测试约束条件)两个原本耦合在一起的测试属性分开,从而减轻测试工作的准备难度。其中,测试项流程文件用于表征各个测试项之间的执行时序关系,例如执行前后关系、是否可并发执行等信息;测试项关系文件则用于描述各个测试项本身对应的约束条件,例如测试项的分组、分组之间的互斥以及测试项在何种情况下通过或者不通过。
具体地,在一些实施例中,测试项流程文件可以使用基于Mermaid数据格式编辑的MMD文件,Mermaid数据可以用文本方式绘制图表和流程图,相比常规的制图程序更加的轻量、便捷,通过较小的数据量即可清晰地描述复杂的流程控制关系;在一些实施例中,测试项关系文件可以使用XML文件,通过文字或者关系式可以有效表达测试项之间的依赖关系,且内容丰富灵活,将测试项流程文件和测试项关系文件二者结合在一起,能够有效满足产品的复杂的测试需求。
步骤120:根据测试项流程文件,构建流程结点树。
本步骤中,在获取到建立好的测试项流程文件和测试项关系文件后,首先,基于测试项流程文件,可以构建可视化的流程结点树。本申请实施例中的结点流程树包括有多个测试结点,其中,测试结点的种类可以有测试项结点和测试条件结点,测试项结点表示的是测试过程中某个或者某些测试任务,测试条件结点表示的是测试过程中各个测试项结点的执行逻辑需求以及执行时序关系。
可以理解的是,本步骤中,流程结点树可以用于描述这些结点在整个测试流程中的位置,可以方便用户在时间、逻辑维度对测试的流程进行编排,通过可视化的展示,用户能够直观地了解到测试项的布局情况。
步骤130:根据测试项关系文件,为流程结点树上的各个结点配置约束条件,得到测试调度模型。
本步骤中,如前述的,测试项关系文件用于描述各个测试项本身对应的约束条件。这些约束条件可以根据需要灵活设定,并且在设定好以后,当流程结点树上的各个结点搭建完毕, 可以将这些约束条件配置到对应的结点中,得到测试调度模型。
具体地,本申请实施例中,可以通过XML数据来记录测试项的约束关系,例如可以设置多种属性标签,基于属性标签以及属性标签之间的自由组合,可以进行测试项的约束关系的表达和呈现。比如说,在一些实施例中,可以为测试项配置Title、MaxCount、Timeout、AllowTime、Group、WaitGroup等属性标签。其中,Title标签可以作为测试项的唯一标识,并且可以在测试项流程文件也对各个测试项配置相同的标识,如此,可以建立测试项流程文件和测试项关系文件中测试项的对应关系,方便后续将测试项的约束条件配置到流程结点树上对应的测试项结点。MaxCount标签可以用于限制测试项的最大执行次数,满足该条件之后不再调度执行该测试项,对于某些芯片或者功能具有执行上限的测试任务比较适用。Timeout标签可以限定测试项的执行时长上限,当测试项超过时间仍未结束,可以上报超时信息。AllowTime标签则可以用于限定某些测试项执行的时间段,比如部分程序一般在夜间开启执行,则可以使用该标签对测试项进行约束限制。Group标签则可以用于绑定多个测试项为一组,约束它们每次都被一起调度,并行执行;反之,WaitGroup标签则可以用于设定测试项之间的互斥关系,具有互斥关系的测试项不能被并行执行。当然,如前的,本申请实施例中,在使用上述的属性标签时,可以根据需要灵活选用进行自由组合,此处的自由组合,既包括对不同的测试项采用不同的属性标签进行约束,也包括对相同的测试项同时采用多个属性标签进行约束。比如说,可以使用Timeout标签和Group标签,约束一组测试项的执行时长上限。
需要补充说明的是,以上是对本申请中测试项关系文件的约束条件一些可能的实现方式所做的举例说明,并不意味这对本申请中实际的约束条件类型作限制。并且,可以理解的是,本申请中,可以通过自定义属性标签提高测试的灵活性和可靠性,满足不同场景下的应用需求。
步骤140:通过测试调度模型对产品进行测试。
本步骤中,当得到测试调度模型后,可以根据该模型对产品进行批量的测试工作。具体地,参照图3,在使用测试调度模型对产品进行测试时,可以利用类似神经元传导信息的方式进行测试项的调度。例如,首先执行产品的第一个开始测试的测试项,结束后,如果测试通过,则把信号传导给依赖它的其他结点,如测试项结点和测试条件结点。依赖各个结点检查自己的前置条件是否都满足,如果满足,则该结点开始执行测试任务,否则忽略该信号。如此循环反复,直到设定好的结束测试的测试项执行完成,或者测试时间耗尽时,测试结束。本申请实施例中,采用上述的结点信号传递和测试结束主动触发的方式进行产品测试,无需对各个结点的执行状态进行扫描查询,可减少对系统硬件设备资源的消耗。
可以理解的是,本申请实施例中,通过将测试项的测试流程部分和测试依赖部分(测试约束条件)两个原本耦合在一起的测试属性分开,可有效减轻测试工作的准备难度;在进行产品测试时,基于测试项流程文件可以确定测试的流程结点树,根据测试项关系文件可以为流程结点树上的各个测试项配置约束条件,能够适应测试项循环嵌套的复杂性能测试,并且可以灵活约束测试项之间的执行逻辑和执行时序,方便根据不同类型的产品对测试任务做适应性调整和扩展应用。
在前述的实施例中,主要对本申请实施例的产品测试方法的调度测试过程进行了说明,其中默认了在该过程中,测试项流程文件和测试项关系文件均为建立好的文件。在一些实施例中,对于产品测试方法过程,也可以包括有对测试项流程文件和测试项关系文件的建立过程,其中,测试项流程文件可以通过以下步骤建立:
步骤150:获取产品的各项测试任务,根据各项测试任务建立测试项结点;
步骤160:根据各项测试任务的执行逻辑需求,建立测试条件结点;
步骤170:根据各项测试任务的执行时序关系,确定各个测试项结点和测试条件结点的结点跳转关系,得到测试项流程文件。
本申请实施例中,对于测试项流程文件,可以通过相关的流程制图程序对其进行编辑建立和可视化展示。
本申请实施例中,在建立测试项流程文件时,首先可以获取产品的各项测试任务,根据各项测试任务建立对应的测试项结点,每个测试项结点代表一个需要执行的测试项。对于测试项之间的逻辑关系,例如部分测试项通过才能执行某一特殊测试项,可以建立测试条件结点,将它们之间的执行逻辑需求通过测试条件结点限定出来。当建立好测试项结点和测试条件结点以后,根据这些测试任务的执行时序关系,可以确定各个结点之间的结点跳转关系,结点跳转关系在流程图中可以理解为当一个结点处的测试任务或者判断逻辑执行完毕后,根据结点跳转关系跳转到下一个结点继续执行测试。
具体地,以Mermaid数据格式为例,对于每个结点,可以使用三个标识符对其测试流程的信息进行编排,其中包括跳转关系信息、条件描述和跳转标识。其中,跳转关系信息用于定义结点的后转结点,也即当前结点执行后,转入哪个或者哪些结点执行下一测试任务或者判断逻辑,条件描述则是描述当前结点和后转结点之间的各种跳转条件,跳转标识则具体表征条件是否满足。可以理解的是,对于测试项结点来说,由于其本身不用于执行流程上的判断需求,故而其条件描述和跳转标识的字段信息为空。
在具体的流程图中,跳转关系信息可以用带有箭头的线段表示,条件描述可以包括有多种类型,比如说局部时间循环类型,可以用来实现局部的小循环调度,当第一次执行到该测 试条件结点时开始计时,每次执行到该测试条件结点就判断当前的执行时间是否小于设定时间,如果是,则跳转到条件满足时对应的结点执行循环,否则清空计时器,跳转到条件不满足时对应的结点执行,跳出循环。条件描述还可以包括总时间循环类型,用于实现调度的总体大循环,执行到具有总时间循环类型的条件描述的测试条件结点时,判断当前时间减去开始测试的执行时间是否在设定范围内,如果是,则跳转到条件满足时对应的结点执行循环,否则执行结束测试结点,测试完成。条件描述还可以与组合类型、或组合类型以及等待类型,其中,与组合类型表示该测试条件结点的所有前置条件均满足时,跳转到条件满足时对应的结点继续执行,否则跳转到条件不满足时对应的结点执行;或组合类型表示该测试条件结点的所有前置条件中有任意一个满足时,跳转到条件满足时对应的结点继续执行,如果都不满足则跳转到条件不满足时对应的结点执行;等待类型表示到该测试条件结点后,等待一段预定的时长后执行测试。跳转标识用于表征当前结点和后转结点之间的跳转条件满足或者不满足,当满足时,跳转标识可以设置为CY,当不满足时,跳转标识可以设置为CN。
对应地,本申请实施例中,在根据测试项流程文件构建流程结点树时,可以包括以下步骤:
对测试项流程文件中的每个行数据进行解析,得到多个字段信息;字段信息包括当前结点名称、后转结点名称、跳转标识和条件描述;其中,跳转标识用于表征当前结点和后转结点之间的跳转条件满足或者不满足;
根据当前结点名称和后转结点名称创建当前结点和后转结点,并将创建的结点添加到流程结点树中;
当跳转标识为空,将当前结点配置为测试项结点;或者,当跳转标识不为空,将当前结点配置为测试条件结点。
本申请实施例中,在对测试项流程文件进行解析时,可以利用正则表达式匹配解析每一个行数据,得到一个结点的多个字段信息。其中该字段信息中包括有当前结点名称和后转结点名称,此处的后转结点即当前结点执行后需要跳转到的结点,可以理解的是,一个当前结点可能对应有多个后转结点。字段信息中还包括有跳转标识和条件描述,跳转标识具体表征当前结点和后转结点之间的跳转条件满足或者不满足,条件描述则是描述当前结点和后转结点之间的各种跳转条件。在解析得到当前结点名称和后转结点名称后,若当前的流程结点树不存在这些结点,则可以创建当前结点和后转结点添加到流程结点树。并且,本申请实施例中,进一步地可以设置结点类型,即结点属于测试条件结点还是测试项结点。如前的,对于测试项结点来说,由于其本身不用于执行流程上的判断需求,故而其条件描述和跳转标识的字段信息为空。因此,当跳转标识为空时,可以将当前结点配置为测试项结点;当跳转标识 不为空,可以将当前结点配置为测试条件结点。
在一些实施例中,在建立流程结点树时,可以将各个结点之间的连接关系通过集合的形式存储下来,例如:若当前结点被配置为测试项结点,其不需要根据判断条件决定跳转,故而可以直接将后转结点添加到当前结点的后转结点集合中,此处,测试项结点的后转结点集合包括成功后转结点集合和失败后转结点集合;若当前结点被配置为测试条件结点,则需要根据跳转标识将后转结点添加到当前结点的成功后转结点集合或者失败后转结点集合中,即将跳转标识为CY时对应的后转结点添加到当前结点的成功后转结点集合,将跳转标识为CN时对应的后转结点添加到当前结点的失败后转结点集合,由此从前向后建立结点之间的跳转关系。
测试调度模型在具体调度各个测试项结点时,往往需要确定前置测试项结点或者前置测试条件结点的情况,因此,本申请实施例中,在构建流程结点树时,可以根据已确定的各个结点之间的跳转关系,确定各个结点的前置测试项结点集合和前置测试条件结点集合。具体地,在前面的步骤中,已经从前向后建立了结点之间的跳转关系。因此,对于某一个结点来说,将其记为第一结点,可以遍历第一结点所处的成功后转结点集合和失败后转结点集合,如果它存在于某个成功后转结点集合或者失败后转结点集合中,说明它为该成功后转结点集合或者失败后转结点集合对应的结点的后转结点,换句话说,该成功后转结点集合或者失败后转结点集合对应的结点是第一结点的前置结点。因此,通过遍历第一结点所处的成功后转结点集合和失败后转结点集合,可以确定出第一结点的前置结点,进而,根据第一结点对应的所有前置结点,可以确定出第一结点的前置测试项结点集合和前置测试条件结点集合。其中,前置测试项结点集合包括第一结点的所有前置测试项结点,前置测试条件结点集合包括第一结点的所有前置测试条件结点。
对应地,在通过测试调度模型对产品进行测试时,对于每个测试项结点,其内部可以扫描前置测试项结点集合和前置测试条件结点集合的结点状态,将其记为目标测试项结点,目标测试项结点用于指引执行目标测试任务。当目标测试项结点的前置测试项结点集合已全部完成,且前置测试条件结点集合已全部满足时,说明可以执行目标测试结点,此时可以对产品执行目标测试任务。
上述的目标测试项结点通过监控扫描前置结点的状态确定执行时机,在另一些实施例中,本申请实施例的各个结点在执行完毕本结点的任务后,可以向后转结点传递一个触发信号。这种情况下,当目标测试结点接收到触发信号时,扫描一次目标测试项结点的前置测试项结点集合和前置测试条件结点集合;如果目标测试项结点的前置测试项结点集合已全部完成,且前置测试条件结点集合已全部满足时,说明可以执行目标测试结点,此时可以对产品 执行目标测试任务;如果目标测试项结点的前置测试项结点集合未全部完成,或者前置测试条件结点集合未全部满足,则跳过触发信号,等待下一次触发信号时再执行扫描。如此,无需对各个结点的执行状态进行扫描查询,可减少对系统硬件设备资源的消耗。
参照图4,本申请实施例还提供了一种产品测试装置,包括:
获取模块201,被配置为获取建立好的测试项流程文件和测试项关系文件;测试项流程文件用于表征各个测试项之间的执行时序关系,测试项关系文件用于描述各个测试项对应的约束条件;
构建模块202,被配置为根据测试项流程文件,构建流程结点树;
配置模块203,被配置为根据测试项关系文件,为流程结点树上的各个结点配置约束条件,得到测试调度模型;
测试模块204,被配置为通过测试调度模型对产品进行测试。
可以理解的是,图2所示的产品测试方法实施例中的内容均适用于本产品测试装置实施例中,本产品测试装置实施例所具体实现的功能与图2所示的产品测试方法实施例相同,并且达到的有益效果与图2所示的产品测试方法实施例所达到的有益效果也相同。
参照图5,本申请实施例还公开了一种计算机设备,包括:
至少一个处理器301;
至少一个存储器302,被配置为存储至少一个程序;
当至少一个程序被至少一个处理器301执行,使得至少一个处理器301实现如图2所示的产品测试方法实施例。
可以理解的是,如图2所示的产品测试方法实施例中的内容均适用于本计算机设备实施例中,本计算机设备实施例所具体实现的功能与如图2所示的产品测试方法实施例相同,并且达到的有益效果与如图2所示的产品测试方法实施例所达到的有益效果也相同。
本申请实施例还公开了一种计算机可读存储介质,其中存储有处理器可执行的程序,处理器可执行的程序在由处理器执行时用于实现如图2所示的产品测试方法实施例。
可以理解的是,如图2所示的产品测试方法实施例中的内容均适用于本计算机可读存储介质实施例中,本计算机可读存储介质实施例所具体实现的功能与如图2所示的产品测试方法实施例相同,并且达到的有益效果与如图2所示的产品测试方法实施例所达到的有益效果也相同。
本申请实施例所公开的一种产品测试方法,该方法获取建立好的测试项流程文件和测试项关系文件;测试项流程文件被配置为表征各个测试项之间的执行时序关系,测试项关系文件被配置为描述各个测试项对应的约束条件;根据测试项流程文件,构建流程结点树;根据 测试项关系文件,为流程结点树上的各个结点配置约束条件,得到测试调度模型;通过测试调度模型对产品进行测试。该方法可以有效减轻测试工作的准备难度;能够适应测试项循环嵌套的复杂性能测试,并且可以灵活约束测试项之间的执行逻辑和执行时序,方便根据不同类型的产品对测试任务做适应性调整和扩展应用。
在一些可选择的实施例中,在方框图中提到的功能/操作可以不按照操作示图提到的顺序发生。例如,取决于所涉及的功能/操作,连续示出的两个方框实际上可以被大体上同时地执行或方框有时能以相反顺序被执行。此外,在本申请的流程图中所呈现和描述的实施例以示例的方式被提供,目的在于提供对技术更全面的理解。所公开的方法不限于本文所呈现的操作和逻辑流程。可选择的实施例是可预期的,其中各种操作的顺序被改变以及其中被描述为较大操作的一部分的子操作被独立地执行。
此外,虽然在功能性模块的背景下描述了本申请,但应当理解的是,除非另有相反说明,功能和/或特征中的一个或多个可以被集成在单个物理装置和/或软件模块中,或者一个或多个功能和/或特征可以在单独的物理装置或软件模块中被实现。还可以理解的是,有关每个模块的实际实现的详细讨论对于理解本申请是不必要的。更确切地说,考虑到在本文中公开的装置中各种功能模块的属性、功能和内部关系的情况下,在工程师的常规技术内将会了解该模块的实际实现。因此,本领域技术人员运用普通技术就能够在无需过度试验的情况下实现在权利要求书中所阐明的本申请。还可以理解的是,所公开的特定概念仅仅是说明性的,并不意在限制本申请的范围,本申请的范围由所附权利要求书及其等同方案的全部范围来决定。
功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序 以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有被配置为对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
在本说明书的上述描述中,参考术语“一个实施方式/实施例”、“另一实施方式/实施例”或“某些实施方式/实施例”等的描述意指结合实施方式或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。
尽管已经示出和描述了本申请的实施方式,本领域的普通技术人员可以理解:在不脱离本申请的原理和宗旨的情况下可以对这些实施方式进行多种变化、修改、替换和变型,本申请的范围由权利要求及其等同物限定。
以上是对本申请的若干实施方式进行了具体说明,但本申请并不限于实施例,熟悉本领域的技术人员在不违背本申请精神的前提下可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。
在本说明书的描述中,参考术语“一个实施方式”、“另一实施方式”或“某些实施方式”等的描述意指结合实施方式或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。
尽管已经示出和描述了本申请的实施方式,本领域的普通技术人员可以理解:在不脱离 本申请的原理和宗旨的情况下可以对这些实施方式进行多种变化、修改、替换和变型,本申请的范围由权利要求及其等同物限定。
Claims (10)
- 一种产品测试方法,所述方法包括以下步骤:获取建立好的测试项流程文件和测试项关系文件;所述测试项流程文件用于表征各个测试项之间的执行时序关系,所述测试项关系文件用于描述各个所述测试项对应的约束条件;根据所述测试项流程文件,构建流程结点树;根据所述测试项关系文件,为所述流程结点树上的各个结点配置约束条件,得到测试调度模型;通过所述测试调度模型对产品进行测试。
- 根据权利要求1所述的产品测试方法,其中所述测试项流程文件通过以下步骤建立:获取所述产品的各项测试任务,根据各项测试任务建立测试项结点;根据各项测试任务的执行逻辑需求,建立测试条件结点;根据各项测试任务的执行时序关系,确定各个所述测试项结点和所述测试条件结点的结点跳转关系,得到测试项流程文件。
- 根据权利要求1所述的产品测试方法,其中,所述根据所述测试项流程文件,构建流程结点树,包括:对所述测试项流程文件中的每个行数据进行解析,得到多个字段信息;所述字段信息包括当前结点名称、后转结点名称、跳转标识和条件描述;其中,所述跳转标识用于表征当前结点和后转结点之间的跳转条件满足或者不满足;根据所述当前结点名称和后转结点名称创建当前结点和后转结点,并将创建的结点添加到所述流程结点树中;当所述跳转标识为空,将所述当前结点配置为测试项结点;或者,当所述跳转标识不为空,将所述当前结点配置为测试条件结点。
- 根据权利要求3所述的产品测试方法,其中,所述根据所述测试项流程文件,构建流程结点树,还包括以下步骤的至少之一:若所述当前结点被配置为测试项结点,将所述后转结点添加到所述当前结点的成功后转结点集合和失败后转结点集合中;或若所述当前结点被配置为测试条件结点,根据所述跳转标识将所述后转结点添加到所述当前结点的成功后转结点集合或者失败后转结点集合中。
- 根据权利要求4所述的产品测试方法,其中,所述根据所述测试项流程文件,构建流程结点树,还包括:遍历第一结点所处的成功后转结点集合和失败后转结点集合,确定所述第一结点的前置结点;所述第一结点包括测试项结点和测试条件结点;根据所述第一结点的各个前置结点,确定所述第一结点的前置测试项结点集合和前置测试条件结点集合。
- 根据权利要求5所述的产品测试方法,其中,所述通过所述测试调度模型对产品进行测试,包括:扫描目标测试项结点的前置测试项结点集合和前置测试条件结点集合;所述目标测试项结点用于指引执行目标测试任务;当所述目标测试项结点的前置测试项结点集合已全部完成且前置测试条件结点集合已全部满足,对所述产品执行目标测试任务。
- 根据权利要求5所述的产品测试方法,其中,所述通过所述测试调度模型对产品进行测试,包括:当接收到触发信号时,扫描目标测试项结点的前置测试项结点集合和前置测试条件结点集合;所述目标测试项结点用于指引执行目标测试任务;当所述目标测试项结点的前置测试项结点集合未全部完成,或者所述前置测试条件结点集合未全部满足,跳过所述触发信号。
- 一种产品测试装置,所述装置包括:获取模块,被配置为获取建立好的测试项流程文件和测试项关系文件;所述测试项流程文件用于表征各个测试项之间的执行时序关系,所述测试项关系文件用于描述各个所述测试项对应的约束条件;构建模块,被配置为根据所述测试项流程文件,构建流程结点树;配置模块,被配置为根据所述测试项关系文件,为所述流程结点树上的各个结点配置约束条件,得到测试调度模型;测试模块,被配置为通过所述测试调度模型对产品进行测试。
- 一种计算机设备,包括:至少一个处理器;至少一个存储器,被配置为存储至少一个程序;其中,当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如权利要求1-7中任一项所述的产品测试方法。
- 一种计算机可读存储介质,其中存储有处理器可执行的程序,所述处理器可执行的程序在由处理器执行时用于实现如权利要求1-7中任一项所述的产品测试方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210018967.7A CN116451917A (zh) | 2022-01-05 | 2022-01-05 | 产品测试方法、装置、计算机设备及存储介质 |
CN202210018967.7 | 2022-01-05 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023130569A1 true WO2023130569A1 (zh) | 2023-07-13 |
Family
ID=87073005
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2022/080734 WO2023130569A1 (zh) | 2022-01-05 | 2022-03-14 | 产品测试方法、装置、计算机设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN116451917A (zh) |
WO (1) | WO2023130569A1 (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09244921A (ja) * | 1996-03-08 | 1997-09-19 | Fujitsu Ltd | ソフトウエア試験の自動化システム |
CN103559030A (zh) * | 2013-10-28 | 2014-02-05 | 中国电子科技集团公司第四十一研究所 | 一种基于三态选择树的仪器自测试显示组件构造方法 |
CN105893254A (zh) * | 2016-03-29 | 2016-08-24 | 乐视控股(北京)有限公司 | 测试用例导入方法及装置 |
CN107608894A (zh) * | 2017-09-22 | 2018-01-19 | 深圳航天科技创新研究院 | 基于动态模型的软件测试文档生成方法、系统及存储介质 |
US20190012256A1 (en) * | 2016-01-27 | 2019-01-10 | Advantest Corporation | Deterministic concurrent test program executor for an automated test equipment |
CN113553268A (zh) * | 2021-07-27 | 2021-10-26 | 苏州市龙测智能科技有限公司 | 一种ai智能软件测试方法 |
CN113641591A (zh) * | 2021-10-14 | 2021-11-12 | 腾讯科技(深圳)有限公司 | 测试用例生成方法及装置、测试方法及装置 |
-
2022
- 2022-01-05 CN CN202210018967.7A patent/CN116451917A/zh active Pending
- 2022-03-14 WO PCT/CN2022/080734 patent/WO2023130569A1/zh unknown
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH09244921A (ja) * | 1996-03-08 | 1997-09-19 | Fujitsu Ltd | ソフトウエア試験の自動化システム |
CN103559030A (zh) * | 2013-10-28 | 2014-02-05 | 中国电子科技集团公司第四十一研究所 | 一种基于三态选择树的仪器自测试显示组件构造方法 |
US20190012256A1 (en) * | 2016-01-27 | 2019-01-10 | Advantest Corporation | Deterministic concurrent test program executor for an automated test equipment |
CN105893254A (zh) * | 2016-03-29 | 2016-08-24 | 乐视控股(北京)有限公司 | 测试用例导入方法及装置 |
CN107608894A (zh) * | 2017-09-22 | 2018-01-19 | 深圳航天科技创新研究院 | 基于动态模型的软件测试文档生成方法、系统及存储介质 |
CN113553268A (zh) * | 2021-07-27 | 2021-10-26 | 苏州市龙测智能科技有限公司 | 一种ai智能软件测试方法 |
CN113641591A (zh) * | 2021-10-14 | 2021-11-12 | 腾讯科技(深圳)有限公司 | 测试用例生成方法及装置、测试方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN116451917A (zh) | 2023-07-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9727604B2 (en) | Generating code for an integrated data system | |
US7689582B2 (en) | Data flow system and method for heterogeneous data integration environments | |
US8838808B2 (en) | Asynchronous communication in web applications | |
US8782127B2 (en) | Notification based web applications | |
US10453165B1 (en) | Computer vision machine learning model execution service | |
CN106537426A (zh) | 自动生成用于工作流程的执行序列 | |
US20130086020A1 (en) | Interactive Web Application Framework | |
US11210277B2 (en) | Distributing and processing streams over one or more networks for on-the-fly schema evolution | |
CN109768970A (zh) | 一种基于可配置的通用协议生成方法 | |
WO2016019772A1 (zh) | 一种屏蔽异构数据源的方法及装置 | |
WO2010106681A1 (ja) | データベース検索プログラムを記録するコンピュータ読取可能な記憶媒体、データベース検索装置、および、データベース検索方法 | |
CN116226189A (zh) | 缓存数据查询方法、装置、电子设备和计算机可读介质 | |
WO2023130569A1 (zh) | 产品测试方法、装置、计算机设备及存储介质 | |
CN111191103B (zh) | 从互联网中识别分析企业主体信息方法、装置及存储介质 | |
US8499007B2 (en) | Information processing system, first information processing apparatus, second information processing apparatus, and third information processing apparatus | |
CN110673962B (zh) | 一种内容流处理方法、装置、设备及介质 | |
CN116955475A (zh) | 一种异构数据库的数据同步方法、装置、设备及存储介质 | |
JP2023504637A (ja) | Etlパイプライン処理のためのシステム及び方法 | |
CN118444960B (zh) | 基于接口文档的数据模型自动建立方法、装置和系统 | |
CN115525722B (zh) | 宽表数据的同步方法、装置、电子装置和存储介质 | |
US20110191385A1 (en) | Using a separate process in an interactive computer programming environment as a database | |
CN104731697A (zh) | 测试用例的运行控制方法、控制系统和监听器 | |
KR101132741B1 (ko) | 메타데이터 관리 시스템 및 방법 | |
Maanpää | A Web Component for Real-Time Collaborative Text Editing | |
CN114968624A (zh) | 流数据处理方法、流处理系统、电子设备及计算机存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 22918035 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |