Systems, methods, media and devices for hardware-in-loop automated test management
By designing a hardware-in-ring automation test management system, using the collaborative work of the cloud test platform, application container engine, robot control system and hardware-in-ring simulation platform, the problem of manual testing occupies resources and affects environmental deployment in HiL automation testing is solved, and an efficient and automated test management process is achieved.
Patent Information
- Application Number
- CN202311281169.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2023-09-28
- Publication Date
- 2025-04-04
- Estimated Expiration
- 2043-09-28
AI Technical Summary
The prior art has problems in hardware-in-ring (HiL) automation testing, which occupies resources and affects environmental deployment, resulting in low testing efficiency and difficult maintenance.
A hardware-in-ring automation test management system was designed, including a cloud test platform, application container engine, robot control system and hardware-in-ring simulation platform. Through the collaborative work of these components, intelligent distribution of test tasks, automated hardware switching, automatic triggering of software flash writing and test report generation are realized.
It has achieved the improvement of automated test management processes, reduced labor costs, improved testing efficiency, and reduced dependence on the HiL environment.
Smart Images

Figure CN119759747A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of hardware-in-the-loop (HiL) automated testing, and more particularly to a system, method, computer-readable storage medium and computer device for hardware-in-the-loop automated testing management. Background Art
[0002] With the rapid development of the automotive industry, vehicle manufacturers have greatly increased their demands for test environment and test efficiency. For the test team, the use of HiL testing is an indispensable method, which can not only verify the fast iteration of software in the laboratory, but also reduce the corresponding vehicle testing. Combined with the corresponding automated testing, it can also greatly reduce the time cost of testers and improve test efficiency.
[0003] HiL testing includes manual testing and automated testing. Since automated testing has high requirements for the environment deployment of HiL itself and the environment deployment of the upper and lower computers, most test teams will use manual triggering to perform automated testing; at the hardware iteration node, manual replacement will be used to switch the hardware, and manual triggering will be used to start software flashing and preliminary verification of HiL functions and hand it over to the test team for functional testing, integration testing, and system testing. This method increases the team's resource costs and communication costs between teams to a certain extent. In addition, manual testing will also occupy most of HiL and may affect its environment deployment, which increases the difficulty of automated testing maintenance to a certain extent. How to balance the ownership of the use rights of HiL between manual testing and automated testing and optimize the process of automated testing is a problem that needs to be solved.
[0004] Therefore, there is a need for an improved system and method for hardware-in-the-loop automated test management. Summary of the invention
[0005] In order to solve at least one of the above problems, the present invention provides the following system, method, computer-readable storage medium and computer device for hardware-in-the-loop automated test management.
[0006] According to a first aspect of the present invention, a system for hardware-in-the-loop automated test management is provided, characterized in that the system at least comprises: a cloud test platform, an application container engine, a robot control system and a hardware-in-the-loop simulation platform, wherein:
[0007] The cloud test platform includes a test confirmation module, a test distribution module, a schedule module and a client interaction module. The client interaction module communicates with the hardware-in-the-loop simulation platform through the client to receive basic information of the hardware fed back by the hardware-in-the-loop simulation platform. The test distribution module is configured to realize intelligent distribution of hardware-in-the-loop test tasks according to at least the test task information provided by the test confirmation module, the schedule information provided by the schedule module and the basic information of the hardware fed back by the hardware-in-the-loop simulation platform.
[0008] The application container engine is configured to receive the test tasks distributed by the test distribution module in the cloud test platform, and forward the corresponding test tasks to the robot control system;
[0009] The robot control system includes robot control software and a corresponding robot, wherein the robot is configured to start, shut down or replace hardware of the hardware-in-the-loop simulation platform under the control of the robot control software;
[0010] The hardware-in-the-loop simulation platform is connected to the robot control system and is configured to run simulation software to perform corresponding test tasks.
[0011] In one embodiment, the system also includes an automated testing system, which receives the distributed test tasks and related information forwarded from the application container engine, sends instructions to the hardware-in-the-loop simulation platform to execute corresponding test tasks, and automatically generates a test report.
[0012] In one embodiment, the system further includes a test management tool, which communicates with the cloud testing platform and the automated testing system, and is configured to plan and store relevant information of the test tasks and record test completion information.
[0013] In one embodiment, the test confirmation module communicates with the test management tool and is configured to send relevant information of the test task to relevant testers according to the test tasks planned in the test management tool, store the relevant information in the cloud testing platform, and enable the relevant testers to upload the required software and confirm the test information.
[0014] In one embodiment, the schedule module is configured to store and display manually created tasks received in the hardware-in-the-loop simulation platform and confirmed automated tasks provided by the test confirmation module, and provide schedule information of the hardware-in-the-loop simulation platform.
[0015] In one embodiment, the test distribution module is configured to:
[0016] Extracting schedule information of the hardware-in-the-loop simulation platform from the schedule module;
[0017] Extract relevant information of the test task from the test confirmation module;
[0018] When the test task expires, basic information of the hardware of the hardware-in-the-loop simulation platform is obtained from the client interaction module;
[0019] Compare the extracted relevant information of the test task with the acquired basic information of the hardware of the hardware-in-the-loop simulation platform to determine whether the hardware of the hardware-in-the-loop simulation platform meets the requirements of the test task to be tested;
[0020] If the requirements are not met, triggering the robot control system to replace the hardware of the hardware-in-the-loop simulation platform;
[0021] When the hardware of the hardware-in-the-loop simulation platform meets the requirements of the test task to be tested, the execution time of the test task to be tested is determined based on the task stored in the schedule module, and the test task to be tested is triggered via the application container engine when the execution time of the test task to be tested expires.
[0022] In one embodiment, the application container engine includes a message forwarding middleware and an open source testing tool;
[0023] The message forwarding middleware is configured to receive relevant information of the test task and forward it to the test confirmation module, as well as receive tasks of replacing the hardware of the hardware-in-the-loop simulation platform and tasks of starting or shutting down the hardware-in-the-loop simulation platform, and forward it to the robot control system, wherein the relevant information of the test task includes test information from the test management tool and software information provided by the tester;
[0024] The open source testing tool interacts with the testing management tool, the automated testing system and the robot control system to trigger testing tasks, trigger tasks to replace the hardware of the hardware-in-the-loop simulation platform and trigger tasks to start or shut down the hardware-in-the-loop simulation platform.
[0025] According to a second aspect of the present invention, a method for hardware-in-the-loop automated test management is provided, characterized in that the method is completed by at least a cloud test platform, an application container engine, a robot control system and a hardware-in-the-loop simulation platform interacting with each other, the cloud test platform includes a test confirmation module, a test distribution module, a schedule module and a client interaction module, and the method includes:
[0026] The test confirmation module receives the planned test task, sends relevant information of the test task to relevant testers, stores the relevant information in the cloud test platform, and receives software information provided by the testers;
[0027] The client interaction module communicates with the hardware-in-the-loop simulation platform through the client to receive basic information of the hardware fed back by the hardware-in-the-loop simulation platform;
[0028] The test distribution module realizes intelligent distribution of hardware-in-the-loop test tasks based at least on the schedule information of the hardware-in-the-loop simulation platform extracted from the schedule module, the relevant information of the test task extracted from the test confirmation module, and the basic information of the hardware of the hardware-in-the-loop simulation platform obtained from the client interaction module;
[0029] Using the application container engine to receive the test tasks distributed by the test distribution module, and forwarding the corresponding test tasks to the robot control system, wherein the robot control system includes robot control software and a corresponding robot;
[0030] The robot starts, shuts down or replaces hardware of the hardware-in-the-loop simulation platform under the control of the robot control software; and
[0031] The hardware-in-the-loop simulation platform receives the distributed test tasks from the robot control system and runs simulation software to execute the corresponding test tasks.
[0032] The above-mentioned embodiments according to the first aspect of the present invention may also be similarly applied to the embodiments according to the second aspect of the present invention, and will not be described in detail herein.
[0033] According to a third aspect of the present invention, there is provided a computer-readable storage medium having a computer program stored thereon, wherein the computer program implements the method according to the second aspect of the present invention when executed by a processor.
[0034] According to a fourth aspect of the present invention, there is provided a computer device comprising a memory and a processor, wherein the memory stores a computer program, and wherein the processor implements the steps of the method according to the second aspect of the present invention when executing the computer program.
[0035] Through the solution of the present invention, for manual testing and automated testing, rapid interaction is performed between the test management tool, the cloud testing platform, the hardware-in-the-loop simulation platform and the robot control system to complete the intelligent distribution of both manual testing tasks and automated testing tasks, and automatic hardware switching of the hardware-in-the-loop simulation platform can be performed, thereby realizing automated management and distribution of test tasks, automatic triggering of software flashing and testing, automatic generation of test reports, establishing a complete automated task management process, reducing labor costs, and improving testing efficiency.
[0036] In addition, one or more of the following advantages can be achieved through the various implementation schemes described in this article. For example, the test management tool can plan test tasks according to project nodes and iteration nodes of software and hardware; the cloud test platform can effectively perform HiL reservation services, greatly reducing the human interaction time of automated testing, and can be combined with manual tasks to avoid conflicts over HiL ownership; the robot control system reduces the reliance on manual replacement of hardware parts in the automated testing process, reduces time costs, and improves the automated process; the automated testing system implements the test logic of hardware and software separation, and can quickly locate problems in automated testing; the test case module can flexibly use its test classification to manage test tasks. BRIEF DESCRIPTION OF THE DRAWINGS
[0037] Non-limiting and non-exhaustive embodiments of the present invention are described, by way of example, with reference to the following drawings, in which:
[0038] Figure 1 An overall structural block diagram of a system for hardware-in-the-loop automated test management according to an embodiment of the present invention is shown;
[0039] Figure 2 A flowchart of a method for hardware-in-the-loop automated test management according to an embodiment of the present invention is shown; and
[0040] Figure 3 A flow chart of a method executed by a test distribution module according to an embodiment of the present invention is shown. DETAILED DESCRIPTION
[0041] In order to make the above and other features and advantages of the present invention clearer, the present invention is further described below in conjunction with the accompanying drawings. The accompanying drawings constitute a part of this application and are used to illustrate the present invention together with the embodiments of the present invention. For the purpose of clarity and simplification, detailed specific descriptions of known functions and structures of the devices, devices and / or equipment described herein will be omitted when they may obscure the subject matter of the present invention. It should be understood that the specific embodiments given herein are for the purpose of explaining to those skilled in the art and are only exemplary and non-restrictive.
[0042] The features described herein may be embodied in different forms and should not be construed as being limited to the embodiments described herein. Rather, the embodiments described herein are provided only to illustrate some of the many possible ways of implementing the devices and / or systems described herein, which will be apparent after understanding the disclosure of the present application.
[0043] As used herein, the term "and / or" includes any one of the associated listed items and any combination of any two or more of the associated listed items.
[0044] The terms used herein are only used to describe various embodiments and are not used to limit the present disclosure. Unless the context clearly indicates otherwise, "a", "an" and "the" are intended to include plural forms as well. The terms "include", "comprise" and "have" specify the presence of stated features, operations, components, elements and / or combinations thereof, but do not exclude the presence or addition of one or more other features, operations, components, elements and / or combinations thereof. The present invention is described below in conjunction with the accompanying drawings only by way of example.
[0045] Figure 1 The overall structural block diagram of a system 100 for hardware-in-the-loop automated test management according to an embodiment of the present invention is shown. The system 100 may include at least: a cloud test platform 102, an application container engine 104, a robot control system 106, and a hardware-in-the-loop simulation platform 108. The cloud test platform 102 may include a test confirmation module 1022, a test distribution module 1024, a schedule module 1026, and a client interaction module 1028. The client interaction module 1028 may communicate with the hardware-in-the-loop simulation platform 108 through the client 1014 to receive basic information of the hardware fed back by the hardware-in-the-loop simulation platform 108. In one embodiment, the client interaction module 1028 may monitor the request of the cloud test platform 102 and feed back the basic information of the hardware fed back by the hardware-in-the-loop simulation platform 108. The test distribution module 1024 may be configured to realize intelligent distribution of hardware-in-the-loop test tasks according to at least the test task information provided by the test confirmation module 1022, the schedule information provided by the schedule module 1026, and the basic information of the hardware fed back by the hardware-in-the-loop simulation platform 108.
[0046] The application container engine 104 may be configured to receive the test tasks distributed by the test distribution module 1024 in the cloud test platform 102, and forward the corresponding test tasks to the robot control system 106. The robot control system 106 may include robot control software 1062 and a corresponding robot 1064. The robot 1064 may be configured to start, shut down, or replace hardware of the hardware-in-the-loop simulation platform 108 under the control of the robot control software 1062. In one embodiment, the robot control software 1062 can be developed based on the open source framework of the robot operating system (e.g., Robot Operating System, referred to as ROS), use the coordinate system to define the control node, and encapsulate the robot-related action functions as an interface, and adopt, for example, HTTP request to connect with the open source test tool 1044 (e.g., the open source test tool Jenkins); when the robot 1064 receives the trigger task of the open source test tool, it can query the coordinate system according to the information in the corresponding hardware-in-the-loop simulation platform in the pipeline, and replace the hardware on the hardware-in-the-loop simulation platform 108 according to the defined corresponding coordinates and action functions (if the hardware information to be tested does not match the information in the hardware-in-the-loop simulation platform) and start or shut down the hardware-in-the-loop simulation platform 108. The above-mentioned robot control software is based on the ROS open source framework, and can intelligently control the robot to operate the hardware-in-the-loop simulation platform, including the switch of the hardware-in-the-loop simulation platform and the replacement of the hardware of the hardware-in-the-loop simulation platform, which reduces the dependence on the replacement of the hardware part in the automated test process and improves the automated process.
[0047] The hardware-in-the-loop simulation platform 108 can be connected to the robot control system 106, and can be configured to run simulation software to perform corresponding test tasks. In one embodiment, the hardware-in-the-loop simulation platform 108 can include a real-time processor, an input-output (IO) board, simulation software, a vehicle electronic control unit (ECU) to be tested, etc.; the real-time processor is connected to a unit to be tested, such as a vehicle electronic control unit, through an IO board, and is controlled by an automated test system and runs simulation software to simulate the operating state of, for example, an ECU.
[0048] In one embodiment, the system 100 may also include an automated test system 1010 and a test management tool 1012. The test management tool 1012 may communicate with the cloud test platform 102 and the automated test system 1010. The test management tool 1012 may be configured to plan and store relevant information of the test task and record the test completion information. The test management tool 1012 may plan the test task according to the project node and the iteration node of the software and hardware. In one embodiment, the test management tool may use a test management tool such as Jira management software to plan and store specific information of the automated test task, including the version of the vehicle model to be tested, the hardware information to be tested, the software information to be tested, the test case type, the test start date and the test deadline. Among them, the vehicle model version to be tested and the hardware information to be tested can be used to match the information on the hardware-in-the-loop simulation platform; the software information to be tested can be provided to the test input personnel, and the software file can be uploaded to the cloud test platform by them; the test case type can be used in the automated test framework to run the corresponding test script; the test start date can be monitored by the test confirmation module 1022 in the cloud test platform 102, and used to send the test task email to the corresponding tester for test confirmation.
[0049] In one embodiment, the test confirmation module 1022 can communicate with the test management tool 1012, and can be configured to send the relevant information of the test task to the relevant tester according to the test task planned in the test management tool 1012, store the relevant information in the cloud test platform 102, and enable the relevant tester to upload the required software and confirm the test information. In one embodiment, the test confirmation module 1022 can, for example, form a relevant web page for the relevant tester to upload the necessary software and confirm the test information. In one embodiment, the test confirmation module 1022 proofreads the automated test task planned in the test management tool 1012 (for example, the test management tool Jira) by the start date of the test task, and sends the information therein to the relevant tester by email; at the same time, the test task will also be stored in the cloud test platform 102, so that the later tester can use the relevant web page generated in the cloud test platform 102 to confirm before the test and upload files such as relevant software, and publish the confirmed test task in the message middleware 1042 for use by the test distribution module 1024.
[0050] In one embodiment, the schedule module 1026 may be configured to store and display the manually created tasks received in the hardware-in-the-loop simulation platform 108 and the confirmed automated tasks provided by the test confirmation module 1022, and provide schedule information of the hardware-in-the-loop simulation platform 108. In one embodiment, the schedule module 1026 may be used to display and store manual events and automated events, subscribe to the test tasks in the message middleware 1042, extract the automated test task information, and match it to a schedule of a specific HiL hardware according to the hardware information and store it. The stored events will be used by the test distribution module 1024 to determine the execution time of the automated test task to be tested, and trigger the client 1014 to deliver the service and the test task when the execution time of the automated test task expires.
[0051] Figure 2 A flowchart of a method 200 for hardware-in-the-loop automated test management according to an embodiment of the present invention is shown. The method 200 may be performed as described above with reference to Figure 1 The system 100 for hardware-in-the-loop automated test management described herein is executed. The method 200 may be performed by at least a cloud test platform (e.g., Figure 1 The cloud test platform 102 in the application container engine (e.g., Figure 1 Application container engine 104 in the robot control system (e.g., Figure 1 The robot control system 106 in the example of FIG. 106 ) and the hardware-in-the-loop simulation platform (e.g., Figure 1 The cloud test platform may include a test confirmation module (e.g., Figure 1 , a test confirmation module 1022 in the test distribution module (e.g., Figure 1 Test distribution module 1024 in, schedule module (for example, Figure 1 The calendar module 1026 in the example) and the client interaction module (e.g., Figure 1 The client interaction module 1028 in the example.
[0052] The method 200 may include steps S201 - S205 .
[0053] In step S201, the test confirmation module receives a planned test task, sends relevant information of the test task to relevant testers, stores the relevant information in the cloud test platform, and receives software information provided by the testers.
[0054] In step S202, the client interaction module communicates with the client through the client (eg, Figure 1 The client 1014) communicates with the hardware-in-the-loop simulation platform to receive basic information of the hardware fed back by the hardware-in-the-loop simulation platform.
[0055] In step S203, the test distribution module realizes intelligent distribution of hardware-in-the-loop test tasks based at least on the schedule information of the hardware-in-the-loop simulation platform extracted from the schedule module, the relevant information of the test task extracted from the test confirmation module, and the basic information of the hardware of the hardware-in-the-loop simulation platform obtained from the client interaction module.
[0056] In step S204, the application container engine is used to receive the test task distributed by the test distribution module, and the corresponding test task is forwarded to the robot control system, wherein the robot control system includes robot control software (for example, Figure 1 1062) and a corresponding robot (e.g., Figure 1 Robot 1064).
[0057] In step S205, the robot starts, shuts down or replaces the hardware of the hardware-in-the-loop simulation platform under the control of the robot control software; and the hardware-in-the-loop simulation platform receives the distributed test tasks from the robot control system and runs the simulation software to execute the corresponding test tasks.
[0058] In one embodiment, the method 200 may further include: executing, by the test distribution module 1024, Figure 3 Steps S301-S306 are shown.
[0059] In step S301 , the schedule information of the hardware-in-the-loop simulation platform 108 is extracted from the schedule module 1026 .
[0060] In step S302 , relevant information of the test task is extracted from the test confirmation module 1022 .
[0061] In step S303 , when the test task expires, basic information of the hardware of the hardware-in-the-loop simulation platform 108 is obtained from the client interaction module 1028 .
[0062] In step S304, the extracted relevant information of the test task is compared with the basic information of the hardware of the hardware-in-the-loop simulation platform 108 (for example, the version of the vehicle model to be tested, the hardware information to be tested) to determine whether the hardware of the hardware-in-the-loop simulation platform meets the requirements of the test task to be tested.
[0063] If the requirement is not met, then in step S305 , the robot control system 106 is triggered to replace the hardware of the hardware-in-the-loop simulation platform 108 .
[0064] When the hardware of the hardware-in-the-loop simulation platform 108 meets the requirements of the test task to be tested, in step S306, the execution time of the test task to be tested is determined based on the task stored in the schedule module 1026, and the test task to be tested is triggered via the application container engine 104 when the execution time of the test task to be tested expires.
[0065] In one embodiment, the application container engine 104 may include a message forwarding middleware 1042 and an open source test tool 1044. In one embodiment, the open source test tool 1044 is, for example, an open source test tool Jenkins software. The message forwarding middleware 1042 may be configured to receive relevant information of a test task and forward it to the test confirmation module 1022, as well as receive tasks for replacing the hardware of the hardware-in-the-loop simulation platform 108 and tasks for starting or shutting down the hardware-in-the-loop simulation platform 108, and forward it to the robot control system 106, wherein the relevant information of the test task includes test information from the test management tool and software information provided by the tester. The open source test tool 1044 may interact with the test management tool 1012, the automated test system 1010, and the robot control system 106 to trigger a test task, trigger tasks for replacing the hardware of the hardware-in-the-loop simulation platform 108, and trigger tasks for starting or shutting down the hardware-in-the-loop simulation platform 108. The open source testing tool Jenkins defines the corresponding test pipeline for each HiL. Remote triggering, parameter triggering, and non-concurrent triggering are used when defining the pipeline. HTTP requests to third-party plug-ins are used in the pipeline to interact with the test management tool Jira, the automated testing system, and the robot control system, thereby achieving information exchange between multiple platforms and facilitating test tracking and backtracking. In one embodiment, if it is determined that the hardware of the hardware-in-the-loop simulation platform 108 does not meet the requirements of the test task to be tested, a task to replace the hardware of the hardware-in-the-loop simulation platform 108 is published in the message middleware 1042 of the application container engine 104, and the robot control system 106 is triggered to replace the hardware of the hardware-in-the-loop simulation platform 108 via the open source testing tool 1044 of the application container engine 104.
[0066] In one embodiment, the method 200 may further include: an open source testing tool (e.g., Figure 1 The open source testing tool 1044) can interact with the test management tool, the automated testing system and the robot control system to trigger test tasks, trigger tasks to replace the hardware of the hardware-in-the-loop simulation platform, and trigger tasks to start or shut down the hardware-in-the-loop simulation platform.
[0067] In one embodiment, the automated testing system 1010 can receive the distributed test tasks and related information forwarded from the application container engine 104, send instructions to the hardware-in-the-loop simulation platform 108 to execute the corresponding test tasks, and automatically generate a test report. In one embodiment, the automated testing system 1010 may include a service-based automated testing framework, a test case module, a test module, a test report module, and a software flashing module (in Figure 1 In one embodiment, the service-based automated test framework may adopt an autonomous test framework based on, for example, a python language, and the test framework adopts a remote procedure call method such as an xml remote procedure call (xmlrpc), develops and encapsulates a test software console such as a programming interface provided by ControlDesk, a programming interface provided by a diagnostic module (such as DiagRA) for reading diagnostic data from a vehicle electronic control unit, and a programming interface provided by a vehicle electronic control unit measurement, calibration, diagnosis, and sensor data recording verification software (such as CANape). Based on the test task information in the open source test tool Jenkins, it can automatically complete the operation of the corresponding project of the test software ControlDesk and related simulation operations and tests, and can automatically run the diagnostic module DiagRA and obtain diagnostic information and automatically run CANape for testing, thereby realizing the test logic of hardware and software separation, and can quickly locate problems in automated testing.
[0068] In one embodiment, the test case module can be scripted based on test cases in suitable documents such as Excel format, can manage and classify different types of test cases and form corresponding formats such as json text and python files, testers only need to maintain corresponding Excel documents, which is convenient for version information management, and can flexibly use its test classification to manage test tasks; based on the test task information in the open source testing tool Jenkins, it can selectively insert the test case to be tested into the test case set (test suite) that needs to be run. In one embodiment, the test module is based on the automated testing framework and the test case module, receives the test task from the test case module and uses the interface of the automated testing framework to execute the test task. In one embodiment, the test report module is based on the test module, receives the test input from the test module and automatically generates a test report, and can connect to the cloud test platform and the test management tool for data transmission, thereby further realizing the complete automated management and execution of the test task with the help of the following test management tool, and establishing a complete automated testing process.
[0069] In one embodiment, a computer device is provided, which includes a memory and a processor, wherein the memory stores computer instructions executable by the processor, and the computer instructions instruct the processor to perform the various steps of the method of the present invention when executed by the processor. The computer device can be a server or any other electronic device with necessary computing and / or processing capabilities in a broad sense. In one embodiment, the computer device may include a processor, a memory, a network interface, a communication interface, etc. connected through a system bus. The processor of the computer device can be used to provide necessary computing, processing and / or control capabilities. The memory of the computer device may include a non-volatile storage medium and an internal memory. An operating system, a computer program, etc. may be stored in or on the non-volatile storage medium. The internal memory can provide an environment for the operation of the operating system and the computer program in the non-volatile storage medium. The network interface and the communication interface of the computer device can be used to connect and communicate with external devices through a network. When the computer program is executed by the processor, the various steps of the method of the present invention are executed.
[0070] The present invention may be implemented as a computer-readable storage medium having a computer program stored thereon, which causes the steps of the method of the present invention to be performed when executed by a processor. In one embodiment, the computer program is distributed on a plurality of computer devices or processors coupled to a network so that the computer program is stored, accessed and executed in a distributed manner by one or more computer devices or processors. A single method step / operation, or two or more method steps / operations, may be performed by a single computer device or processor or by two or more computer devices or processors. One or more method steps / operations may be performed by one or more computer devices or processors, and one or more other method steps / operations may be performed by one or more other computer devices or processors. One or more computer devices or processors may perform a single method step / operation, or perform two or more method steps / operations.
[0071] It will be appreciated by those skilled in the art that all or part of the operations of the method of the present invention may be performed by instructing related hardware such as a computer device or a processor through a computer program, which may be stored in a non-temporary computer-readable storage medium, and the computer program may be executed to cause the operations of the method of the present invention to be performed. Depending on the circumstances, any reference to memory, storage, database or other media herein may include non-volatile and / or volatile memory. Examples of non-volatile memory include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), flash memory, magnetic tape, floppy disk, magneto-optical data storage device, optical data storage device, hard disk, solid state disk, etc. Examples of volatile memory include random access memory (RAM), external cache memory, etc. The various technical features described above may be combined arbitrarily.
[0072] The various technical features described above can be combined arbitrarily. Although all possible combinations of these technical features are not described, any combination of these technical features should be considered to be covered by this specification as long as there is no contradiction in such combination.
[0073] Although the present invention has been described in conjunction with the embodiments, it should be understood by those skilled in the art that the above description and the accompanying drawings are only exemplary and non-restrictive, and the present invention is not limited to the disclosed embodiments. Various modifications and variations are possible without departing from the spirit of the present invention.
Claims
1. A system for hardware-in-the-loop automated test management, characterized in that: The system at least includes: a cloud testing platform, an application container engine, a robot control system and a hardware-in-the-loop simulation platform, wherein: The cloud test platform includes a test confirmation module, a test distribution module, a schedule module and a client interaction module. The client interaction module communicates with the hardware-in-the-loop simulation platform through the client to receive basic information of the hardware fed back by the hardware-in-the-loop simulation platform. The test distribution module is configured to realize intelligent distribution of hardware-in-the-loop test tasks according to at least the test task information provided by the test confirmation module, the schedule information provided by the schedule module and the basic information of the hardware fed back by the hardware-in-the-loop simulation platform. The application container engine is configured to receive the test tasks distributed by the test distribution module in the cloud test platform, and forward the corresponding test tasks to the robot control system; The robot control system includes robot control software and a corresponding robot, wherein the robot is configured to start, shut down or replace hardware of the hardware-in-the-loop simulation platform under the control of the robot control software; The hardware-in-the-loop simulation platform is connected to the robot control system and is configured to run simulation software to perform corresponding test tasks.
2. The system according to claim 1, wherein the system also includes an automated testing system, which receives the distributed test tasks and related information forwarded from the application container engine, sends instructions to the hardware-in-the-loop simulation platform to enable it to execute corresponding test tasks, and automatically generates a test report.
3. The system according to claim 2, wherein the system further comprises a test management tool, the test management tool communicates with the cloud testing platform and the automated testing system, the test management tool being configured to plan and store relevant information of the test tasks and record test completion information.
4. The system of claim 3, wherein: The test confirmation module communicates with the test management tool and is configured to send relevant information of the test task to relevant testers according to the test task planned in the test management tool, store the relevant information in the cloud test platform, and enable the relevant testers to upload the required software and confirm the test information.
5. The system according to claim 1 or 2, wherein: The schedule module is configured to store and display manually created tasks received in the hardware-in-the-loop simulation platform and confirmed automated tasks provided by the test confirmation module, and provide schedule information of the hardware-in-the-loop simulation platform.
6. The system according to claim 1 or 2, wherein: The test distribution module is configured to: Extracting schedule information of the hardware-in-the-loop simulation platform from the schedule module; Extract relevant information of the test task from the test confirmation module; When the test task expires, basic information of the hardware of the hardware-in-the-loop simulation platform is obtained from the client interaction module; Compare the extracted relevant information of the test task with the acquired basic information of the hardware of the hardware-in-the-loop simulation platform to determine whether the hardware of the hardware-in-the-loop simulation platform meets the requirements of the test task to be tested; If the requirements are not met, triggering the robot control system to replace the hardware of the hardware-in-the-loop simulation platform; When the hardware of the hardware-in-the-loop simulation platform meets the requirements of the test task to be tested, the execution time of the test task to be tested is determined based on the task stored in the schedule module, and the test task to be tested is triggered via the application container engine when the execution time of the test task to be tested expires.
7. The system according to claim 1 or 2, wherein the application container engine comprises a message forwarding middleware and an open source testing tool; The message forwarding middleware is configured to receive relevant information of the test task and forward it to the test confirmation module, as well as receive tasks of replacing the hardware of the hardware-in-the-loop simulation platform and tasks of starting or shutting down the hardware-in-the-loop simulation platform, and forward it to the robot control system, wherein the relevant information of the test task includes test information from the test management tool and software information provided by the tester; The open source testing tool interacts with the testing management tool, the automated testing system and the robot control system to trigger testing tasks, trigger tasks to replace the hardware of the hardware-in-the-loop simulation platform and trigger tasks to start or shut down the hardware-in-the-loop simulation platform.
8. A method for hardware-in-the-loop automated test management, characterized in that: The method is completed by at least the interaction of a cloud test platform, an application container engine, a robot control system and a hardware-in-the-loop simulation platform. The cloud test platform includes a test confirmation module, a test distribution module, a schedule module and a client interaction module. The method includes: The test confirmation module receives the planned test task, sends relevant information of the test task to relevant testers, stores the relevant information in the cloud test platform, and receives software information provided by the testers; The client interaction module communicates with the hardware-in-the-loop simulation platform through the client to receive basic information of the hardware fed back by the hardware-in-the-loop simulation platform; The test distribution module realizes intelligent distribution of hardware-in-the-loop test tasks based at least on the schedule information of the hardware-in-the-loop simulation platform extracted from the schedule module, the relevant information of the test task extracted from the test confirmation module, and the basic information of the hardware of the hardware-in-the-loop simulation platform obtained from the client interaction module; Using the application container engine to receive the test tasks distributed by the test distribution module, and forwarding the corresponding test tasks to the robot control system, wherein the robot control system includes robot control software and a corresponding robot; The robot starts, shuts down or replaces hardware of the hardware-in-the-loop simulation platform under the control of the robot control software; and The hardware-in-the-loop simulation platform receives the distributed test tasks from the robot control system and runs simulation software to execute the corresponding test tasks.
9. The method according to claim 8, wherein: The method further includes: the automated testing system receives the distributed test tasks and related information forwarded from the application container engine, sends instructions to the hardware-in-the-loop simulation platform to execute the corresponding test tasks, and automatically generates a test report.
10. The method according to claim 9, wherein: The method further includes: using a test management tool to communicate with the cloud test platform and the automated test system, wherein the test management tool plans and stores relevant information of the test tasks and records test completion information.
11. The method according to claim 8 or 9, wherein: The schedule module is configured to store and display manually created tasks received in the hardware-in-the-loop simulation platform and confirmed automated tasks provided by the test confirmation module, and provide schedule information of the hardware-in-the-loop simulation platform.
12. The method according to claim 8 or 9, further comprising: The test distribution module performs the following operations: Extracting schedule information of the hardware-in-the-loop simulation platform from the schedule module; Extract relevant information of the test task from the test confirmation module; When the test task expires, basic information of the hardware of the hardware-in-the-loop simulation platform is obtained from the client interaction module; Compare the extracted relevant information of the test task with the acquired basic information of the hardware of the hardware-in-the-loop simulation platform to determine whether the hardware of the hardware-in-the-loop simulation platform meets the requirements of the test task to be tested; If the requirements are not met, triggering the robot control system to replace the hardware of the hardware-in-the-loop simulation platform; When the hardware of the hardware-in-the-loop simulation platform meets the requirements of the test task to be tested, the execution time of the test task to be tested is determined based on the task stored in the schedule module, and the test task to be tested is triggered via the application container engine when the execution time of the test task to be tested expires.
13. The method according to claim 8 or 9, wherein: The application container engine includes a message forwarding middleware and an open source testing tool; the method further includes: The message forwarding middleware receives relevant information of the test task and forwards it to the test confirmation module, and receives a task of replacing the hardware of the hardware-in-the-loop simulation platform and a task of starting or shutting down the hardware-in-the-loop simulation platform, and forwards it to the robot control system, wherein the relevant information of the test task includes test information from the test management tool and software information provided by the tester; and The open source testing tool interacts with the testing management tool, the automated testing system and the robot control system to trigger testing tasks, trigger tasks to replace the hardware of the hardware-in-the-loop simulation platform and trigger tasks to start or shut down the hardware-in-the-loop simulation platform.
14. A computer-readable storage medium having a computer program stored thereon, characterized in that: The computer program implements the method according to any one of claims 8 to 13 when executed by a processor.
15. A computer device comprising a memory and a processor, wherein the memory stores a computer program, wherein: When the processor executes the computer program, the steps of the method according to any one of claims 8 to 13 are implemented.
Citation Information
Patent Citations
Vehicle-mounted information system test bench and test method
CN105227939A
DSPACE-based motor control hardware-in-the-loop automated test system and method
CN107831757A
Remote hardware-in-the-loop HIL automation test method and system
CN109150653A
Test scheduling system and method
CN113495548A
Task distribution device based on distributed test system and cooperative control method thereof
CN114281672A
Cited By
Embedded software automatic testing system and method based on hardware-in-the-loop
CN121349864A