Function test method and device, storage medium and electronic equipment
By receiving functional test requests from the cloud on the vehicle side, automatically running the target test environment and injecting fault data, the problem of low functional test efficiency of the autonomous driving system is solved, automated testing is realized, labor costs are reduced, and testing coverage and system reliance is improved. Great.
Patent Information
- Application Number
- CN202411328808.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-23
- Publication Date
- 2025-01-07
- Estimated Expiration
- 2044-09-23
AI Technical Summary
Functional testing of autonomous driving systems mainly relies on manual testing, resulting in inefficient testing and increased labor costs.
By receiving functional test requests sent by the cloud on the vehicle side, running the target test environment according to the configuration file and injecting fault data, actively testing the automatic driving function, and finally sending test results to the cloud to realize automated functional tests.
It reduces labor costs, improves the testing efficiency of autonomous driving functions, and can more comprehensively verify the status and communication link of autonomous driving functions, improving the robustness and user experience of the system.
Smart Images

Figure CN119269120A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of vehicle testing technology, and in particular to a functional testing method, device, storage medium and electronic equipment. Background Art
[0002] Functional testing of autonomous driving systems is a critical task in the vehicle production process, which aims to verify whether the autonomous driving system can operate as expected and ensure the integrity and accuracy of each autonomous driving function.
[0003] At present, the functional testing method of the autonomous driving system in related technologies mainly adopts a large amount of manual testing, which has low testing efficiency and increases labor costs. Summary of the invention
[0004] In view of this, the present application provides a functional testing method, device, storage medium and electronic device, the main purpose of which is to improve the technical problem that the current functional testing method of the autonomous driving system mainly uses a large amount of manual testing, the testing efficiency is low, and the labor cost is increased.
[0005] In a first aspect, the present application provides a functional testing method, which is applied to a vehicle side, comprising:
[0006] receiving a function test request sent by the cloud, where the function test request includes fault injection data corresponding to the autonomous driving function and a configuration file of a target test environment;
[0007] Run the target test environment according to the configuration file, and inject the fault injection data into the target test environment;
[0008] Calling the target test environment after injecting the fault injection data to test the autonomous driving function;
[0009] Sending the function test result of the autonomous driving function to the cloud.
[0010] Optionally, injecting the fault injection data into the target test environment includes:
[0011] Determining a fault injection tool corresponding to the fault injection data according to a fault injection type of the fault injection data;
[0012] The fault injection tool is called to inject the fault injection data into the target test environment.
[0013] Optionally, the fault injection type includes at least one of the following:
[0014] Fault point injection type;
[0015] System injection type.
[0016] Optionally, if the fault injection type is the fault point injection type, calling the fault injection tool to inject the fault injection data into the target test environment includes:
[0017] Calling a preset debugging tool to debug the process corresponding to the autonomous driving function in the target test environment;
[0018] The fault injection data is injected at a fault injection point of the process.
[0019] Optionally, if the fault injection type is the system injection type, calling the fault injection tool to inject the fault injection data into the target test environment further includes:
[0020] A memory consumption tool is called to inject the fault injection data into a test system corresponding to the target test environment, wherein the memory consumption tool is used to consume the memory of the test system so that the consumed memory reaches a preset memory value.
[0021] Optionally, calling the target test environment after injecting the fault injection data to test the autonomous driving function includes at least one of the following:
[0022] Testing the functional status of the autonomous driving function;
[0023] During the test of the autonomous driving function, the functional status of other functions other than the autonomous driving function in the test target test environment;
[0024] Test whether the communication link between the target test environment and the cloud is normal.
[0025] In a second aspect, the present application provides a functional testing method, which is applied in the cloud, including:
[0026] Sending a function test request to a vehicle, the function test request including fault injection data corresponding to the autonomous driving function and a configuration file of a target test environment, the vehicle being configured to run the target test environment according to the configuration file, and calling the target test environment after injecting the fault injection data, to test the autonomous driving function;
[0027] Receive a functional test result of the autonomous driving function sent by the vehicle.
[0028] Optionally, the method further includes:
[0029] Obtaining fault configuration data corresponding to the autonomous driving function and the target test environment;
[0030] The fault injection data is generated according to the fault configuration data and the target test environment.
[0031] Optionally, the method further includes:
[0032] An environment management module is called to obtain a configuration file corresponding to the target test environment, wherein the environment management module is used to manage different test environments.
[0033] In a third aspect, the present application provides a functional testing device, which is applied to a vehicle, and includes:
[0034] A receiving module is configured to receive a function test request sent by the cloud, wherein the function test request includes fault injection data corresponding to the autonomous driving function and a configuration file of a target test environment;
[0035] an injection module, configured to run the target test environment according to the configuration file and inject the fault injection data into the target test environment;
[0036] A test module is configured to call a target test environment after injecting the fault injection data to test the autonomous driving function;
[0037] The sending module is configured to send the function test result of the autonomous driving function to the cloud.
[0038] In a fourth aspect, the present application provides a functional testing device, which is applied in the cloud, including:
[0039] a sending module configured to send a function test request to a vehicle, wherein the function test request includes fault injection data corresponding to the autonomous driving function and a configuration file of a target test environment, wherein the vehicle is configured to run the target test environment according to the configuration file and call the target test environment after injecting the fault injection data to test the autonomous driving function;
[0040] The receiving module is configured to receive the functional test result of the automatic driving function sent by the vehicle.
[0041] In a fifth aspect, the present application provides a computer-readable storage medium having a computer program stored thereon, and when the computer program is executed by a processor, the functional testing method described in the first aspect is implemented.
[0042] In a sixth aspect, the present application provides an electronic device, comprising a storage medium, a processor, and a computer program stored on the storage medium and executable on the processor, wherein the processor implements the functional testing method described in the first aspect when executing the computer program.
[0043] In the seventh aspect, the present application provides a chip comprising one or more interface circuits and one or more processors; the interface circuit is used to receive a signal from a memory of an electronic device and send the signal to the processor, wherein the signal includes computer instructions stored in the memory; when the processor executes the computer instructions, the electronic device executes the functional testing method described in the first aspect.
[0044] In an eighth aspect, the present application provides a vehicle, comprising the device as described in the third aspect, or the electronic device as described in the sixth aspect, or the chip as described in the seventh aspect.
[0045] By means of the above technical scheme, the present application provides a functional testing method, device, storage medium and electronic device. The vehicle side first receives a functional testing request sent by the cloud, wherein the functional testing request includes the fault injection data corresponding to the autonomous driving function and the configuration file of the target test environment; then the target test environment is run according to the configuration file, and the fault injection data is injected into the target test environment; then the target test environment after the fault injection data is injected is called to test the autonomous driving function; finally, the functional testing result of the autonomous driving function is sent to the cloud. In the present application, the vehicle side can receive a functional testing request sent by the cloud, automatically run the target test environment according to the configuration file, actively inject fault injection data into the target test environment of the vehicle side, and then call the target test environment after the fault injection data is injected to test the autonomous driving function. By actively injecting the fault injection data into the target test environment, the automatic testing of the autonomous driving function is realized, the labor cost is reduced, and the testing efficiency of the autonomous driving function is improved.
[0046] The above description is only an overview of the technical solution of the present application. In order to more clearly understand the technical means of the present application, it can be implemented in accordance with the contents of the specification. In order to make the above and other purposes, features and advantages of the present application more obvious and easy to understand, the specific implementation methods of the present application are listed below. BRIEF DESCRIPTION OF THE DRAWINGS
[0047] Figure 1 A schematic diagram of a functional testing method provided in an embodiment of the present application is shown;
[0048] Figure 2 A schematic diagram of an example process provided by an embodiment of the present application is shown;
[0049] Figure 3 A schematic diagram of a functional testing method provided in an embodiment of the present application is shown;
[0050] Figure 4 A schematic diagram of an example process provided by an embodiment of the present application is shown;
[0051] Figure 5 A schematic diagram of the structure of a functional testing device provided in an embodiment of the present application is shown;
[0052] Figure 6 A structural schematic diagram of a functional testing device provided in an embodiment of the present application is shown. DETAILED DESCRIPTION
[0053] Some embodiments of the present disclosure will be described in detail here, and examples thereof are shown in the accompanying drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. Various changes, modifications and equivalents of the methods, devices and / or systems described herein will become apparent after understanding the present disclosure. For example, the order of operations described herein is merely an example and is not limited to those orders set forth herein, but can be changed as becomes apparent after understanding the present disclosure, except for operations that must be performed in a specific order. In addition, in order to enhance clarity and conciseness, descriptions of features known in the art may be omitted. It should be noted that, in the absence of conflict, the embodiments in the present disclosure and the features in the embodiments may be combined with each other.
[0054] The embodiments of the present application will be described in more detail below with reference to the accompanying drawings. It should be noted that the embodiments and features in the embodiments of the present application can be combined with each other without conflict.
[0055] In order to improve the current function test method of the autonomous driving system, which mainly adopts a large number of manual tests, the test efficiency is low and the labor cost is increased. This embodiment provides a function test method that can be applied to the vehicle side such as Figure 1 As shown, the method includes:
[0056] Step 101: The vehicle receives a function test request sent by the cloud, where the function test request includes fault injection data corresponding to the autonomous driving function and a configuration file of the target test environment.
[0057] In this embodiment, fault injection data can be configured through the cloud, the target test environment can be selected, and then a request can be sent to the vehicle side through a functional test request to instruct the vehicle side to test the autonomous driving function, thereby realizing intelligent testing and improving the testing efficiency of the autonomous driving function.
[0058] Among them, the fault injection data can be data injected into the autonomous driving function (or autonomous driving system) that may cause the autonomous driving function to fail, which is used to test the functional status of the autonomous driving function, discover potential fault problems in advance, and facilitate function optimization.
[0059] Correspondingly, the target test environment can be an environment for testing autonomous driving functions, such as: local environment, user development machine environment, continuous integration development environment, vehicle-side simulation environment, bench simulation environment, real vehicle test environment, etc. After the vehicle-side receives the functional test request, it can start the target test environment to test the functional status of the autonomous driving function in the target test environment. By selecting the target test environment, functional testing of various stages of vehicle development can be achieved, thereby improving test coverage, increasing the comprehensiveness of the test, and facilitating testing of more potential problems.
[0060] Step 102: The vehicle side runs the target test environment according to the configuration file and injects fault injection data into the target test environment.
[0061] In this embodiment, the vehicle side can use a preset agent tool (such as a specific agent, a network agent, etc.) to uniformly manage various environments, receive a configuration file, and run the corresponding target test environment according to the configuration file, and then inject the fault injection data into the target test environment. Exemplarily, after receiving the functional test request, the application programming interface (Application Programming Interface, API) of the vehicle side starts the program corresponding to the target test environment and performs fault injection.
[0062] For example, based on the preset proxy tool, the user development machine environment can run directly locally; the autonomous driving simulation environment can automatically generate the simulation environment required for the tested autonomous driving function, and automatically close after the fault injection is completed; the test bench management in the test bench simulation environment will manage all test benches and assign fault injection tasks as needed; the real vehicle management in the real vehicle test environment will manage all current test vehicles, which are used to inject faults in known or unknown situations.
[0063] Step 103: The vehicle side calls the target test environment after injecting the fault injection data to test the autonomous driving function.
[0064] In this embodiment, the target test environment after injecting fault injection data can be used to test the functional status of each autonomous driving function after injecting the fault injection data, verify whether the autonomous driving function can operate normally in the event of a fault, and verify whether the autonomous driving system can operate safely in the event of a fault.
[0065] Step 104: The vehicle sends the functional test results of the autonomous driving function to the cloud.
[0066] During the test, the monitoring and reporting system can be used to monitor the data and status of each autonomous driving function. After the test is completed, the functional test results are generated and sent to the cloud. The system monitoring information, log records and other information can also be sent to the cloud to view the impact of the fault, so as to optimize the autonomous driving function or system, reduce the fault problems of the actual vehicle, and improve the user experience. Among them, the functional test results may include but are not limited to the functional status, reaction speed, response time, recovery time, stability, safety, etc. of the autonomous driving function.
[0067] Compared with the prior art, in this embodiment, the vehicle side can receive functional test requests sent by the cloud, automatically run the target test environment according to the configuration file, actively inject fault injection data into the target test environment, and then call the target test environment after the fault injection data is injected to test the autonomous driving function. By actively injecting fault injection data into the target test environment, automatic testing of the autonomous driving function is realized, the testing efficiency of the autonomous driving function is improved, and labor costs are reduced.
[0068] Optionally, injecting the fault injection data into the target test environment may specifically include: determining a fault injection tool corresponding to the fault injection data according to a fault injection type of the fault injection data; and calling the fault injection tool to inject the fault injection data into the target test environment.
[0069] Among them, fault injection tools may include but are not limited to preset debugging tools (such as GDB debugging tools), memory consumption tools, etc.; fault injection types may include but are not limited to fault point injection types; system injection types.
[0070] In this embodiment, the fault injection type of the fault injection data can be determined according to the target test scenario, and then the corresponding fault injection tool can be matched according to the fault injection type to implement fault injection to simulate the scenario where the fault occurs. Figure 2 As shown, the fault injection system may include a cloud management system (such as an autonomous driving memory overflow fault injection system) and execution systems for various environments. The cloud management system may include modules such as environment management, fault configuration, fault drill history, fault distribution, and fault execution. The local R&D environment and the continuous integration development environment may adopt the fault point injection type (code fault point injection). The simulation test environment, the bench test environment, and the actual vehicle test environment may adopt the fault point injection or the system injection type (system injection).
[0071] Among them, the environment management module can be used to manage the configuration of multiple different environments; the fault configuration module can be used to set the parameters of each fault point or system injection; the fault drill history module can be used to view the historical execution records of faults; the fault distribution module can be used to distribute the fault injection environment, including the executable files and dependent files of the fault injection, etc.; the fault execution module can be used to execute the corresponding fault in a specific environment.
[0072] Optionally, if the fault injection type is a fault point injection type, a preset debugging tool can be called to debug the process corresponding to the autonomous driving function in the target test environment; and fault injection data is injected at the fault injection point of the process.
[0073] For example, when performing fault point injection in the local environment or continuous integration environment of the vehicle, the fault point injection can configure specific lines of code, call the preset debugging tool, and implant the information that you want to change that may cause faults or exceptions in the specific lines of code in the autonomous driving program started in the local or continuous integration environment. If it causes a memory overflow, it can be used as a potential risk point to remind R&D personnel to avoid possible risks by increasing robustness in the code or triggering system degradation based on error information and system conditions after the fault injection is completed. Specifically, for fault point injection, the bottom layer can enter the existing autonomous driving program process based on the GDB debugging tool, add breakpoints at the fault injection point, and inject faults.
[0074] Optionally, if the fault injection type is a system injection type, a memory consumption tool may be called to inject the fault injection data into a test system corresponding to the target test environment, wherein the memory consumption tool is used to consume the memory of the test system so that the consumed memory reaches a preset memory value.
[0075] For example, when performing system injection in the vehicle-side simulation test environment, bench test environment, and real vehicle test environment, the memory consumption tool can be called to inject fault injection data into the test system corresponding to the target test environment, which can be used to simulate memory leaks in other systems. When there are problems with the underlying system or other programs and the memory usage gradually increases, the automatic driving system can be tested to see whether it runs normally, whether the core code can be guaranteed to run, and even whether it can be automatically started after the system is triggered to kill the process. Specifically, for system injection, the underlying layer can continuously consume memory in the automatic driving system to reach the preset memory value based on the memory consumption tool, thereby achieving the purpose of fault injection.
[0076] In this way, potential memory problems can be discovered in the early stages of research and development, thereby reducing the impact of memory problems on user experience during actual vehicle use.
[0077] Optionally, calling the target test environment after injecting fault injection data to test the autonomous driving function may include at least one of the following: testing the functional status of the autonomous driving function; during the testing of the autonomous driving function, testing the functional status of other functions in the target test environment except the autonomous driving function; and testing whether the communication link between the target test environment and the cloud is normal.
[0078] During the test process, it is possible to test whether the various autonomous driving functions on the vehicle are normal. In some cases, memory overflow in the process of a single autonomous driving function should not affect other autonomous driving functions. It is also possible to test whether the communication link of the current autonomous driving system (such as the monitoring information reporting link and the fault reporting link) is normal. The fault reporting link can be used to upload the functional status of the autonomous driving system to the cloud when a fault occurs, so as to promptly inform R&D personnel of the fault information, facilitate troubleshooting of the fault, and improve the user's car experience and safety.
[0079] In this way, the vehicle side can determine the corresponding fault injection tool according to the fault injection type, and use the fault injection tool to actively inject the fault injection data into the target test environment to test the functional status of the autonomous driving function and the communication link with the cloud, thereby improving the test coverage in the early stage of research and development, and thus improving the code quality level and system robustness in the development process of the autonomous driving system, reducing the fault problems of the actual vehicle, and improving the user experience.
[0080] Based on the technical implementation content shown in the above embodiment, in order to further illustrate the specific implementation process of the method of this embodiment, this embodiment provides the following Figure 3 The specific method shown can be applied to the cloud, and the method includes:
[0081] Step 201: The cloud sends a functional test request to the vehicle. The functional test request includes the fault injection data corresponding to the autonomous driving function and the configuration file of the target test environment. The vehicle is used to run the target test environment according to the configuration file, and call the target test environment after injecting the fault injection data to test the autonomous driving function.
[0082] In this embodiment, the cloud can deploy a fault injection background service and send a functional test request to the vehicle, so that the vehicle injects fault data into the code corresponding to the autonomous driving function, and tests the functional status of the autonomous driving function when the fault data is injected. In this way, the impact of the fault on the autonomous driving function, the autonomous driving system, and other vehicle-side systems (software, modules) can be detected in the early testing of the autonomous driving system, which facilitates the verification of the stability of the autonomous driving system, improves testing efficiency, and reduces labor costs.
[0083] Step 202: The cloud receives the function test results of the autonomous driving function sent by the vehicle.
[0084] After the vehicle-side test is completed, the cloud can receive the functional test results sent by the vehicle, such as fault result reports, and display them, so that R&D personnel can optimize the autonomous driving function and formulate corresponding optimization strategies based on the test results.
[0085] In some examples, the method of this embodiment also includes: obtaining fault configuration data and target test environment corresponding to the autonomous driving function in the cloud; and generating fault injection data based on the fault configuration data and the target test environment.
[0086] Specifically, the cloud can provide a fault configuration function, and R&D personnel can determine the fault configuration data and target test environment based on potential faults. The cloud can automatically generate fault injection data based on the fault configuration data and the target test environment. Exemplarily, R&D personnel can configure fault types in the cloud fault configuration, such as memory overflow, memory leak, monitoring system failure, communication link failure, and autonomous driving code fault injection point, set the fault type and fault parameters, which may include the number of lines of code to be injected, modification conditions, etc., and then select the target test environment to inject the fault. The operation of injecting faults will be divided into fault point injection and system injection. Different fault injection data (execution parameters) will also be generated according to the fault configuration, and then the tools in different target test environments will be called for execution. Correspondingly, R&D personnel can also directly configure the fault injection data and select the target test environment.
[0087] In some examples, the method of this embodiment further includes: calling an environment management module in the cloud to obtain a configuration file corresponding to the target test environment, wherein the environment management module is used to manage different test environments.
[0088] Specifically, using the environment management module to manage the configuration of multiple different environments helps to quickly run the target test environment during testing and improve test efficiency.
[0089] For example, a fault can be injected into the autonomous driving system code based on the GDB debugging tool, and together with the memory application program and the fault injection background service, an autonomous driving memory overflow fault injection system is formed. Figure 4 As shown, an autonomous driving memory overflow fault injection system can be used to test various autonomous driving functions when memory overflow occurs. The autonomous driving memory overflow fault injection system may include an autonomous driving fault injection cloud system deployed in the cloud, various test environments deployed on the vehicle side, and an autonomous driving R&D system.
[0090] Among them, the vehicle side can be used to verify autonomous driving functions, such as: Automatic Parking Assist (APA), Home-Zone Parking Pilot (HPP), High-Speed Navigation on Autopilot (HNOA), City Navigation on Autopilot (CNOA), Automatic Emergency Braking (AEB), Adaptive Cruise Control (ACC), etc., and verify the monitoring and reporting system. The monitoring and reporting system can be used to generate log records, generate vehicle-side fault information, upload vehicle-side operation information, automatically generate JIRA, etc.
[0091] Accordingly, the autonomous driving R&D system can be used to optimize and iterate autonomous driving functions, such as: fault point code optimization, function degradation, user takeover reminders, and rapid recovery of self-driving functions. Specifically, R&D personnel can optimize the functions of autonomous driving based on the fault result report, including optimizing the code fault injection point, strictly controlling the occurrence of fault problems such as memory overflow; controlling the degradation of non-core functions; adding bottom-up measures to prevent core functions from being affected when memory overflows; using function degradation to prevent core functions from being affected; and optimizing rapid restart to avoid actual impact on users. In addition, the vehicle-side monitoring and reporting system can be continuously optimized through fault result reports to prevent users from being unable to report fault problems that occur during the use of the vehicle.
[0092] Through the method of this embodiment, the cloud can send a functional test request to the vehicle side, so that the vehicle side automatically runs the target test environment according to the configuration file, actively injects fault injection data into the target test environment, and then calls the target test environment after the fault injection data is injected to test the autonomous driving function. By actively injecting fault injection data into the target test environment, automatic testing of the autonomous driving function is achieved, the testing efficiency of the autonomous driving function is improved, and labor costs are reduced.
[0093] Further, as Figure 1 The specific implementation of the method shown in this embodiment provides a functional testing device, which is applied to the vehicle side, such as Figure 5 As shown, the device includes: a receiving module 31, an injection module 32, a testing module 33, and a sending module 34.
[0094] A receiving module 31 is configured to receive a function test request sent by the cloud, where the function test request includes fault injection data corresponding to the autonomous driving function and a configuration file of a target test environment;
[0095] An injection module 32, configured to run a target test environment according to a configuration file and inject fault injection data into the target test environment;
[0096] The test module 33 is configured to call the target test environment after the fault injection data is injected to test the autonomous driving function;
[0097] The sending module 34 is configured to send the function test result of the autonomous driving function to the cloud.
[0098] In some examples of this embodiment, the injection module 32 is specifically configured to determine a fault injection tool corresponding to the fault injection data according to the fault injection type of the fault injection data; and call the fault injection tool to inject the fault injection data into the target test environment.
[0099] In some examples of this embodiment, the injection module 32 is specifically configured so that the fault injection type includes at least one of the following: a fault point injection type; a system injection type.
[0100] In some examples of this embodiment, the injection module 32 is specifically configured to call a preset debugging tool to debug the process corresponding to the autonomous driving function in the target test environment if the fault injection type is a fault point injection type; and inject fault injection data at the fault injection point of the process.
[0101] In some examples of this embodiment, the injection module 32 is specifically configured to call a memory consumption tool to inject the fault injection data into the test system corresponding to the target test environment if the fault injection type is a system injection type, wherein the memory consumption tool is used to consume the memory of the test system so that the consumed memory reaches a preset memory value.
[0102] In some examples of this embodiment, the test module 33 is specifically configured to call the target test environment after injecting fault injection data to test the autonomous driving function, including at least one of the following: testing the functional status of the autonomous driving function; during the testing of the autonomous driving function, testing the functional status of other functions in the target test environment except the autonomous driving function; and testing whether the communication link between the target test environment and the cloud is normal.
[0103] It should be noted that for other corresponding descriptions of the functional units involved in the functional testing device provided in this embodiment, reference can be made to Figure 1 and Figure 5 The corresponding description in will not be repeated here.
[0104] Further, as Figure 3 The specific implementation of the method shown in this embodiment provides a functional testing device, which is applied to the cloud, such as Figure 6 As shown, the device includes: a sending module 41 and a receiving module 42.
[0105] The sending module 41 is configured to send a function test request to the vehicle, where the function test request includes fault injection data corresponding to the autonomous driving function and a configuration file of a target test environment, and the vehicle is used to run the target test environment according to the configuration file, and call the target test environment after injecting the fault injection data to test the autonomous driving function;
[0106] The receiving module 42 is configured to receive the function test result of the automatic driving function sent by the vehicle.
[0107] In some examples of this embodiment, the sending module 41 is further specifically configured to obtain fault configuration data and a target test environment corresponding to the autonomous driving function; and generate fault injection data according to the fault configuration data and the target test environment.
[0108] In some examples of this embodiment, the sending module 41 is further configured to call the environment management module to obtain a configuration file corresponding to the target test environment, wherein the environment management module is used to manage different test environments.
[0109] It should be noted that for other corresponding descriptions of the functional units involved in the functional testing device provided in this embodiment, reference can be made to Figure 3 and Figure 6 The corresponding description in will not be repeated here.
[0110] Based on the above Figure 1 and Figure 3 The method shown in the embodiment also provides a computer-readable storage medium on which a computer program is stored. When the computer program is executed by a processor, the above-mentioned Figure 1 and Figure 3 The method shown.
[0111] Based on this understanding, the technical solution of the present application can be embodied in the form of a software product, which can be stored in a non-volatile storage medium (which can be a CD-ROM, USB flash drive, mobile hard disk, etc.), including a number of instructions for enabling a computer device (which can be a personal computer, server, or network device, etc.) to execute the methods of various implementation scenarios of the present application.
[0112] Based on the above Figure 1 and Figure 3 The method shown, and Figure 5 and Figure 6In order to achieve the above-mentioned purpose, the embodiment of the present application also provides an electronic device, such as a smart phone, a smart watch, a smart bracelet, a tablet computer, a drone, a smart robot and other smart terminals, which includes a storage medium and a processor; the storage medium is used to store a computer program; the processor is used to execute the computer program to achieve the above-mentioned Figure 1 and Figure 3 The method shown.
[0113] Optionally, the above-mentioned physical device may also include a user interface, a network interface, a camera, a radio frequency (RF) circuit, a sensor, an audio circuit, a WI-FI module, etc. The user interface may include a display, an input unit such as a keyboard, etc., and the optional user interface may also include a USB interface, a card reader interface, etc. The network interface may optionally include a standard wired interface, a wireless interface (such as a WI-FI interface), etc.
[0114] Those skilled in the art will appreciate that the above-mentioned physical device structure provided in this embodiment does not constitute a limitation on the physical device, and may include more or fewer components, or a combination of certain components, or different arrangements of components.
[0115] The storage medium may also include an operating system and a network communication module. The operating system is a program that manages the hardware and software resources of the above-mentioned physical device, and supports the operation of the information processing program and other software and / or programs. The network communication module is used to realize the communication between the components inside the storage medium, and the communication with other hardware and software in the information processing physical device.
[0116] Based on the above Figure 1 and Figure 3 The method shown, and Figure 5 and Figure 6 The virtual device embodiment shown in the embodiment further provides a chip, including one or more interface circuits and one or more processors; the interface circuit is used to receive a signal from a memory of an electronic device and send the signal to the processor, the signal including a computer instruction stored in the memory; when the processor executes the computer instruction, the electronic device executes the above-mentioned Figure 1 and Figure 3 The method shown.
[0117] Through the description of the above implementation methods, those skilled in the art can clearly understand that the present application can be implemented by means of software plus necessary general hardware platforms, or by hardware. By applying the solution of this embodiment, compared with the current prior art, the vehicle side of this embodiment can determine the corresponding fault injection tool according to the fault injection type, and use the fault injection tool to actively inject the fault injection data into the target test environment, test the functional status of the autonomous driving function, and the communication link with the cloud, improve the test coverage in the early stage of research and development, and then improve the code quality level and system robustness in the process of autonomous driving system development, reduce the fault problems of the actual vehicle, and improve the user experience.
[0118] It should be noted that, in this article, relational terms such as "first" and "second" are only used to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any such actual relationship or order between these entities or operations. Moreover, the terms "include", "comprise" or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements includes not only those elements, but also other elements not explicitly listed, or also includes elements inherent to such process, method, article or device. In the absence of further restrictions, the elements defined by the sentence "comprise a ..." do not exclude the existence of other identical elements in the process, method, article or device including the elements.
[0119] The above is only a specific implementation of the present application, so that those skilled in the art can understand or implement the present application. Various modifications to these embodiments will be apparent to those skilled in the art, and the general principles defined herein can be implemented in other embodiments without departing from the spirit or scope of the present application. Therefore, the present application will not be limited to the embodiments described herein, but will conform to the widest scope consistent with the principles and novel features applied for herein.
Claims
1. A functional testing method, characterized in that: include: receiving a function test request sent by the cloud, where the function test request includes fault injection data corresponding to the autonomous driving function and a configuration file of a target test environment; Run the target test environment according to the configuration file, and inject the fault injection data into the target test environment; Calling the target test environment after injecting the fault injection data to test the autonomous driving function; Sending the function test result of the autonomous driving function to the cloud.
2. The method according to claim 1, characterized in that: The injecting the fault injection data into the target test environment comprises: Determining a fault injection tool corresponding to the fault injection data according to a fault injection type of the fault injection data; The fault injection tool is called to inject the fault injection data into the target test environment.
3. The method according to claim 2, characterized in that The fault injection type includes at least one of the following: Fault point injection type; System injection type.
4. The method according to claim 3, characterized in that If the fault injection type is the fault point injection type, calling the fault injection tool to inject the fault injection data into the target test environment includes: Calling a preset debugging tool to debug the process corresponding to the autonomous driving function in the target test environment; The fault injection data is injected at a fault injection point of the process.
5. The method according to claim 3, characterized in that: If the fault injection type is the system injection type, calling the fault injection tool to inject the fault injection data into the target test environment also includes: A memory consumption tool is called to inject the fault injection data into a test system corresponding to the target test environment, wherein the memory consumption tool is used to consume the memory of the test system so that the consumed memory reaches a preset memory value.
6. The method according to any one of claims 1 to 5, characterized in that The calling of the target test environment after injecting the fault injection data to test the autonomous driving function includes at least one of the following: Testing the functional status of the autonomous driving function; During the test of the autonomous driving function, the functional status of other functions other than the autonomous driving function in the test target test environment; Test whether the communication link between the target test environment and the cloud is normal.
7. A functional testing method, characterized in that: include: Sending a function test request to a vehicle, the function test request including fault injection data corresponding to the autonomous driving function and a configuration file of a target test environment, the vehicle being configured to run the target test environment according to the configuration file, and calling the target test environment after injecting the fault injection data, to test the autonomous driving function; Receive a functional test result of the autonomous driving function sent by the vehicle.
8. The method according to claim 7, characterized in that The method further comprises: Obtaining fault configuration data corresponding to the autonomous driving function and the target test environment; The fault injection data is generated according to the fault configuration data and the target test environment.
9. The method according to claim 7, characterized in that: The method further comprises: An environment management module is called to obtain a configuration file corresponding to the target test environment, wherein the environment management module is used to manage different test environments.
10. A functional testing device, characterized in that: include: A receiving module is configured to receive a function test request sent by the cloud, wherein the function test request includes fault injection data corresponding to the autonomous driving function and a configuration file of a target test environment; an injection module, configured to run the target test environment according to the configuration file and inject the fault injection data into the target test environment; A test module is configured to call a target test environment after injecting the fault injection data to test the autonomous driving function; The sending module is configured to send the function test result of the autonomous driving function to the cloud.
11. A functional testing device, characterized in that: include: a sending module configured to send a function test request to a vehicle, wherein the function test request includes fault injection data corresponding to the autonomous driving function and a configuration file of a target test environment, wherein the vehicle is configured to run the target test environment according to the configuration file and call the target test environment after injecting the fault injection data to test the autonomous driving function; The receiving module is configured to receive the functional test result of the automatic driving function sent by the vehicle.
12. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the computer program is executed by a processor, the method according to any one of claims 1 to 9 is implemented.
13. An electronic device comprising a storage medium, a processor, and a computer program stored in the storage medium and executable on the processor, characterized in that: When the processor executes the computer program, the method according to any one of claims 1 to 9 is implemented.
14. A vehicle, characterized in that: include: The device according to claim 10 or 11, or the electronic device according to claim 13.
Citation Information
Patent Citations
Software testing automation framework (STAF)-based fault injection automation testing platform and method for high-end fault-tolerant computer
CN102354298A
Fault injection testing system and testing method applied to embedded equipment
CN103529820A
Fault injection test method, device and system and storage medium
CN111459816A
Automatic driving function test system and test method
CN112684423A
Vehicle test method, device and system, test equipment and storage medium
CN113341935A
Cited By
Integrated fault injection automatic configuration system and method for automatic driving
CN121900376A