Software calling information test method, electronic equipment and vehicle
By establishing the mapping relationship between vehicle execution functions and software components and the mapping relationship between software components and interface signals during the software development process, the problem of too long development time caused by multiple software integration and testing is solved, and more accurate test results and shorter development time are achieved.
Patent Information
- Application Number
- CN202510122287.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-26
- Publication Date
- 2025-04-15
- Estimated Expiration
- 2045-01-26
AI Technical Summary
Multiple software integration and software testing in the prior art lead to problems with excessive software development time.
By establishing a first preset mapping relationship between the vehicle execution function and the software component and a second preset mapping relationship between the software component and the interface signal, the call information of the software to be tested is obtained during the software integration process, and the call information is tested based on these mapping relationships to obtain the test results.
Avoid multiple software integration and testing, shorten software development time, and improve the accuracy of test results by using the correct call information.
Smart Images

Figure CN119829465A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the technical field of data processing, and in particular to a method for testing software call information, an electronic device, and a vehicle. Background Art
[0002] As vehicle functions become more complex, the amount of software code grows rapidly, and it is necessary to test the software during the software development process. However, if an anomaly is found during the software integration test, the tester will report the anomaly to the developer for repair. After the software is repaired, it will be integrated again until the test passes. This will cause the software development time to be too long due to multiple software integrations and software tests.
[0003] In view of this, how to avoid multiple software integration and software testing that lead to excessively long software development time has become a technical problem that needs to be solved urgently. Summary of the invention
[0004] In view of this, the purpose of the present disclosure is to propose a software call information testing method, electronic equipment and vehicle to solve the problem of multiple software integration and software testing in the prior art resulting in excessively long software development time.
[0005] Based on the above purpose, the first aspect of the present disclosure proposes a method for testing software call information, the method comprising:
[0006] Establishing a first preset mapping relationship between a vehicle execution function and a software component, and a second preset mapping relationship between a software component and an interface signal;
[0007] During the integration of the software to be tested, the call information of the software to be tested is obtained, and the call information is tested based on the first preset mapping relationship and the second preset mapping relationship to obtain a test result.
[0008] Based on the same inventive concept, the second aspect of the present disclosure proposes an electronic device, comprising a memory, a processor, and a computer program stored in the memory and executable by the processor, wherein the processor implements the method as described above when executing the computer program.
[0009] Based on the same inventive concept, a third aspect of the present disclosure provides a vehicle, which includes the electronic device described in the second aspect.
[0010] From the above, it can be seen that the present disclosure provides a method for testing software call information, an electronic device, and a vehicle. A first preset mapping relationship between a vehicle execution function and a software component, and a second preset mapping relationship between a software component and an interface signal are established. In the process of integrating the software to be tested, the call information of the software to be tested is obtained, and the call information is tested based on the first preset mapping relationship and the second preset mapping relationship to obtain a test result. In this way, in the process of integrating the software to be tested, the software to be tested is tested, and there is no need to test the software to be tested again after the software to be tested is integrated, which results in the software to be tested being integrated and tested again when the software to be tested is abnormal, thereby avoiding the problem of too long development time for the software to be tested. In addition, the correct call information is stored in the first preset mapping relationship and the second preset mapping relationship, and the call information of the software to be tested is tested based on the first preset mapping relationship and the second preset mapping relationship, so that the obtained test result is more accurate. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] In order to more clearly illustrate the technical solutions in the present disclosure or related technologies, the drawings required for use in the embodiments or related technical descriptions are briefly introduced below. Obviously, the drawings described below are only embodiments of the present disclosure. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.
[0012] Figure 1 A flowchart of a method for testing software call information according to an embodiment of the present disclosure;
[0013] Figure 2 A schematic diagram of the structure of a testing device for software call information according to an embodiment of the present disclosure;
[0014] Figure 3 It is a schematic diagram of the structure of an electronic device according to an embodiment of the present disclosure. DETAILED DESCRIPTION
[0015] In order to make the objectives, technical solutions and advantages of the present disclosure more clearly understood, the present disclosure is further described in detail below in combination with specific embodiments and with reference to the accompanying drawings.
[0016] It should be noted that, unless otherwise defined, the technical terms or scientific terms used in the embodiments of the present disclosure should be understood by people with ordinary skills in the field to which the present disclosure belongs. The "first", "second" and similar words used in the embodiments of the present disclosure do not indicate any order, quantity or importance, but are only used to distinguish different components. "Including" or "comprising" and similar words mean that the elements or objects appearing before the word cover the elements or objects listed after the word and their equivalents, without excluding other elements or objects. "Connect" or "connected" and similar words are not limited to physical or mechanical connections, but can include electrical connections, whether direct or indirect. "Up", "down", "left", "right" and the like are only used to indicate relative positional relationships. When the absolute position of the described object changes, the relative positional relationship may also change accordingly.
[0017] Based on the description of the background technology, as the functions of the whole vehicle become more complex, the amount of software code grows rapidly. As the core of the vehicle electronic system, the vehicle control unit (VCU) also has a very large amount of software code. In the process of software development, if problems are found in the early stage, the software release speed can be accelerated, the work efficiency can be significantly improved, and the software failure rate and operation and maintenance costs can be reduced.
[0018] The huge amount of code increases the failure rate of VCU software, among which communication failure is a common one. One of the causes of communication failure is the interface signal mapping error between software modules. In the current software development process, interface signal mapping errors are discovered during the integration test phase. After the test finds the abnormality, the tester will feedback to the software developer for problem analysis, repair the software and integrate it again, and then test it again after integration until the test passes. Based on the current amount of VCU software code, software integration takes a long time, and one integration takes about 2 hours. If the software repair does not completely solve the problem or introduces new problems, it will inevitably lead to multiple software integration and testing, and the software development time will increase exponentially.
[0019] As mentioned above, how to avoid multiple software integration and software testing that lead to excessively long software development time has become an important research issue.
[0020] Based on the above description, if Figure 1 As shown, the software call information testing method proposed in this embodiment includes:
[0021] Step 101 : establishing a first preset mapping relationship between a vehicle execution function and a software component, and a second preset mapping relationship between a software component and an interface signal.
[0022] In specific implementation, the vehicle execution function refers to an application function that the vehicle can execute. For example, the vehicle execution function includes at least one of the following: thermal management function, auxiliary driving function, entertainment function and safety function.
[0023] Software component is an important concept in the software development process, which is equivalent to the chip in the hardware and has certain standards, such as the format of input and output, the number and type of parameters, etc. Software component is the deployment unit of software, which is the smallest entity / smallest unit that can be independently deployed in the entire software system during the deployment process. It is specifically manifested as a collection of binary files or source code files in the compilation and running language.
[0024] Interface signals are detailed descriptions of electrical characteristics, logic levels, timing and other parameters used to identify and synchronize signals when data is transmitted between different devices or systems.
[0025] Specifically, when the vehicle execution function is a thermal management function, the corresponding software components include electronic water pump control, four-way valve control, and battery heating / cooling control, and the first preset mapping relationship established is the corresponding relationship between the thermal management function and the electronic water pump control, four-way valve control, and battery heating / cooling control. When the software component is an electronic water pump control, the corresponding interface signal includes an opening gear request signal, an actual opening feedback signal, a target speed signal, and an actual speed feedback signal, and the second preset mapping relationship established is the corresponding relationship between the electronic water pump control and the opening gear request signal, the actual opening feedback signal, the target speed signal, and the actual speed feedback signal.
[0026] The storage form of the first preset mapping relationship and the second preset mapping relationship includes at least one of the following: a binary tree, a hash table, and a table.
[0027] Step 102: during the integration process of the software to be tested, obtaining the call information of the software to be tested, and testing the call information based on the first preset mapping relationship and the second preset mapping relationship to obtain a test result.
[0028] In specific implementation, the software under test is the software that needs to be integrated and tested during the software development process.
[0029] In the process of integrating the software to be tested, the calling information of the software to be tested is obtained, wherein the calling information includes: a first mapping relationship to be tested between the vehicle execution function of the software to be tested and the software component, and a second mapping relationship to be tested between the software component of the software to be tested and the interface signal.
[0030] The first mapping relationship to be tested is compared with the first preset mapping relationship. When the first mapping relationship to be tested is consistent with the first preset mapping relationship, it is determined that the test of the first mapping relationship to be tested in the software to be tested has passed. When the first mapping relationship to be tested is inconsistent with the first preset mapping relationship, it is determined that there is an abnormality in the first mapping relationship to be tested in the software to be tested.
[0031] The second mapping relationship to be tested is compared with the second preset mapping relationship. When the second mapping relationship to be tested is consistent with the second preset mapping relationship, it is determined that the second mapping relationship to be tested in the software to be tested has passed the test. When the second mapping relationship to be tested is inconsistent with the second preset mapping relationship, it is determined that there is an error (abnormality) in the second mapping relationship to be tested in the software to be tested.
[0032] Through the above-mentioned embodiments, a first preset mapping relationship between the vehicle execution function and the software component, and a second preset mapping relationship between the software component and the interface signal are established. In the process of integrating the software to be tested, the call information of the software to be tested is obtained, and the call information is tested based on the first preset mapping relationship and the second preset mapping relationship to obtain the test result. In this way, in the process of integrating the software to be tested, the software to be tested is tested, and there is no need to test the software to be tested again after the software to be tested is integrated, which leads to the software to be tested being integrated and tested again when the software to be tested is abnormal, thereby avoiding the problem of too long development time of the software to be tested. In addition, the correct call information is stored in the first preset mapping relationship and the second preset mapping relationship, and the call information of the software to be tested is tested based on the first preset mapping relationship and the second preset mapping relationship, so that the obtained test result is more accurate.
[0033] In some embodiments, step 101 includes:
[0034] Step 1011, obtaining the vehicle execution function identifier, software component identifier and interface signal identifier.
[0035] Step 1012: establishing a first preset mapping relationship between the vehicle execution function and the software component based on the vehicle execution function identifier and the software component identifier.
[0036] Step 1013: Establish a second preset mapping relationship between the software component and the interface signal based on the software component identifier and the interface signal identifier.
[0037] In a specific implementation, a vehicle execution function identifier, a software component identifier, and an interface signal identifier are obtained. Based on the vehicle execution function identifier and the software component identifier, a first preset mapping relationship between the vehicle execution function and the software component is established. Based on the software component identifier and the interface signal identifier, a second preset mapping relationship between the software component and the interface signal is established.
[0038] For example, when the vehicle execution function is a thermal management function, the vehicle execution function identifier obtained is a thermal management function identifier, and the software component identifiers obtained are an electronic water pump control identifier, a four-way valve control identifier, and a battery heating / cooling control identifier. Based on the thermal management function identifier, the electronic water pump control identifier, the four-way valve control identifier, and the battery heating / cooling control identifier, a first preset mapping relationship between the thermal management function and the electronic water pump control, the four-way valve control, and the battery heating / cooling control is established.
[0039] When the software component is an electronic water pump control, the software component identifier obtained is the electronic water pump control identifier, and the interface signal identifier obtained is the opening gear request signal identifier, the actual opening feedback signal identifier, the target speed signal identifier, and the actual speed feedback signal identifier. Based on the electronic water pump control identifier, the opening gear request signal identifier, the actual opening feedback signal identifier, the target speed signal identifier, and the actual speed feedback signal identifier, a second preset mapping relationship is established between the electronic water pump control and the opening gear request signal, the actual opening feedback signal, the target speed signal, and the actual speed feedback signal.
[0040] Through the above solution, the vehicle execution function identifier, software component identifier and interface signal identifier are obtained, and the identity identifier can be established for each vehicle execution function, software component and interface signal. In this way, in the process of establishing the first preset mapping relationship and the second preset mapping relationship, accurate reference and identification can be ensured, so that the first preset mapping relationship and the second preset mapping relationship can be established quickly and accurately.
[0041] In some embodiments, step 102 includes:
[0042] Step 1021: Create a preset script according to the first preset mapping relationship and the second preset mapping relationship, and embed the preset script into a software integration tool.
[0043] Step 1022, during the integration process of the software to be tested, the preset script is used to collect the call information of the software to be tested, and the software integration tool is used to test the call information to obtain the test result.
[0044] In specific implementation, a preset script is created according to the first preset mapping relationship and the second preset mapping relationship. The preset script is used to automatically collect the call information of the interface signal in the integration process of the software to be tested, and mark them one by one.
[0045] The preset script is embedded into the software integration tool (combining the bottom layer software and the application layer software into one version of software) to realize self-diagnosis of the calling information of the interface signal during the integration process of the software to be tested.
[0046] Through the above scheme, a preset script is created according to the first preset mapping relationship and the second preset mapping relationship, so that the preset script stores the first preset mapping relationship and the second preset mapping relationship, so that the preset script can accurately collect the call information of the software to be tested. The preset script is embedded in the software integration tool, so that the software integration tool stores the first preset mapping relationship and the second preset mapping relationship, so that in the process of integrating the software to be tested, the software integration tool can accurately test the call information of the software to be tested.
[0047] In some embodiments, step 1022 includes:
[0048] Step 10221, during the integration process of the software to be tested, using the preset script to collect the calling information of the software to be tested.
[0049] Step 10222: Analyze and process the call information to obtain a first mapping relationship between the vehicle execution function of the software under test and the software component, and a second mapping relationship between the software component of the software under test and the interface signal.
[0050] Step 10223: determine a target mapping relationship to be tested from the first mapping relationship to be tested and the second mapping relationship to be tested, and use the software integration tool to test the target mapping relationship to be tested to obtain a test result.
[0051] In specific implementation, during the integration of the software to be tested, the call information of the software to be tested is collected using a preset script, wherein the call information of the software to be tested includes: a first mapping relationship to be tested between the vehicle execution function of the software to be tested and the software component, and a second mapping relationship to be tested between the software component of the software to be tested and the interface signal.
[0052] The call information of the software to be tested is analyzed and processed to obtain a first mapping relationship to be tested and a second mapping relationship to be tested. The first mapping relationship to be tested and the second mapping relationship to be tested are tested to obtain a test result.
[0053] In some scenarios, in order to ensure that the call information of the software to be tested is accurately tested and save test time, only the second mapping relationship to be tested needs to be tested. In some scenarios, in order to ensure that the call information of the software to be tested is accurately tested, the first mapping relationship to be tested and the second mapping relationship to be tested need to be tested.
[0054] Based on the above reasons, the target mapping relationship to be tested is determined from the first mapping relationship to be tested and the second mapping relationship to be tested, and the target mapping relationship to be tested is tested using a software integration tool to obtain a test result. Specifically, the target preset mapping relationship is called from the first preset mapping relationship and the second preset mapping relationship using a software integration tool. The target mapping relationship to be tested and the target preset mapping relationship are compared and processed. When the target mapping relationship to be tested and the target preset mapping relationship are consistent, it is determined that the call information test of the software to be tested has passed. When the target mapping relationship to be tested and the target preset mapping relationship are inconsistent, it is determined that there is an error in the call information of the software to be tested.
[0055] Through the above scheme, the call information of the software to be tested is analyzed and processed, and the first mapping relationship to be tested and the second mapping relationship to be tested can be accurately obtained. The target mapping relationship to be tested is determined from the first mapping relationship to be tested and the second mapping relationship to be tested, and the target mapping relationship to be tested is tested using a software integration tool to obtain a test result. In this way, the test time can be saved while ensuring that the call information of the software to be tested is accurately tested.
[0056] In some embodiments, step 10223 includes:
[0057] Step 102231, determine whether the software to be tested is tested for the first time.
[0058] Step 102232: In response to determining that the software to be tested is being tested for the first time, taking the first mapping relationship to be tested and the second mapping relationship to be tested as target mapping relationships to be tested.
[0059] Step 102233, in response to determining that the software under test is not tested for the first time, determining a target mapping relationship under test from the first mapping relationship under test and the second mapping relationship under test by judging whether the software architecture of the software under test has changed.
[0060] In specific implementation, in order to accurately determine whether the current scenario requires testing the first mapping relationship to be tested, determine whether the software to be tested is being tested for the first time, and based on the judgment result, determine the target mapping relationship to be tested from the first mapping relationship to be tested and the second mapping relationship to be tested, use a software integration tool to test the target mapping relationship to be tested to obtain a test result.
[0061] When the software to be tested is tested for the first time, in order to ensure the accuracy of the test results, the first mapping relationship to be tested and the second mapping relationship to be tested are used as target mapping relationships to be tested. In this way, when the software to be tested is tested for the first time, both the first mapping relationship to be tested and the second mapping relationship to be tested can be tested, so that the call information of the software to be tested can be comprehensively tested to ensure the accuracy of the test results.
[0062] When the software to be tested is not tested for the first time, it means that the first mapping relationship to be tested has passed the test. In order to save test time, the second mapping relationship to be tested is used as the target mapping relationship to be tested. In this way, when the software to be tested is not tested for the first time, only the second mapping relationship to be tested can be tested, thereby saving test time while ensuring the accuracy of the test results.
[0063] In some scenarios, in order to further accurately determine whether the current scenario requires testing the first mapping relationship to be tested, when the software to be tested is not tested for the first time, determine whether the software architecture of the software to be tested has changed, and determine the target mapping relationship to be tested from the first mapping relationship to be tested and the second mapping relationship to be tested based on the judgment result.
[0064] Through the above scheme, by judging whether the software to be tested is tested for the first time, the target mapping relationship to be tested that needs to be tested can be accurately determined from the first mapping relationship to be tested and the second mapping relationship to be tested. When the software to be tested is tested for the first time, the first mapping relationship to be tested and the second mapping relationship to be tested are used as the target mapping relationship to be tested, and both the first mapping relationship to be tested and the second mapping relationship to be tested can be tested, so that the call information of the software to be tested can be comprehensively tested to ensure the accuracy of the test results. When the software to be tested is not tested for the first time, the second mapping relationship to be tested is used as the target mapping relationship to be tested, and only the second mapping relationship to be tested can be tested, thereby saving test time while ensuring the accuracy of the test results.
[0065] In some embodiments, step 102233 includes:
[0066] Step 1022331, determine whether the software architecture of the software to be tested has changed.
[0067] Step 1022332: in response to determining that the software architecture of the software to be tested has changed, taking the first mapping relationship and the second mapping relationship as target mapping relationships to be tested.
[0068] Step 1022333: In response to determining that the software architecture of the software to be tested has not changed, use the second mapping relationship as a target mapping relationship to be tested.
[0069] In specific implementation, in order to more accurately determine whether the current scenario requires testing the first mapping relationship to be tested, when the software to be tested is not tested for the first time, determine whether the software architecture of the software to be tested has changed, and based on the judgment result, determine the target mapping relationship to be tested from the first mapping relationship to be tested and the second mapping relationship to be tested, and use a software integration tool to test the target mapping relationship to be tested to obtain a test result.
[0070] When the software architecture of the software to be tested changes, in order to ensure the accuracy of the test results, the first mapping relationship to be tested and the second mapping relationship to be tested are used as the target mapping relationship to be tested. In this way, when the software architecture of the software to be tested changes, both the first mapping relationship to be tested and the second mapping relationship to be tested can be tested, so that the call information of the software to be tested can be comprehensively tested to ensure the accuracy of the test results.
[0071] When the software to be tested is not tested for the first time and the software architecture of the software to be tested has not changed, it means that the first mapping relationship to be tested has passed the test and the software architecture of the software to be tested has not changed. In order to save test time, the second mapping relationship to be tested is used as the target mapping relationship to be tested. In this way, when the software to be tested is not tested for the first time and the software architecture of the software to be tested has not changed, only the second mapping relationship to be tested can be tested, thereby saving test time while ensuring the accuracy of the test results.
[0072] Through the above scheme, by judging whether the software architecture of the software to be tested has changed, the target mapping relationship to be tested that needs to be tested can be accurately determined from the first mapping relationship to be tested and the second mapping relationship to be tested. When the software architecture of the software to be tested has changed, the first mapping relationship to be tested and the second mapping relationship to be tested are used as the target mapping relationship to be tested, and both the first mapping relationship to be tested and the second mapping relationship to be tested can be tested, so that the call information of the software to be tested can be comprehensively tested to ensure the accuracy of the test results. When the software architecture of the software to be tested has not changed, the second mapping relationship to be tested is used as the target mapping relationship to be tested, and only the second mapping relationship to be tested can be tested, thereby saving test time while ensuring the accuracy of the test results.
[0073] In some embodiments, step 1022 includes:
[0074] Step 1022A, using a preset script embedded in the software integration tool to mark the call information.
[0075] Step 1022B, in response to determining that there is a mark omission or a mark error, determining that the test result is an error, and repairing the software to be tested.
[0076] In specific implementation, the preset script embedded in the software integration tool is used to call the first preset mapping relationship and the second preset mapping relationship. Based on the first preset mapping relationship and the second preset mapping relationship, the mapping relationship to be tested in the call information is tested. When the mapping relationship to be tested is consistent with the first preset mapping relationship and the second preset mapping relationship, the call information is marked.
[0077] When there is a missing tag or a wrong tag, it means that there is an error in the call information. When there is an error in the call information of the software under test, the integration of the software under test is suspended, and an error message is prompted through a pop-up window to assist developers in repairing the software under test.
[0078] Through the above solution, when there is a mark omission or mark error in the call information of the software under test, it can be accurately detected that there is an error in the call information of the software under test, so that the software under test can be repaired in time.
[0079] In some embodiments, step 1022B includes:
[0080] Step 1022Ba: determine that the test result is an error, and stop integrating the software to be tested.
[0081] Step 1022Bb: repair the call information of the software under test, and determine whether the call information of the software under test has been repaired.
[0082] Step 1022Bc: in response to determining that the repair of the call information of the software to be tested is completed, continue to integrate the software to be tested, and test the software to be tested during the integration process of the software to be tested.
[0083] In a specific implementation, when there is an error in the call information of the software to be tested, the integration of the software to be tested is stopped by triggering the integration pause of the software to be tested.
[0084] The error information is prompted through a pop-up window, and the abnormal position where the software under test has an error is determined. The updated mapping relationship corresponding to the abnormal position is obtained from the first preset mapping relationship and the second preset mapping relationship. The abnormal position of the software under test is directly replaced with the updated mapping relationship, thereby realizing the repair of the call information of the software under test.
[0085] Determine whether the call information of the software to be tested is repaired. When the call information of the software to be tested is repaired, continue to integrate the software to be tested, and test the software to be tested during the integration process until the integration of the software to be tested is completed.
[0086] Through the above scheme, when there is an error in the call information of the software to be tested, the integration of the software to be tested is stopped to facilitate the repair of the call information of the software to be tested. By directly replacing the abnormal position where the error exists in the software to be tested with the updated mapping relationship, the repair of the call information of the software to be tested can be completed quickly and accurately. After the call information of the software to be tested is repaired, the software to be tested continues to be integrated. In this way, the software to be tested can be tested during the integration of the software to be tested. The integration of the software to be tested only needs to be completed once, and there is no need to perform multiple integration operations on the software to be tested, thereby saving the development time of the software to be tested.
[0087] Through the above-mentioned embodiments, a first preset mapping relationship between the vehicle execution function and the software component, and a second preset mapping relationship between the software component and the interface signal are established. In the process of integrating the software to be tested, the call information of the software to be tested is obtained, and the call information is tested based on the first preset mapping relationship and the second preset mapping relationship to obtain the test result. In this way, in the process of integrating the software to be tested, the software to be tested is tested, and there is no need to test the software to be tested again after the software to be tested is integrated, which leads to the software to be tested being integrated and tested again when the software to be tested is abnormal, thereby avoiding the problem of too long development time of the software to be tested. In addition, the correct call information is stored in the first preset mapping relationship and the second preset mapping relationship, and the call information of the software to be tested is tested based on the first preset mapping relationship and the second preset mapping relationship, so that the obtained test result is more accurate.
[0088] It should be noted that the embodiments of the present disclosure may be further described in the following manner:
[0089] Step 1: Establish an identity for each function and software component to ensure accurate reference and identification.
[0090] Step 2, establish the first preset mapping relationship between each function and software component, and the second preset mapping relationship between the software component and the interface signal (Excel table); for example, the thermal management function includes electronic water pump control, four-way valve control, battery heating / cooling control, etc., and the first preset mapping relationship is established between the thermal management function and the above three control components; for example, the interface signals between the electronic water pump control and the VCU include the opening gear request signal, the actual opening feedback signal, the target speed signal, and the actual speed feedback signal, and the second preset mapping relationship is established between the electronic water pump control software component and these four interface signals.
[0091] Step 3, create a preset script (i.e., an automated script, which automatically collects the call information of the interface signal during the integration process of the software to be tested and marks it one by one. The preset script is written by an engineer) according to the first preset mapping relationship and the second preset mapping relationship in step 1 and step 2, and embed it into the software integration tool (which combines the bottom layer and application layer software into one version of software) to realize self-diagnosis of the call information of the interface signal during the integration process of the software to be tested (the first mapping relationship to be tested will be checked when the software to be tested is integrated for the first time and the architecture of the software to be tested changes, and only the second mapping relationship to be tested will be checked in other cases. During the integration process of the software to be tested, after a matching relationship is established between the interface of a component in the bottom layer software and the interface of another component in the application layer software, the preset script will compare the matching result with the first preset mapping relationship and the second preset mapping relationship in the excel table in step 2, and mark it according to the comparison result). Specifically, according to the integration strategy of the software to be tested, the preset script (software program) triggers the marking of the call information. If there is a missing or wrong label, the integration is suspended, and a pop-up window prompts the error information to assist the developer to repair the software to be tested (for interface mapping errors, the preset script reuses the first preset mapping relationship and the second preset mapping relationship in the Excel table into the software to be tested, replacing the original problematic content). After the repair is completed, the integration continues from the pause step.
[0092] Through the above embodiments, interface errors can be found at any time during the integration process of the software to be tested, which is convenient, fast, time-saving and efficient. The interface matching relationship is automatically called during the integration process of the software to be tested without manual participation. The frequency of interface matching inspection can be adjusted according to the situation of each version of the software by changing the settings in the preset script. The consistency check of the interface matching relationship and the first preset mapping relationship and the second preset mapping relationship can be automatically implemented, and the inconsistencies can be automatically marked. It can assist developers in software repair. For places where the interface mapping is wrong, the preset script reuses the first preset mapping relationship and the second preset mapping relationship in the excel table into the software to be tested, replacing the original problematic content.
[0093] It should be noted that the method of the embodiment of the present disclosure can be performed by a single device, such as a computer or a server. The method of the present embodiment can also be applied in a distributed scenario and completed by multiple devices cooperating with each other. In the case of such a distributed scenario, one of the multiple devices can only perform one or more steps in the method of the embodiment of the present disclosure, and the multiple devices will interact with each other to complete the described method.
[0094] It should be noted that some embodiments of the present disclosure are described above. Other embodiments are within the scope of the appended claims. In some cases, the actions or steps recorded in the claims can be performed in an order different from that in the above embodiments and still achieve the desired results. In addition, the processes depicted in the accompanying drawings do not necessarily require the specific order or continuous order shown to achieve the desired results. In some embodiments, multitasking and parallel processing are also possible or may be advantageous.
[0095] Based on the same inventive concept, corresponding to any of the above-mentioned embodiments and methods, the present disclosure further provides a testing device for software call information.
[0096] refer to Figure 2 , the testing device for software call information comprises:
[0097] A mapping relationship establishing module 201 is configured to establish a first preset mapping relationship between a vehicle execution function and a software component, and a second preset mapping relationship between a software component and an interface signal;
[0098] The call information testing module 202 is configured to obtain the call information of the software to be tested during the integration process of the software to be tested, and test the call information based on the first preset mapping relationship and the second preset mapping relationship to obtain a test result.
[0099] In some embodiments, the mapping relationship establishing module 201 includes:
[0100] An acquisition unit configured to acquire a vehicle execution function identifier, a software component identifier, and an interface signal identifier;
[0101] A first establishing unit is configured to establish a first preset mapping relationship between a vehicle execution function and a software component based on the vehicle execution function identifier and the software component identifier;
[0102] The second establishing unit is configured to establish a second preset mapping relationship between the software component and the interface signal based on the software component identifier and the interface signal identifier.
[0103] In some embodiments, the call information testing module 202 includes:
[0104] an embedding unit, configured to create a preset script according to the first preset mapping relationship and the second preset mapping relationship, and embed the preset script into a software integration tool;
[0105] The testing unit is configured to collect the calling information of the software to be tested by using the preset script during the integration process of the software to be tested, and to test the calling information by using the software integration tool to obtain the test result.
[0106] In some embodiments, the testing unit comprises:
[0107] The call information collection subunit is configured to collect the call information of the software to be tested by using the preset script during the integration process of the software to be tested;
[0108] an analysis and processing subunit, configured to analyze and process the call information to obtain a first mapping relationship to be tested between the vehicle execution function of the software to be tested and the software component, and a second mapping relationship to be tested between the software component of the software to be tested and the interface signal;
[0109] The testing subunit is configured to determine a target mapping relationship to be tested from the first mapping relationship to be tested and the second mapping relationship to be tested, and to test the target mapping relationship to be tested using the software integration tool to obtain a test result.
[0110] In some embodiments, the testing subunit is specifically configured as follows:
[0111] Determining whether the software to be tested is being tested for the first time;
[0112] In response to determining that the software to be tested is being tested for the first time, taking the first mapping relationship to be tested and the second mapping relationship to be tested as target mapping relationships to be tested;
[0113] In response to determining that the software to be tested is not being tested for the first time, a target mapping relationship to be tested is determined from the first mapping relationship to be tested and the second mapping relationship to be tested by judging whether a software architecture of the software to be tested has changed.
[0114] In some embodiments, the testing subunit is specifically configured as follows:
[0115] Determine whether the software architecture of the software to be tested has changed;
[0116] In response to determining that the software architecture of the software to be tested has changed, taking the first mapping relationship and the second mapping relationship as target mapping relationships to be tested;
[0117] In response to determining that the software architecture of the software to be tested has not changed, the second mapping relationship is used as a target mapping relationship to be tested.
[0118] In some embodiments, the testing unit comprises:
[0119] a marking subunit, configured to mark the call information using a preset script embedded in the software integration tool;
[0120] The repair subunit is configured to, in response to determining that there is a mark omission or a mark error, determine that the test result is an error and repair the software to be tested.
[0121] In some embodiments, the repair subunit is specifically configured as follows:
[0122] Determining that the test result is an error, and stopping integration of the software to be tested;
[0123] Repairing the call information of the software under test, and determining whether the call information of the software under test has been repaired;
[0124] In response to determining that the repair of the call information of the software to be tested is completed, the software to be tested continues to be integrated, and the software to be tested is tested during the integration of the software to be tested.
[0125] For the convenience of description, the above device is described by dividing it into various modules according to its functions. Of course, when implementing the present disclosure, the functions of each module can be implemented in the same or multiple software and / or hardware.
[0126] The device of the above embodiment is used to implement the corresponding software call information testing method in any of the above embodiments, and has the beneficial effects of the corresponding method embodiment, which will not be repeated here.
[0127] Based on the same inventive concept, corresponding to any of the above-mentioned embodiments and methods, the present disclosure also provides an electronic device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the program, the method for testing the software call information described in any of the above embodiments is implemented.
[0128] Figure 3 A more specific schematic diagram of the hardware structure of an electronic device provided in this embodiment is shown, and the device may include: a processor 1010, a memory 1020, an input / output interface 1030, a communication interface 1040, and a bus 1050. The processor 1010, the memory 1020, the input / output interface 1030, and the communication interface 1040 are connected to each other through the bus 1050 in the device.
[0129] The processor 1010 can be implemented by a general-purpose CPU (Central Processing Unit), a microprocessor, an application-specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to implement the technical solutions provided in the embodiments of this specification.
[0130] The memory 1020 may be implemented in the form of ROM (Read Only Memory), RAM (Random Access Memory), static storage device, dynamic storage device, etc. The memory 1020 may store an operating system and other application programs. When the technical solutions provided in the embodiments of this specification are implemented by software or firmware, the relevant program codes are stored in the memory 1020 and are called and executed by the processor 1010.
[0131] The input / output interface 1030 is used to connect the input / output module to realize information input and output. The input / output module can be configured in the device as a component (not shown in the figure), or it can be externally connected to the device to provide corresponding functions. The input device may include a keyboard, a mouse, a touch screen, a microphone, various sensors, etc., and the output device may include a display, a speaker, a vibrator, an indicator light, etc.
[0132] The communication interface 1040 is used to connect a communication module (not shown in the figure) to realize communication interaction between the device and other devices. The communication module can realize communication through a wired mode (such as USB (Universal Serial Bus), network cable, etc.), or through a wireless mode (such as mobile network, WIFI (Wireless Fidelity), Bluetooth, etc.).
[0133] The bus 1050 includes a path that transmits information between the various components of the device (eg, the processor 1010, the memory 1020, the input / output interface 1030, and the communication interface 1040).
[0134] It should be noted that, although the above device only shows the processor 1010, the memory 1020, the input / output interface 1030, the communication interface 1040 and the bus 1050, in the specific implementation process, the device may also include other components necessary for normal operation. In addition, it can be understood by those skilled in the art that the above device may also only include the components necessary for implementing the embodiments of the present specification, and does not necessarily include all the components shown in the figure.
[0135] The electronic device of the above embodiment is used to implement the corresponding software call information testing method in any of the above embodiments, and has the beneficial effects of the corresponding method embodiment, which will not be repeated here.
[0136] Based on the same inventive concept, corresponding to any of the above-mentioned embodiment methods, the present disclosure also provides a non-transitory computer-readable storage medium, wherein the non-transitory computer-readable storage medium stores computer instructions, and the computer instructions are used to enable the computer to execute the software call information testing method described in any of the above embodiments.
[0137] The computer-readable medium of this embodiment includes permanent and non-permanent, removable and non-removable media, and information storage can be implemented by any method or technology. Information can be computer-readable instructions, data structures, modules of programs, or other data. Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read-only memory (ROM), electrically erasable programmable read-only memory (EEPROM), flash memory or other memory technology, read-only compact disk read-only memory (CD-ROM), digital versatile disk (DVD) or other optical storage, magnetic cassettes, tape disk storage or other magnetic storage devices or any other non-transmission media that can be used to store information that can be accessed by a computing device.
[0138] The computer instructions stored in the storage medium of the above embodiment are used to enable the computer to execute the software call information testing method described in any of the above embodiments, and have the beneficial effects of the corresponding method embodiments, which will not be repeated here.
[0139] Based on the same inventive concept, corresponding to any of the above-mentioned embodiments, the present application also provides a vehicle, including a testing device, or an electronic device, or a storage medium for software call information in the above-mentioned embodiments, and the vehicle equipment implements the testing method for software call information described in any of the above embodiments.
[0140] The vehicle of the above-mentioned embodiment is used to implement the testing method of software call information described in any of the above-mentioned embodiments, and has the beneficial effects of the corresponding method embodiment, which will not be repeated here.
[0141] Based on the same inventive concept, corresponding to any of the above-mentioned embodiment methods, the present application also provides a computer program product, including computer program instructions. When the computer program instructions are run on a computer, the computer executes the software call information testing method described in any of the above embodiments, which has the beneficial effects of the corresponding method embodiments and will not be repeated here.
[0142] It is understandable that before using the technical solutions of each embodiment of the present disclosure, the type, scope of use, usage scenarios, etc. of the personal information involved will be informed to the user in an appropriate manner, and the user's authorization will be obtained.
[0143] For example, in response to receiving an active request from a user, a prompt message is sent to the user to clearly remind the user that the operation requested to be performed will require obtaining and using the user's personal information. Thus, the user can independently choose whether to provide personal information to software or hardware such as an electronic device, application, server, or storage medium that performs the operation of the technical solution of the present disclosure according to the prompt message.
[0144] As an optional but non-limiting implementation, in response to receiving the user's active request, the prompt information may be sent to the user in the form of a pop-up window, in which the prompt information may be presented in text form. In addition, the pop-up window may also carry a selection control for the user to choose "agree" or "disagree" to provide personal information to the electronic device.
[0145] It is understandable that the above notification and the process of obtaining user authorization are merely illustrative and do not constitute a limitation on the implementation of the present disclosure. Other methods that meet relevant laws and regulations may also be applied to the implementation of the present disclosure.
[0146] Those skilled in the art should understand that the discussion of any of the above embodiments is merely illustrative and is not intended to imply that the scope of the present disclosure is limited to these examples. Based on the concept of the present disclosure, the technical features in the above embodiments or different embodiments may be combined, the steps may be implemented in any order, and there are many other variations of the different aspects of the embodiments of the present disclosure as described above, which are not provided in detail for the sake of simplicity.
[0147] In addition, to simplify the description and discussion, and in order not to make the embodiments of the present disclosure difficult to understand, the known power / ground connections to the integrated circuit (IC) chips and other components may or may not be shown in the provided figures. In addition, the device can be shown in the form of a block diagram to avoid making the embodiments of the present disclosure difficult to understand, and this also takes into account the fact that the details of the implementation of these block diagram devices are highly dependent on the platform on which the embodiments of the present disclosure will be implemented (that is, these details should be fully within the scope of understanding of those skilled in the art). Where specific details (e.g., circuits) are set forth to describe exemplary embodiments of the present disclosure, it is apparent to those skilled in the art that the embodiments of the present disclosure can be implemented without these specific details or with changes in these specific details. Therefore, these descriptions should be considered illustrative rather than restrictive.
[0148] Although the present disclosure has been described in conjunction with specific embodiments of the present disclosure, many replacements, modifications and variations of these embodiments will be apparent to those skilled in the art from the foregoing description. For example, other memory architectures (e.g., dynamic RAM (DRAM)) may use the embodiments discussed.
[0149] The embodiments of the present disclosure are intended to cover all such substitutions, modifications and variations that fall within the broad scope of the present disclosure. Therefore, any omissions, modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the embodiments of the present disclosure should be included in the scope of protection of the present disclosure.
Claims
1. A method for testing software call information, characterized in that: The method comprises: Establishing a first preset mapping relationship between a vehicle execution function and a software component, and a second preset mapping relationship between a software component and an interface signal; During the integration of the software to be tested, the call information of the software to be tested is obtained, and the call information is tested based on the first preset mapping relationship and the second preset mapping relationship to obtain a test result.
2. The method according to claim 1, characterized in that The establishing of a first preset mapping relationship between the vehicle execution function and the software component and a second preset mapping relationship between the software component and the interface signal includes: Obtain vehicle execution function identification, software component identification and interface signal identification; Based on the vehicle execution function identifier and the software component identifier, establishing a first preset mapping relationship between the vehicle execution function and the software component; Based on the software component identifier and the interface signal identifier, a second preset mapping relationship between the software component and the interface signal is established.
3. The method according to claim 1, characterized in that The step of obtaining the call information of the software to be tested during the integration process, and testing the call information based on the first preset mapping relationship and the second preset mapping relationship to obtain a test result includes: Creating a preset script according to the first preset mapping relationship and the second preset mapping relationship, and embedding the preset script into a software integration tool; During the integration process of the software to be tested, the preset script is used to collect the call information of the software to be tested, and the software integration tool is used to test the call information to obtain the test result.
4. The method according to claim 3, characterized in that In the process of integrating the software to be tested, using the preset script to collect the call information of the software to be tested, and using the software integration tool to test the call information to obtain the test result, including: In the process of integrating the software to be tested, using the preset script to collect the call information of the software to be tested; Analyzing and processing the call information to obtain a first mapping relationship to be tested between a vehicle execution function of the software to be tested and a software component, and a second mapping relationship to be tested between a software component of the software to be tested and an interface signal; A target mapping relationship to be tested is determined from the first mapping relationship to be tested and the second mapping relationship to be tested, and the target mapping relationship to be tested is tested using the software integration tool to obtain a test result.
5. The method according to claim 4, characterized in that The determining a target mapping relationship to be tested from the first mapping relationship to be tested and the second mapping relationship to be tested includes: Determining whether the software to be tested is being tested for the first time; In response to determining that the software to be tested is being tested for the first time, taking the first mapping relationship to be tested and the second mapping relationship to be tested as target mapping relationships to be tested; In response to determining that the software to be tested is not being tested for the first time, a target mapping relationship to be tested is determined from the first mapping relationship to be tested and the second mapping relationship to be tested by judging whether a software architecture of the software to be tested has changed.
6. The method according to claim 5, characterized in that The determining a target mapping relationship to be tested from the first mapping relationship to be tested and the second mapping relationship to be tested by judging whether the software architecture of the software to be tested has changed includes: Determine whether the software architecture of the software to be tested has changed; In response to determining that the software architecture of the software to be tested has changed, taking the first mapping relationship and the second mapping relationship as target mapping relationships to be tested; In response to determining that the software architecture of the software to be tested has not changed, the second mapping relationship is used as a target mapping relationship to be tested.
7. The method according to claim 3, characterized in that The using the software integration tool to test the call information to obtain a test result includes: Using a preset script embedded in the software integration tool, marking the call information; In response to determining that there is a mark omission or a mark error, the test result is determined to be an error, and the software to be tested is repaired.
8. The method according to claim 7, characterized in that Determining that the test result is an error and repairing the software to be tested includes: Determining that the test result is an error, and stopping integration of the software to be tested; Repairing the call information of the software under test, and determining whether the call information of the software under test has been repaired; In response to determining that the repair of the call information of the software to be tested is completed, the software to be tested continues to be integrated, and the software to be tested is tested during the integration of the software to be tested.
9. An electronic device, characterized in that: The method comprises a memory, a processor and a computer program stored in the memory and running on the processor, wherein when the processor executes the program, the method according to any one of claims 1 to 8 is implemented.
10. A vehicle, characterized in that: An electronic device comprising the electronic device described in claim 9.
Citation Information
Patent Citations
Automobile software model integration method, device and equipment and storage medium
CN111679868A
Vehicle control system test method and device and electronic equipment
CN114691511A
Intelligent driving software integration test deployment method, device, equipment and medium
CN115757167A
Test script generation method and device, electronic equipment and readable storage medium
CN116302933A
Software integration method and device, electronic equipment, storage medium and vehicle
CN119166149A