Automatic integration and test method, device, equipment, medium and product
By employing automated integration and testing methods, the errors and complexities associated with manual integration of vehicle controller software have been resolved. This ensures the correctness of the integration and the reliability of the process, achieving efficient software integration and rapid fault location, thus meeting the stringent requirements of the automotive electronics field.
Patent Information
- Application Number
- CN202511247367.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-02
- Publication Date
- 2025-12-30
AI Technical Summary
The integration of existing vehicle controller software relies on manual labor, resulting in high labor costs, a high risk of errors, and an inability to promptly confirm the correct version being integrated, making the integration process complex.
By adopting automated integration and testing methods, and through version control and modular replacement mechanisms, we ensure the precise matching of vehicle controller application software and base software. We utilize binary verification of executable file generation and automated packaging processes, combined with encrypted transmission and automated interface testing, to form a closed-loop control system.
Significantly improves integration efficiency, reduces the risk of human intervention, meets the functional safety and process reliability requirements of the automotive electronics field, quickly locates integration faults, and shortens the problem repair cycle.
Smart Images

Figure CN121233461A_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of automotive electronic software integration and testing technology, and in particular to an automated integration and testing method, apparatus, equipment, medium, and product. Background Technology
[0002] Existing vehicle controller software integration typically presents the following problems: Enterprises have numerous ongoing R&D projects, relying on manual integration, which incurs significant manpower costs. Furthermore, the manual processes of replacing files, changing version numbers, copying the generated executable software, maintaining change information, and uploading to software repositories can easily lead to file corruption and incorrect integration outputs. Enterprise projects are divided into many stages and types; some projects are only in the initial stages with fewer integration steps, while others are already in mass production and have more complex integration processes. Manual integration requires individual training to master the integration methods specific to each project. Traditional integration methods cannot promptly and effectively confirm whether the correct application version has been integrated. Summary of the Invention
[0003] This invention provides an automated integration and testing method, apparatus, equipment, medium, and product to solve the problems of existing vehicle controller software integration, which easily leads to errors in the integrated output, is complex to integrate, and cannot promptly and effectively confirm whether the correct application version has been integrated.
[0004] According to one aspect of the present invention, an automated integration and testing method is provided, comprising:
[0005] According to the target version, the application software of each vehicle controller is pulled from the file management repository, and the application software is cached in the compilation environment; the target version includes the target project version and the target application version of each application software.
[0006] Replace the virtual implementation in the base software with the application software to generate a project file; the version of the project file is the target project version.
[0007] Compile the project files. If an executable file is generated, package the compilation output into an integration delivery package according to the project naming convention. If no executable file is generated, enter the troubleshooting and debugging mode and locate the problematic application software through item-by-item integration.
[0008] The encrypted integration delivery package is then pushed to the testing system for automated interface testing.
[0009] According to another aspect of the present invention, an automated integration and testing apparatus is provided, comprising:
[0010] The application software acquisition module is used to retrieve the application software of each vehicle controller from the file management repository according to the target version, and cache the application software in the compilation environment; the target version includes the target project version and the target application version of each application software.
[0011] The project file integration module is used to replace the virtual implementation in the base software with the application software and generate project files; the version of the project files is the version of the target project.
[0012] The delivery package build module is used to compile the project files. If an executable file is generated, the compilation output is packaged into an integrated delivery package according to the project naming convention. If no executable file is generated, the module enters the troubleshooting and debugging mode and locates the problematic application software through item-by-item integration.
[0013] An automated testing module is used to push the encrypted integration delivery package to the testing system for automated interface testing.
[0014] According to another aspect of the present invention, a computer program product is provided, comprising a computer program that, when executed by a processor, implements the automated integration and testing method according to any embodiment of the present invention.
[0015] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising:
[0016] At least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores a computer program executable by the at least one processor, the computer program being executed by the at least one processor to enable the at least one processor to perform the automated integration and testing method according to any embodiment of the present invention.
[0017] According to another aspect of the present invention, a computer-readable storage medium is provided, the computer-readable storage medium storing computer instructions for causing a processor to execute and implement the automated integration and testing method described in any embodiment of the present invention.
[0018] According to another aspect of the present invention, a computer program product is provided, comprising a computer program / instructions, which, when executed by a processor, implement the automated integration and testing method as described in any embodiment of the present invention.
[0019] This invention, through version control and modular replacement mechanisms, ensures precise matching between the application software of each vehicle controller and the underlying software, significantly improving the integration efficiency of vehicle electronic software. Its binary verification and automated packaging process based on executable file generation guarantees the integrity and standardization of the integrated delivery package, while intelligent troubleshooting and debugging modes quickly locate integration faults, greatly shortening the problem-solving cycle. Finally, combined with encrypted transmission and automated interface testing, it forms a closed-loop control system from code integration to quality verification, effectively reducing the risk of human intervention and meeting the stringent requirements of functional safety and process reliability in the automotive electronics field. The integration pipeline can be flexibly combined to suit different projects and adapt to project needs.
[0020] It should be understood that the description in this section is not intended to identify key or essential features of the embodiments of the present invention, nor is it intended to limit the scope of the invention. Other features of the invention will become readily apparent from the following description. Attached Figure Description
[0021] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0022] Figure 1 This is a first flowchart of an automated integration and testing method provided in an embodiment of the present invention;
[0023] Figure 2 This is a second flowchart of an automated integration and testing method provided in an embodiment of the present invention;
[0024] Figure 3 This is a schematic diagram of the structure of an automated integration and testing device provided in an embodiment of the present invention;
[0025] Figure 4 This is a schematic diagram of the structure of an electronic device that implements an embodiment of the present invention. Detailed Implementation
[0026] To enable those skilled in the art to better understand the present invention, the technical solutions of the present invention will be clearly and completely described below with reference to the accompanying drawings of the embodiments of the present invention. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of the present invention.
[0027] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this invention are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of the invention described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0028] Figure 1 This is a first flowchart of an automated integration and testing method provided by an embodiment of the present invention. This embodiment is applicable to identifying the smallest unit in the integration process, flexibly combining integration pipelines for different projects, and adapting to project requirements. This method can be executed by an automated integration and testing device, which can be implemented in hardware and / or software, and can be configured in an electronic device with corresponding data processing capabilities. Figure 1 As shown, the method includes:
[0029] S110. Retrieve the application software of each vehicle controller from the file management repository according to the target version, and cache the application software in the compilation environment.
[0030] The target version includes the target project version and the target application versions of each application software. Specifically, the system designer initiates project requirements, determines the purpose of the integrated software, and the required integration date, etc. The application designer determines the target project based on the project requirements, which includes the target application software for each vehicle controller. The application designer determines the target project version and, based on the application requirements of each vehicle controller, determines the target application version of the target application software for each vehicle controller. Integration personnel initiate the integration operation based on the target version.
[0031] Clear the system compilation cache, pull the application software of each vehicle controller from the file management repository according to the target version, and cache the application software in the compilation environment.
[0032] S120. Replace the virtual implementation in the base software with the application software to generate a project file; the version of the project file is the target project version.
[0033] The virtual implementation in the underlying software is a standardized code framework pre-designed to ensure system compileability and interface compliance. It contains complete function signatures and a minimum functional implementation, maintaining the structural integrity of the underlying software before application-layer integration. The virtual implementation explicitly defines interface parameters, return types, and calling conventions, ensuring that the underlying software can be compiled and verified at each stage of development.
[0034] Replace the virtual implementations in the base software with the application software of each vehicle controller, and generate project files; set the version of the project files to the target project version. Simultaneously, count the number of replaced application software units and the remaining virtual implementations to determine if there are any duplicate application software units.
[0035] S130. Compile the project files. If an executable file is generated, package the compilation output into an integration delivery package according to the project naming convention.
[0036] S140. If no executable file is generated, enter the troubleshooting and debugging mode to locate the problematic application software through item-by-item integration.
[0037] The project files are compiled. If an executable file is generated, the integration is considered successful. The compiled output is packaged into an integration delivery package according to the project naming conventions. Optionally, the compiled output includes an executable file, calibration files, and debug files. The executable file, such as a hex file, is used to flash the controller to the vehicle controller (such as ECU, TCU, etc.), and contains machine code, address information, and checksums. It can be used for flashing controller programs on the production line, software upgrades or fault repairs at vehicle sales and service centers, etc. The calibration file, such as an amt file (MATLAB data file), is used to store calibration data or test data, including calibration parameters (such as engine MAP diagrams, transmission shift curves), sensor data recorded during the testing phase (such as time-series signals such as vehicle speed and temperature), and simulation model inputs / outputs. It is usually used in conjunction with simulation software for parameter visualization and analysis, for calibration engineers to adjust controller logic, and for data input to automated test scripts. Debug files, such as ELF (Executable and Linkable Format) files, are executable files with complete symbol information, used for debugging and analysis, such as locating runtime errors (e.g., stack traces during crashes), viewing variable memory addresses and function symbol tables (in conjunction with a debugger); code coverage analysis; and memory usage statistics. Verifying successful integration by checking if an executable file has been generated directly confirms the integrity of the code compilation and linking, quickly pinpointing integration failures. Furthermore, as the final programmable format, the generated executable file ensures the software's executability on the target hardware.
[0038] If no executable file is generated, it indicates that the project files failed to compile and contain errors. Initiate a troubleshooting and debugging mode, using a step-by-step integration approach to locate the problematic application software. This allows for rapid verification of code compilability, ensuring the delivered package meets specifications and improving version management reliability. Simultaneously, the step-by-step integration troubleshooting mechanism accurately pinpoints integration failure points, significantly shortening the problem-solving cycle.
[0039] S150. Push the encrypted integration delivery package to the test system for automated interface testing.
[0040] After successful integration, the integration delivery package is encrypted and pushed to the testing system for interface testing. Optionally, if the test passes, the integration delivery package is uploaded to the software repository and released from the testing system.
[0041] This invention, through version control and modular replacement mechanisms, ensures precise matching between the application software of each vehicle controller and the underlying software, significantly improving the integration efficiency of vehicle electronic software. Its binary verification and automated packaging process based on executable file generation guarantees the integrity and standardization of the integrated delivery package, while intelligent troubleshooting and debugging modes quickly locate integration faults, greatly shortening the problem-solving cycle. Finally, combined with encrypted transmission and automated interface testing, it forms a closed-loop control system from code integration to quality verification, effectively reducing the risk of human intervention and meeting the stringent requirements of functional safety and process reliability in the automotive electronics field. The integration pipeline can be flexibly combined to suit different projects and adapt to project needs.
[0042] In one optional implementation, after compiling and generating the executable file, the method further includes: verifying whether the execution version of each application software in the executable file is consistent with the target application version of each application software; wherein, the execution version of each application software is determined by the configuration item in the configuration file of the application software; if they are inconsistent, the current integration task is forcibly terminated through the continuous integration engine, and alarm data is sent through the message queue to notify the developers to investigate the software problem.
[0043] Specifically, the application software name includes the application software version identifier, and the configuration items in the application software's configuration file can set the version to be executed. During application software development, there may be discrepancies between the version identifier restricted by the application software name and the version to be executed set in the configuration items of the application software's configuration file. When pulling application software for each vehicle controller from the file management repository according to the target version, the version of the application software to be pulled for each vehicle controller is determined based on the application software name. After compiling and generating the executable file, it is verified whether the version to be executed for each application software in the executable file is consistent with the target application version of each application software. If they are inconsistent, the current integration task is forcibly terminated through the continuous integration engine, and alarm data is sent through the message queue to notify the developers to investigate the software problem.
[0044] During the retrieval phase, the target version component is precisely obtained by using the version identifier in the application software name. Subsequently, after compilation, the actual executable version (derived from the configuration file) embedded in the executable file is verified to ensure it meets the target requirements. For common software integration errors, such as application version errors, a mechanism for application version number verification is provided. This allows for immediate detection of software integration problems and notification of relevant personnel for handling, avoiding wasted manpower and effort in subsequent processes. Version conflicts are automatically intercepted during the build phase to prevent erroneous versions from entering the testing phase. Specifically, the system compares the version metadata stored in the executable file with the project version list. When a discrepancy is detected, integration and testing tasks are immediately suspended, an alarm is triggered, and the corresponding branch in the code repository is locked. Developers are required to confirm the version attribution, thus ensuring end-to-end version traceability from source code to the executable file.
[0045] Figure 2 This is a second flowchart of an automated integration and testing method provided in an embodiment of the present invention. This embodiment is an optimization and improvement based on the above embodiment. Figure 2 As shown, the method includes:
[0046] S210. Retrieve the application software of each vehicle controller from the file management repository according to the target version, and cache the application software in the compilation environment.
[0047] The target version includes the target project version and the target application version of each application software.
[0048] S220. Replace the virtual implementation in the base software with the application software to generate a project file; the version of the project file is the target project version.
[0049] S230. Compile the project files. If an executable file is generated, package the compilation output into an integration delivery package according to the project naming convention.
[0050] S240. If no executable file is generated, compile the base software containing only the virtual implementation and verify the compilation success of the base software.
[0051] S250. If the base software compiles successfully, then each application software is integrated with the base software and compiled sequentially to locate the problematic application software.
[0052] The compilation success rate of the isolated verification base software ensures the reliability of the basic environment. Each application software is then integrated with the base software and compiled sequentially to verify compatibility and accurately identify problematic modules. A closed-loop management system is formed through automated notifications and process restart mechanisms. Base software compilation verification can first rule out underlying environment configuration errors; sequential integration and compilation significantly shorten problem localization time; automated notification mechanisms improve development response speed; and it complies with the standardized requirements of the "problem tracing-correction-re-verification" process. It is particularly suitable for complex scenarios in the automotive electronics field involving the collaborative development of multiple controllers, effectively preventing overall integration blockage due to defects in a single application software.
[0053] S260. After identifying the problematic application software, an automatic notification mechanism is triggered to prompt the corresponding developer to submit a corrected version of the problematic application software and to re-initialize the integration verification process.
[0054] S270. Push the encrypted integration delivery package to the test system for automated interface testing.
[0055] This invention ensures a reliable basic environment by isolating and verifying the compilation passability of the base software; it sequentially integrates and compiles each application software with the base software to verify the compatibility of each application software and accurately identify problematic modules; and it forms a closed-loop control through automated notification and process restart mechanisms. Base software compilation verification can first rule out underlying environment configuration errors; sequential integration and compilation can significantly shorten the problem localization time; the automated notification mechanism improves development response speed; and it meets the process standardization requirements of "problem tracing-correction-re-verification," making it particularly suitable for complex scenarios of multi-controller collaborative development in the automotive electronics field, effectively preventing overall integration blockage due to defects in a single application software. In terms of troubleshooting and debugging mode, compared to manually replacing the base and application integration to troubleshoot problems, the automated troubleshooting mode can directly replace and integrate the selected base and application software, quickly view the integration results, shorten troubleshooting time, and avoid affecting test integration results and misleading the troubleshooting direction due to software replacement errors.
[0056] Figure 3 This is a schematic diagram of the structure of an automated integration and testing device provided in an embodiment of the present invention.
[0057] like Figure 3 As shown, the device includes:
[0058] The application software acquisition module 310 is used to pull the application software of each vehicle controller from the file management repository according to the target version, and cache the application software in the compilation environment; the target version includes the target project version and the target application version of each application software.
[0059] Project file integration module 320 is used to replace the virtual implementation in the base software with the application software and generate project files; the version of the project files is the version of the target project.
[0060] The delivery package building module 330 is used to compile the project files. If an executable file is generated, the compilation output is packaged into an integrated delivery package according to the project naming convention. If no executable file is generated, the module enters the troubleshooting and debugging mode and locates the problematic application software through item-by-item integration.
[0061] The automated testing module 340 is used to push the encrypted integration delivery package to the testing system for automated interface testing.
[0062] The automated integration and testing apparatus provided in the embodiments of the present invention can execute the automated integration and testing methods provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.
[0063] Optionally, the delivery package construction module further includes: a compilation and verification unit, used to compile the base software containing only the virtual implementation if no executable file is generated, and verify the compilation passability of the base software; if the base software compiles successfully, then each application software is integrated with the base software in sequence and compiled to locate the problematic application software; after identifying the problematic application software, a notification mechanism is automatically triggered to enable the corresponding developer to submit a corrected version of the problematic application software, and the integration and verification process is re-initialized.
[0064] Optionally, a version verification module is also included, which is used to verify whether the execution version of each application software in the executable file is consistent with the target application version of each application software after the executable file is compiled and generated; wherein, the execution version of each application software is determined by the configuration items in the configuration file of the application software; if they are inconsistent, the current integration task is forcibly terminated through the continuous integration engine and alarm data is sent through the message queue to notify the developers to investigate the software problem.
[0065] Optionally, it also includes: a delivery package management module, used to upload the integrated delivery package to the software library and release the integrated delivery package from the test system if the test passes.
[0066] Optionally, the compilation output includes an executable file, a calibration file, and a debug file.
[0067] The automated integration and testing apparatus described in further detail can also execute the automated integration and testing methods provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the method execution.
[0068] According to embodiments of the present invention, the present invention also provides an electronic device, a readable storage medium, and a computer program product.
[0069] Figure 4 A schematic diagram of an electronic device 40 that can be used to implement embodiments of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processors, cellular phones, smartphones, wearable devices (e.g., helmets, glasses, watches, etc.), and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely illustrative and are not intended to limit the implementation of the invention described and / or claimed herein.
[0070] like Figure 4 As shown, the electronic device 40 includes at least one processor 41 and a memory, such as a read-only memory 42 or a random access memory 43, communicatively connected to the at least one processor 41. The memory stores computer programs executable by the at least one processor. The processor 41 can perform various appropriate actions and processes based on the computer program stored in the read-only memory 42 or loaded from storage unit 48 into the random access memory 43. The random access memory 43 may also store various programs and data required for the operation of the electronic device 40. The processor 41, read-only memory 42, and random access memory 43 are interconnected via a bus 44. An input / output interface 45 is also connected to the bus 44.
[0071] Multiple components in electronic device 40 are connected to input / output interface 45, including: input unit 46, such as keyboard, mouse, etc.; output unit 47, such as various types of monitors, speakers, etc.; storage unit 48, such as disk, optical disk, etc.; and communication unit 49, such as network card, modem, wireless transceiver, etc. Communication unit 49 allows electronic device 40 to exchange information / data with other devices through computer networks such as the Internet and / or various telecommunications networks.
[0072] Processor 41 can be a variety of general-purpose and / or special-purpose processing components with processing and computing capabilities. Some examples of processor 41 include, but are not limited to, central processing units, graphics processing units, various special-purpose artificial intelligence computing chips, various processors running machine learning model algorithms, digital signal processors, and any suitable processor, controller, microcontroller, etc. Processor 41 performs the various methods and processes described above, such as automated integration and testing methods.
[0073] In some embodiments, the automated integration and testing method may be implemented as a computer program tangibly contained in a computer-readable storage medium, such as storage unit 48. In some embodiments, part or all of the computer program may be loaded and / or installed on electronic device 40 via read-only memory 42 and / or communication unit 49. When the computer program is loaded into random access memory 43 and executed by processor 41, one or more steps of the automated integration and testing method described above may be performed. Alternatively, in other embodiments, processor 41 may be configured to perform the automated integration and testing method by any other suitable means (e.g., by means of firmware).
[0074] Various embodiments of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field-programmable gate arrays, application-specific integrated circuits (ASICs), application-specific standard products (ASICs), systems-on-a-chip (SoCs), payload programmable logic devices, computer hardware, firmware, software, and / or combinations thereof. These various embodiments may include implementations in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which may be a dedicated or general-purpose programmable processor, capable of receiving data and instructions from a storage system, at least one input device, and at least one output device, and transmitting data and instructions to the storage system, the at least one input device, and the at least one output device.
[0075] Computer programs used to implement the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, such that when executed by the processor, the computer programs cause the functions / operations specified in the flowcharts and / or block diagrams to be performed. The computer programs may be executed entirely on a machine, partially on a machine, or as a standalone software package, partially on a machine and partially on a remote machine, or entirely on a remote machine or server.
[0076] In the context of this invention, a computer-readable storage medium can be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, apparatus, or device. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, apparatus, or devices, or any suitable combination thereof. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. More specific examples of machine-readable storage media include electrical connections based on one or more wires, portable computer disks, hard disks, random access memory, read-only memory, erasable programmable read-only memory, optical fibers, portable compact disk read-only memory, optical storage devices, magnetic storage devices, or any suitable combination thereof.
[0077] To provide interaction with a user, the systems and techniques described herein can be implemented on an electronic device having: a display device (e.g., a cathode ray tube, liquid crystal display, or monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user provides input to the electronic device. Other types of devices can also be used to provide interaction with the user; for example, feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including sound input, voice input, or tactile input).
[0078] The systems and technologies described herein can be implemented in computing systems that include backend components (e.g., as data servers), or middleware components (e.g., application servers), or frontend components (e.g., user computers with graphical user interfaces or web browsers through which users can interact with implementations of the systems and technologies described herein), or any combination of such backend, middleware, or frontend components. The components of the system can be interconnected via digital data communication of any form or medium (e.g., communication networks). Examples of communication networks include local area networks (LANs), wide area networks (WANs), blockchain networks, and the Internet.
[0079] A computing system can include clients and servers. Clients and servers are generally geographically separated and typically interact via communication networks. The client-server relationship is created by computer programs running on the respective computers and having a client-server relationship with each other. The server can be a cloud server, also known as a cloud computing server or cloud host, which is a host product within the cloud computing service system to address the shortcomings of traditional physical hosts and virtual private servers, such as high management difficulty and weak business scalability.
[0080] It should be understood that the various forms of processes shown above can be used, with steps reordered, added, or deleted. For example, the steps described in this invention can be executed in parallel, sequentially, or in different orders, as long as the desired result of the technical solution of this invention can be achieved, and this is not limited herein.
[0081] The specific embodiments described above do not constitute a limitation on the scope of protection of this invention. Those skilled in the art should understand that various modifications, combinations, sub-combinations, and substitutions can be made according to design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this invention should be included within the scope of protection of this invention.
Claims
1. An automated integration and testing method, characterized by, The method comprises: pulling application software of each vehicle controller from a file management warehouse according to a target version, and caching the application software to a compiling environment; the target version comprises a target project version and a target application version of each application software; replacing a virtual implementation body in base software with the application software to generate a project file; a version of the project file is the target project version; compiling the project file, if an executable file is generated, packing a compiling output into an integrated delivery package according to a project naming specification, if the executable file is not generated, entering an investigation and debugging mode, and locating problem application software through item-by-item integration; pushing the integrated delivery package after encryption to a test system to perform interface automatic testing.
2. The method of claim 1, wherein, The entering of the investigation and debugging mode, the locating of the problem application software through the item-by-item integration comprises: compiling base software containing only a virtual implementation body, and verifying compiling passability of the base software; if the base software is compiled and passed, integrating each application software with the base software in sequence and compiling to locate the problem application software; after identifying the problem application software, automatically triggering a notification mechanism to make a corresponding developer submit a revised version of the problem application software, and reinitializing an integrated verification process.
3. The method of claim 1, wherein, After the compiling generates the executable file, further comprising: verifying whether a to-be-executed version of each application software in the executable file is consistent with the target application version of each application software; wherein the to-be-executed version of each application software is determined through a configuration item in a configuration file of the application software; if not consistent, forcibly terminating a current integration task through a continuous integration engine, and sending alarm data through a message queue to notify a developer to investigate software problems.
4. The method of claim 1, wherein, Further comprising: if the test passes, uploading the integrated delivery package to a software library, and releasing the integrated delivery package from the test system.
5. The method of claim 1, wherein, The compiling output comprises an executable file, a calibration file and a debugging file.
6. An automated integration and test device, characterized by, The device comprises: an application software acquisition module configured to pull application software of each vehicle controller from a file management warehouse according to a target version, and cache the application software to a compiling environment; the target version comprises a target project version and a target application version of each application software; a project file integration module configured to replace a virtual implementation body in base software with the application software to generate a project file; a version of the project file is the target project version; a delivery package construction module configured to compile the project file, if an executable file is generated, pack a compiling output into an integrated delivery package according to a project naming specification, if the executable file is not generated, enter an investigation and debugging mode, and locate problem application software through item-by-item integration; an automatic testing module configured to push the integrated delivery package after encryption to a test system to perform interface automatic testing.
7. The apparatus of claim 6, wherein, The delivery package construction module further comprises: The compiling verification unit is configured to, if no executable file is generated, compile the base software containing only the virtual implementation body, verify the compiling pass of the base software, if the base software passes the compiling, integrate and compile each application software with the base software in sequence to locate the problem application software, and after identifying the problem application software, automatically trigger a notification mechanism to make the corresponding developer submit a revised version of the problem application software and re-initialize the integration verification process.
8. An electronic device, comprising: The electronic device includes: at least one processor; and a memory connected in communication with the at least one processor; wherein the memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor to enable the at least one processor to perform the automated integration and testing method of any one of claims 1-5.
9. A computer-readable storage medium, characterized in that, The computer readable storage medium stores computer instructions for causing the processor to implement the automated integration and testing method of any one of claims 1-5 when executed.
10. A computer program product comprising a computer program which, when executed by a processor, implements the automated integration and testing method of any one of claims 1-5.