Test method, device and equipment of domain controller and computer readable storage medium

By deploying and connecting the first and second processors in the domain controller, automated testing of the operating system is achieved, solving the challenge of cross-system testing and improving development efficiency.

CN116909259BActive Publication Date: 2026-07-07AVATR CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
AVATR CO LTD
Filing Date
2023-08-31
Publication Date
2026-07-07

AI Technical Summary

Technical Problem

In the domain controller of intelligent vehicles, the underlying driver modules of multiple software systems are complex and cross-system testing makes it difficult to locate problems, resulting in low development efficiency.

Method used

By deploying first and second processors in a domain controller, and on which first and second operating systems are deployed respectively, test data is obtained using network connectivity, enabling automated testing of each operating system and outputting test results.

Benefits of technology

It enables automated testing across operating systems, improving the development efficiency of multiple operating systems on domain controllers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116909259B_ABST
    Figure CN116909259B_ABST
Patent Text Reader

Abstract

The application discloses a test method, device and equipment of a domain controller and a computer readable storage medium. The method comprises the following steps: obtaining test data of a first operating system and a second operating system; testing the first operating system and the second operating system based on the test data respectively, obtaining test results corresponding to the operating systems; and outputting the test results. In this way, the automatic testing of the first operating system and the second operating system is realized, the cross-operating system testing is realized, and the development efficiency of the multiple operating systems on the domain controller is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of automated testing technology, and in particular to a testing method, apparatus, device, and computer-readable storage medium for a domain controller. Background Technology

[0002] With the development of intelligent vehicle technology, multiple software systems on the vehicle's infotainment system typically process their respective data to achieve load balancing. When developing multiple software systems, it is necessary to determine whether the underlying driver links of the software systems are functioning correctly. However, the underlying driver modules are numerous and complex, and may even be tested across systems. In this situation, it is difficult to locate problems by manually testing each one, thus reducing development efficiency. Summary of the Invention

[0003] In view of this, embodiments of this application provide a testing method for a domain controller. This method can perform automated testing on multiple operating systems, realize cross-operating system testing, and improve the development efficiency of multiple operating systems on a domain controller.

[0004] The technical solution of this application is implemented as follows:

[0005] This application provides a testing method for a domain controller, wherein the domain controller includes at least a first processor and a second processor, the first processor having at least one first operating system deployed on it, and the second processor having at least one second operating system deployed on it, including:

[0006] Obtain test data for the first operating system and the second operating system;

[0007] Based on the test data, the first operating system and the second operating system are tested respectively to obtain the test results for each operating system; wherein, a network connection is established between the first operating system and the second operating system;

[0008] Output the test results.

[0009] This application provides a testing apparatus for a domain controller, used to test the domain controller. The domain controller includes at least a first processor and a second processor. At least one first operating system is deployed on the first processor, and at least one second operating system is deployed on the second processor. The apparatus is characterized by including:

[0010] The acquisition module is used to acquire test data of the first operating system and the second operating system;

[0011] The testing module is used to test the first operating system and the second operating system respectively based on the test data, and obtain the test results corresponding to each operating system; a network connection is established between the first operating system and the second operating system;

[0012] The test result output module is used to output the test results.

[0013] This application provides a test device for a domain controller, including:

[0014] Memory, used to store test instructions for the executable domain controller;

[0015] The processor, when executing test instructions for the executable domain controller stored in the memory, implements the domain controller test method provided in the embodiments of this application.

[0016] This application provides a computer-readable storage medium storing computer-executable instructions configured to perform the test steps of the domain controller described above.

[0017] This application provides a testing method, apparatus, device, and computer-readable storage medium for a domain controller. Using this technical solution, firstly, test data for a first operating system and a second operating system are acquired; then, based on the test data, the first and second operating systems are tested respectively to obtain test results for each operating system; finally, the test results for each operating system are output. Thus, by automating the testing of the first and second operating systems, cross-operating system testing is achieved, improving the development efficiency of multi-operating system applications on a domain controller. Attached Figure Description

[0018] Figure 1 A flowchart illustrating a testing method for a domain controller provided in an embodiment of this application;

[0019] Figure 2 A flowchart illustrating another domain controller testing method provided in an embodiment of this application;

[0020] Figure 3 A flowchart illustrating a testing method for an intelligent domain controller provided in an embodiment of this application;

[0021] Figure 4 A schematic diagram of the composition structure of a multi-operating system provided in an embodiment of this application;

[0022] Figure 5 A schematic diagram of the composition structure of a test device for a domain controller provided in an embodiment of this application;

[0023] Figure 6 This is a schematic diagram of the composition structure of a test device for a domain controller provided in an embodiment of this application. Detailed Implementation

[0024] The technical solutions in the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings.

[0025] To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described below in conjunction with the accompanying drawings. The described embodiments should not be regarded as limitations on this application. All other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0026] In the following description, references to “some embodiments” or “other embodiments” describe a subset of all possible embodiments. However, it is understood that “some embodiments” or “other embodiments” may be the same subset or different subsets of all possible embodiments and may be combined with each other without conflict.

[0027] In the following description, the terms "first, second, third" are used merely to distinguish similar objects and do not represent a specific ordering of objects. It is understood that "first, second, third" may be interchanged in a specific order or sequence where permitted, so that the embodiments of this application described herein can be implemented in an order other than that illustrated or described herein.

[0028] Unless otherwise defined, all technical and scientific terms used herein have the same meaning as commonly understood by one of ordinary skill in the art to which this application belongs. The terminology used herein is for the purpose of describing embodiments of this application only and is not intended to limit this application.

[0029] Based on the problems existing in related technologies, this application provides a testing method for a domain controller. The domain controller includes at least a first processor and a second processor. At least one first operating system is deployed on the first processor, and at least one second operating system is deployed on the second processor.

[0030] In some embodiments, the first operating system and the second operating system may be of the same or different types, and the functions performed by the first operating system and the second operating system may be the same or different. The first operating system and the second operating system may include Android, Apple operating system, HarmonyOS, Linux, etc.

[0031] In some embodiments, the first operating system may include a first Android operating system and a first real-time operating system, and the second operating system may include a second Android operating system and a second real-time operating system. Both the first and second Android operating systems are Android operating systems, and both the first and second real-time operating systems may be QNX (Quick UNIX) operating systems. The first and second Android operating systems can be used to process complex data or data with low real-time requirements, while the first and second real-time operating systems can be used to process real-time data.

[0032] For example, in some embodiments, the domain controller may include two processor chips that interact with each other through a video conversion chip. The processor chip may be an SA8155P chip, and each SA8155P chip runs two systems: an Android operating system and a QNX system. That is, the A-core SA8155P runs a first Android operating system and a first real-time operating system, and the B-core SA8155P runs a second Android operating system and a second real-time operating system.

[0033] like Figure 1 The diagram shown is a flowchart illustrating a testing method for a domain controller provided in an embodiment of this application. The method includes the following steps:

[0034] S101. Obtain test data for the first and second operating systems.

[0035] In some embodiments, test data for testing the first and second operating systems can be used to test the first and second operating systems. This test data can be pre-set test cases, test scripts, or test configuration files. The test data includes test data corresponding to the first operating system and test data corresponding to the second operating system. In practice, because different operating systems include different numbers and types of functional modules, or even if they contain the same functional modules, the sub-functions within the same functional module may differ (i.e., the sub-functions of the same functional module are different), the test data corresponding to different operating systems will be different.

[0036] S102. Based on the test data, test the first operating system and the second operating system respectively, and obtain the test results for each operating system.

[0037] In some embodiments, a network connection is established between the first operating system and the second operating system. This communication connection enables cross-operating system testing. For example, in some embodiments, the testing order for the various operating systems may be to test the first operating system first, followed by the second operating system.

[0038] In some embodiments, before testing the first operating system and the second operating system, it is necessary to ensure that both the first operating system and the second operating system are working properly. That is, after each operating system is started or in a running state, the first operating system and the second operating system can be tested sequentially based on the test data.

[0039] In some embodiments, if the first operating system includes a first Android operating system and a first real-time operating system, and the second operating system includes a second Android operating system and a second real-time operating system, after determining that the first Android operating system, the first real-time operating system, the second real-time operating system, and the second Android operating system have started or are in a running state, the test terminal can transmit test data to the first Android operating system through the Android Debug Bridge (ADB), and then test the first Android operating system, the first real-time operating system, the second real-time operating system, and the second Android operating system in sequence. Before testing each operating system, it is required to ensure that the ADB connection status is normal.

[0040] S103, Output the test results.

[0041] In some embodiments, the test results of each operating system include test logs, images captured during the test, etc. After obtaining the test results, the test results can be analyzed to determine whether the functions of each driver module of each operating system are normal, and a test report can be generated for users to view.

[0042] In this embodiment, firstly, test data for the first and second operating systems are acquired; then, based on the test data, the first and second operating systems are tested respectively to obtain test results for each operating system; finally, the test results for each operating system are output. Thus, by automating the testing of the first and second operating systems, cross-operating system testing is achieved, improving the development efficiency of multiple operating systems on a domain controller.

[0043] In some embodiments of this application, the first operating system includes a first Android operating system and a first real-time operating system, and the second operating system includes a second Android operating system and a second real-time operating system; network connections are established between the first Android operating system and the first real-time operating system, the first real-time operating system and the second real-time operating system, and the second Android operating system and the second real-time operating system; based on this, the first operating system and the second operating system are tested based on test data to obtain the test results corresponding to each operating system, that is, step S102 can be implemented by the following step S1021, which is described below.

[0044] S1021. Based on the test data, the first Android operating system, the first real-time operating system, the second real-time operating system, and the second Android operating system are tested in sequence to obtain the test results for each operating system.

[0045] In some embodiments, test data can first be transmitted to a first Android operating system for testing. Then, through network connections between the first Android operating system and a first real-time operating system, between the first real-time operating system and a second real-time operating system, and between the second Android operating system and a second real-time operating system, the testing of the first real-time operating system, the second real-time operating system, and the second Android operating system can be sequentially achieved. In practice, the network connection between the various operating systems can be a telnet connection.

[0046] In some embodiments of this application, the domain controller testing method provided in this application can be executed by a test terminal. The following description uses a test terminal to execute the domain controller testing method provided in this application.

[0047] In some embodiments of this application, the test data of the first operating system and the second operating system are obtained, i.e., step S101 can be implemented by the following steps S1011A to 1012A, and each step is described below.

[0048] S1011A: Obtain test commands for the domain controller.

[0049] In some embodiments, the test instruction is used to indicate that the domain controller needs to be tested, such as testing a first operating system and a second operating system. The test instruction may be issued by a user, developer, or technician, or by an automated test software on a test terminal, which may be installed on a test terminal or other electronic device that has established a communication connection with the domain controller.

[0050] In some embodiments, test instructions may be generated periodically, for example, controlled by setting a clock to generate test instructions every 24 hours, 48 ​​hours, a week, or a month. In other embodiments, test instructions may also be generated after detecting the deployment of new features on the domain controller, such as if the domain controller itself has undergone a version update, the system running on the domain controller has been updated, or a system with new features has been deployed on the domain controller. In these cases, test instructions can be automatically generated. The scenario of detecting the deployment of new features on the domain controller is merely illustrative and is not intended to limit the scope of this application.

[0051] S1012A: In response to a test command, acquire test data for the first and second operating systems.

[0052] In some embodiments, after receiving test instructions for the first and second operating systems, a response can be made to the test instructions, including parsing the test instructions, determining the operations to be performed by the test instructions, and obtaining test data for testing the first and second operating systems. This test data can be pre-set test cases, test scripts, or test configuration files. The test data includes test data corresponding to the first operating system and test data corresponding to the second operating system. In practice, because different operating systems include different numbers and types of functional modules, or even if they contain the same functional modules, the sub-functions within the same functional module may differ (i.e., the sub-functions of the same functional module are different), the test data corresponding to different operating systems will be different.

[0053] In some embodiments of this application, based on test data, the first Android operating system, the first real-time operating system, the second real-time operating system and the second Android operating system are tested in sequence to obtain the test results corresponding to each operating system. That is, step S1021 can be implemented by the following steps S201A to S202A. Each step is described below.

[0054] S201A, based on the network connection between the test terminal and the first Android operating system of the domain controller, sends test data to the domain controller, so that the domain controller tests the first Android operating system, the first real-time operating system, the second real-time operating system and the second Android operating system in sequence.

[0055] In some embodiments, the network connection between the test terminal and the first Android operating system of the domain controller can be an ADB connection. After the test terminal obtains the test data of the first operating system and the second operating system, it can send the test data to the domain controller through the ADB connection. After receiving the test data, the domain controller can test the first Android operating system, the first real-time operating system, the second real-time operating system and the second Android operating system in sequence based on the test data.

[0056] S202A, based on the network connection between the test terminal and the second Android operating system of the domain controller, receives the test results of each operating system sent by the domain controller.

[0057] In some embodiments, the network connection between the test terminal and the second Android operation of the domain controller can be an ADB connection. After the domain controller tests the first Android operating system, the first real-time operating system, the second real-time operating system, and the second Android operating system in sequence, it can send the test results of each operating system to the test terminal through the ADB connection between the test terminal and the second Android operation of the domain controller.

[0058] In some embodiments of this application, the test results corresponding to each operating system are output, that is, step S103 can be implemented by the following steps S1031A to S1032A. Each step is described below.

[0059] S1031A. Determine the final test results of the domain controller based on the test results corresponding to each operating system.

[0060] In some embodiments, the test results of each operating system may include whether the test passed or failed. In practice, the test terminal can obtain the test results of the first Android operating system, the test results of the first real-time operating system, the test results of the second real-time operating system, and the test results of the second Android operating system. In addition, based on the test results of each operating system, the test terminal can determine the test results of the domain controller corresponding to each operating system.

[0061] In some embodiments, the final test result of the domain controller is determined based on the test results corresponding to each operating system. This can be as follows: if all operating systems pass the test, the domain controller is determined to have passed the test; if all operating systems fail the test, the domain controller is determined to have failed the test; or if at least one of the operating systems fails the test, the domain controller is determined to have failed the test.

[0062] In other embodiments, the final test result of the domain controller is determined based on the test results corresponding to each operating system. This can be based on the ratio of pass to fail in each operating system to determine whether the domain controller passes or fails the test. For example, if the ratio of pass to fail in each operating system is greater than or equal to 1:1, then the domain controller is determined to have passed the test.

[0063] For example, if the first Android operating system and the first real-time operating system pass the test, while the second real-time operating system and the second Android operating system fail the test, i.e., the ratio of passing to failing tests for each operating system is 1:1, then the domain controller test is determined to be passed. If the first Android operating system passes the test, while the first real-time operating system, the second real-time operating system, and the second Android operating system fail the test, i.e., the ratio of passing to failing tests for each operating system is 1:3, then the domain controller test is determined to be failed. The passing and failing ratios and the pass / fail status of each operating system are merely illustrative examples, and this application does not limit them.

[0064] In some embodiments, determining the final test result of the domain controller based on the test results corresponding to each operating system can be achieved by determining whether the domain controller passes or fails the test based on the test results of a preset type of operating system. For example, if the preset type of operating system is Android, if the Android operating system among the various operating systems passes the test, then the domain controller test is determined to have passed; if at least one Android operating system among the various operating systems fails the test, then the domain controller test is determined to have failed. For example, if the first Android operating system, the first real-time operating system, and the second real-time operating system all pass the test, but the second Android operating system fails, then the domain controller test is determined to have failed. The description of the preset type of operating system and the pass / fail status of each operating system is merely illustrative and is not intended to limit the scope of this application.

[0065] S1032A displays the test results for each operating system and the final test results for the domain controller on the user interface.

[0066] In some embodiments, after obtaining the test results for each operating system and the final test results for the domain controller, information on whether the tests for each operating system and the domain controller passed or failed can be displayed on the user interface. In some embodiments, the test results for each operating system may also include test logs, images captured during the test, etc., and a test report can be generated based on the test logs and images captured during the test and stored in a shared path for users to view.

[0067] In some embodiments of this application, the domain controller testing method provided in this application can be executed by the domain controller. The following description uses the domain controller executing the domain controller testing method provided in this application.

[0068] In some embodiments of this application, obtaining test data of the first operating system and the second operating system, i.e., step S101, can be achieved by the following step S1011B, which will be described below.

[0069] S1011B, based on the network connection between the test terminal and the first Android operating system of the domain controller, receives test data sent by the test terminal.

[0070] In some embodiments, the network connection between the test terminal and the first Android operating system of the domain controller can be an ADB connection. After the test terminal obtains the test data of each operating system, it can send the test data of each operating system to the domain controller through the ADB connection, and the domain controller can receive the test data.

[0071] In some embodiments, outputting test results, i.e., step S103, can be achieved through the following step S1031B, which will be described below. S1031B: Based on the network connection between the test terminal and the second Android operating system of the domain controller, send the test results of each operating system to the test terminal.

[0072] In some embodiments, the network connection between the test terminal and the second Android operating system of the domain controller can be an ADB connection. After obtaining the test results of each operating system, the domain controller can send the test results to the test terminal through the ADB connection between the test terminal and the second Android operating system of the domain controller, so that users can view the test results of each operating system through the test terminal.

[0073] In some embodiments of this application, based on test data, the first Android operating system, the first real-time operating system, the second real-time operating system, and the second Android operating system are tested sequentially to obtain the test results corresponding to each operating system. That is, step S1021 can be implemented by the following steps S201B to S205B. Each step is described below.

[0074] S201B: Based on the identification information of the first Android operating system, obtain the first target test data from the test data, use the first target test data to test the first Android operating system, and obtain the test results of the first Android operating system.

[0075] It should be noted that the first target test data is the test data of the first Android operating system. Since the test data of different operating systems can be distinguished by the operating system's identification information, the test data of the first Android operating system can be determined based on the identification information of the first Android operating system. Then, the test data of the first Android operating system is used to test the first Android operating system to obtain the test results of the first Android operating system.

[0076] In some embodiments, the SA8155P chip running the first Android operating system integrates all external interfaces, such as camera interface and display interface, which can directly receive data collected from external devices or send data to external devices. At the same time, the ADB connection of the vehicle terminal is established with the Android operating system. Therefore, test data can be transmitted to the first Android operating system, and the first Android operating system can be tested first.

[0077] In some embodiments, the first Android operating system includes a camera module, a display module, etc. During testing, each module can be tested separately, or, if each module has data pins, all modules can be tested simultaneously. The test results obtained after testing the first Android operating system can be stored in the shared storage area of ​​the in-vehicle device. The test results may include test logs generated during the test, captured images, and other information.

[0078] S202B transmits the first candidate test data to the first real-time operating system via a network connection between the first Android operating system and the first real-time operating system.

[0079] In some embodiments, the first candidate test data includes test data from a first real-time operating system, a second real-time operating system, and a second Android operating system. The first Android operating system and the first real-time operating system can be connected via telnet. After testing the first Android operating system, the first candidate test data can be transferred to the first real-time operating system through the network connection between the first Android operating system and the first real-time operating system.

[0080] S203B: Based on the identification information of the first real-time operating system, obtain the second target test data from the first candidate test data, use the second target test data to test the first real-time operating system, and obtain the test results of the first real-time operating system.

[0081] In some embodiments, the second target test data is test data of the first real-time operating system. After determining the identification information of the first real-time operating system, the test data of the first real-time operating system can be determined from the first candidate test data based on the identification information. Then, the first real-time operating system is tested based on the test data of the first real-time operating system to obtain the test results of the first real-time operating system. In implementation, the test results of the first real-time operating system can also be stored in a shared storage area, and the test results of the first Android operating system and the test results of the first real-time operating system can be stored in different locations in the shared storage area.

[0082] S204B: The second candidate test data is transmitted to the second real-time operating system via a network connection between the first and second real-time operating systems.

[0083] In some embodiments, the second candidate test data includes test data for a second real-time operating system and a second Android operating system. After testing the first real-time operating system is completed, the test data for the second real-time operating system and the second Android operating system can be transferred to the second real-time operating system via a network connection between the first and second real-time operating systems, so as to facilitate subsequent testing of the second real-time operating system and the second Android operating system.

[0084] S205B: Based on the second candidate test data, test the candidate operating system and obtain the test results of the candidate operating system.

[0085] In some embodiments, the candidate operating system includes a second real-time operating system and a second Android operating system. After the second candidate test data is transmitted to the second real-time operating system, the test data of the second real-time operating system can be determined from the candidate test data based on the identification information of the second real-time operating system. The second real-time operating system is then tested based on the test data to obtain the test results. Alternatively, the test data of the second Android operating system can be transmitted to the second Android operating system via a network connection between the second real-time operating system and the second Android operating system, and the second Android operating system can be tested to obtain the test results.

[0086] In some embodiments of this application, the candidate operating system is tested based on the second candidate test data and the identification information of the candidate operating system to obtain the test result of the candidate operating system. That is, step S205B can be implemented by the following steps S2051B to S2053B. Each step is described below.

[0087] S2051B: Based on the identification information of the second real-time operating system, obtain the third target test data from the second candidate test data, use the third target test data to test the second real-time operating system, and obtain the test results of the second real-time operating system.

[0088] In some embodiments, the third target test data is test data of the second Android operating system. After the second candidate test data is passed to the second real-time operating system, the test data of the second real-time operating system can be obtained from the candidate test data, i.e., the third target test data, according to the identification information of the second real-time system. Then, based on the third target test data, the second real-time operating system is tested to obtain the test data of the second real-time operating system, and the test data of the second real-time operating system is stored in the shared storage area of ​​the test terminal.

[0089] S2052B transmits the third candidate test data to the second Android operating system via a network connection between the second real-time operating system and the second Android operating system.

[0090] In some embodiments, the third candidate test data includes test data for a second Android operating system. The candidate test data may exclude test data for the first Android operating system, the first real-time operating system, and the second real-time operating system.

[0091] In other embodiments, before the second candidate test data is transferred from the second real-time operating system to the second Android operating system, the network connection between the second real-time operating system and the second Android operating system may have been tested. After confirming that the network connection between the two is normal, the third candidate test data can be transferred to the second Android test data so that the second Android operating system can be tested based on the third candidate test data and the identification information of the second Android operating system.

[0092] S2053B: Based on the identification information of the second Android operating system, obtain the test data of the second Android operating system from the third candidate test data, use the test data of the second Android operating system to test the second Android operating system, and obtain the test results of the second Android operating system.

[0093] In some embodiments, the third candidate test data may include other test data besides the second Android operating system. Therefore, the test data of the second Android operating system can be determined from the third candidate test data based on the identification information of the second Android operating system. Then, the second Android operating system is tested based on the test data of the second Android operating system to obtain the test results of the second Android operating system. The test results of the second Android operating system are then stored in the shared storage area of ​​the test terminal.

[0094] In some embodiments, the test results of the first Android operating system, the test results of the first real-time operating system, the test results of the second Android operating system, and the test results of the second real-time operating system can all be stored in a shared storage area, and the test results of each operating system can be stored in different locations within the shared storage area. In practice, the identification information and test results of the same operating system can be stored correspondingly in the shared storage area to distinguish the test results of different operating systems.

[0095] Understandably, by storing the test results of the first Android operating system, the test results of the first real-time operating system, the test results of the second Android operating system, and the test results of the second real-time operating system in the shared storage area, it is convenient for developers or relevant technical personnel to view the test results of different operating systems through the storage path corresponding to the shared storage area.

[0096] In some embodiments of this application, such as Figure 2 The diagram shown illustrates a flowchart of another domain controller testing method provided in this application. This method involves the interaction between a test terminal and a domain controller, and includes:

[0097] S301. The test terminal obtains test commands for the domain controller.

[0098] In some embodiments, the test instruction is used to indicate that the domain controller needs to be tested, such as testing a first operating system and a second operating system. The test instruction may be issued by a user, developer, or technician, or by an automated test software on a test terminal, which may be installed on a test terminal or other electronic device that has established a communication connection with the domain controller.

[0099] In some embodiments, test instructions may be generated periodically, for example, controlled by setting a clock to generate them once every 24 hours, 48 ​​hours, a week, or a month. In other embodiments, test instructions may also be generated after a new feature is detected on the domain controller. For example, if the domain controller itself is updated, or the system running on the domain controller is updated, or a system with new features is deployed on the domain controller, test instructions may be generated automatically.

[0100] S302. The test terminal responds to the test command and obtains test data from the first operating system and the second operating system.

[0101] In some embodiments, after receiving test instructions for the first operating system and the second operating system, the test terminal can respond to the test instructions, including parsing the test instructions, determining the operations to be performed by the test instructions, and obtaining test data for testing the first operating system and the second operating system. The test data may be pre-set test cases, test scripts, or test configuration files.

[0102] S303: The test terminal sends test data to the domain controller based on the network connection between the test terminal and the first Android operating system of the domain controller.

[0103] In some embodiments, the first operating system includes a first Android operating system and a first real-time operating system, and the second operating system includes a second Android operating system and a second real-time operating system. The network connection between the test terminal and the first Android operating system of the domain controller can be an ADB connection. After the test terminal obtains the test data of the first operating system and the second operating system, it can send the test data to the domain controller through the ADB connection.

[0104] S304, the domain controller sequentially tests the first Android operating system, the first real-time operating system, the second real-time operating system, and the second Android operating system based on the test data, and obtains the test results for each operating system.

[0105] In some embodiments, after receiving test data sent by the test terminal, the domain controller can sequentially test the first Android operating system, the first real-time operating system, the second real-time operating system, and the second Android operating system based on the test data, and obtain test data for each operating system.

[0106] S305, the domain controller sends the test results of each operating system to the test terminal based on the network connection between the test terminal and the domain controller's second Android operating system.

[0107] In some embodiments, the network connection between the test terminal and the second Android operating system of the domain controller can be an ADB connection. After obtaining the test results of each operating system, the domain controller can send the test results to the test terminal through the ADB connection between the test terminal and the second Android operating system of the domain controller, so that users can view the test results of each operating system through the test terminal.

[0108] S306. The test terminal determines the final test result of the domain controller based on the test results corresponding to each operating system, and displays the test results corresponding to each operating system and the final test result of the domain controller on the user interface.

[0109] In some embodiments, the test results of each operating system may include whether the test passed or failed. In practice, the test terminal can obtain the test results of the first Android operating system, the test results of the first real-time operating system, the test results of the second real-time operating system, and the test results of the second Android operating system. In addition, based on the test results of each operating system, the test terminal can determine the test results of the domain controller corresponding to each operating system.

[0110] In some embodiments, the final test result of the domain controller is determined based on the test results corresponding to each operating system. This can be as follows: if all operating systems pass the test, the domain controller is determined to have passed the test; if all operating systems fail the test, the domain controller is determined to have failed the test; or if at least one of the operating systems fails the test, the domain controller is determined to have failed the test.

[0111] In other embodiments, the final test result of the domain controller is determined based on the test results corresponding to each operating system. This can be based on the ratio of pass to fail in each operating system to determine whether the domain controller passes or fails the test. For example, if the ratio of pass to fail in each operating system is greater than or equal to 1:1, then the domain controller is determined to have passed the test.

[0112] For example, if the first Android operating system and the first real-time operating system pass the test, while the second real-time operating system and the second Android operating system fail the test, i.e., the ratio of passing to failing tests for each operating system is 1:1, then the domain controller test is determined to be passed. If the first Android operating system passes the test, while the first real-time operating system, the second real-time operating system, and the second Android operating system fail the test, i.e., the ratio of passing to failing tests for each operating system is 1:3, then the domain controller test is determined to be failed. The passing and failing ratios and the pass / fail status of each operating system are merely illustrative examples, and this application does not limit them.

[0113] In some embodiments, determining the final test result of the domain controller based on the test results corresponding to each operating system can be achieved by determining whether the domain controller passes or fails the test based on the test results of a preset type of operating system. For example, if the preset type of operating system is Android, if the Android operating system among the various operating systems passes the test, then the domain controller test is determined to have passed; if at least one Android operating system among the various operating systems fails the test, then the domain controller test is determined to have failed. For example, if the first Android operating system, the first real-time operating system, and the second real-time operating system all pass the test, but the second Android operating system fails, then the domain controller test is determined to have failed. The description of the preset type of operating system and the pass / fail status of each operating system is merely illustrative and is not intended to limit the scope of this application.

[0114] In some embodiments, after obtaining the test results for each operating system and the final test results for the domain controller, the test terminal can display information on whether the tests for each operating system and the domain controller passed or failed on the user interface. In some embodiments, the test results for each operating system may also include test logs, images captured during the test, etc., and a test report can be generated based on the test logs and images captured during the test and stored in a shared path for users to view.

[0115] In this embodiment, firstly, test data for a first operating system and a second operating system are received and acquired; then, based on the test data, the first and second operating systems are tested respectively to obtain test results for each operating system; finally, the test results for each operating system are output. Thus, by automating the testing of the first and second operating systems, cross-operating system testing is achieved, improving the development efficiency of multiple operating systems on a domain controller.

[0116] The implementation process of the application embodiments in practical application scenarios is described below.

[0117] In some embodiments, such as Figure 3 The diagram shown illustrates a flowchart of a testing method for an intelligent domain controller provided in this application. This method can automate the testing of two dual operating systems: a QNX operating system with core A (equivalent to the "first Android operating system" in other embodiments) and a QNX operating system with core B (equivalent to the "second real-time operating system" in other embodiments); and an Android operating system with core A (equivalent to the "first Android operating system" in other embodiments) and an Android operating system with core B (equivalent to the "second Android operating system" in other embodiments). Specifically, the dual operating systems can be... Figure 4 The diagram shows the 8155A Android operating system, 8155A QNX operating system, 8155B Android operating system, and 8155B QNX operating system. Here, 8155 represents the SA8155P chip, and A and B represent the A-core and B-core of the SA8155P chip, respectively. That is, there are two SA8155P chips. The chips corresponding to the 8155A Android operating system and the 8155A QNX operating system are A-core; the chips corresponding to the 8155B Android operating system and the 8155B QNX operating system are B-core. The testing method for the intelligent domain controller provided in this application embodiment can be implemented through the following steps S401 to S404, which are described below.

[0118] S401. Execute the test script (equivalent to "test data" in other embodiments) on the test terminal.

[0119] In some embodiments, the test script may be a test configuration file or test case pre-stored on the test terminal. The test script includes test scripts corresponding to the 8155A Android operating system (Android operating system with A core), the 8155A QNX operating system (QNX operating system with A core), the 8155B Android operating system (Android operating system with B core), and the 8155B QNX operating system (QNX operating system with B core). Different test scripts can be distinguished by the identification information of the operating system, which may be the IP address of the operating system.

[0120] In practice, different operating systems have different numbers and types of modules, or the same module may perform different functions, such as... Figure 4 As shown, even though all four operating systems include a Camera module, the functions implemented by each Camera module differ, or different operating systems execute different sub-functions corresponding to the Camera module. In some embodiments, other modules in the QNX operating system may include an audio module, etc.; other modules in the Android operating system may include a display module, etc. Therefore, due to the differences in the functions performed by different operating systems, the test scripts corresponding to different operating systems are different.

[0121] S402: The test script automatically enters the Android operating system through the Android debugging bridge, tests different items, and generates test results.

[0122] In some embodiments, such as Figure 4 The test script shown can transmit data to the Android operating system of the A core via an ADB connection between the test terminal and the A core (equivalent to "the test terminal transmitting test data to the first Android operating system of the domain controller via the Android debugging bridge" in other embodiments). The file corresponding to the test script or test configuration file of the Android operating system of the A core is Android_A_test.h (equivalent to "first target test data" in other embodiments). The various driver modules (including the camera module and other modules) in the Android operating system of the A core are tested through this test configuration file to obtain the test results of the Android operating system of the A core, and the test results are placed in a specified location, which can be the shared storage area of ​​the test terminal.

[0123] After testing the S403 and Android operating systems, the test script automatically entered the QNX operating system via telnet, tested different items, and generated test results.

[0124] In some embodiments, after testing the Android operating system of the A-core is completed, the test script enters the QNX operating system of the A-core via telnet. In this environment, corresponding tests are performed according to each driver module (including the Camera module and other modules), the test results are placed in the shared storage area, and then the QNX operating system of the A-core is exited.

[0125] In some embodiments, the test scripts transmitted to the QNX operating system of core A may include not only the test scripts of the QNX operating system of core A itself, but also the test scripts of the Android operating system of core B and the QNX operating system of core B. Therefore, in practice, the test script QNX_A_test.h corresponding to the QNX operating system of core A can be determined according to the IP of the QNX operating system of core A (equivalent to the "second target test data" in other embodiments).

[0126] In some embodiments, such as Figure 4 As shown, after the QNX operating system of core A is tested, the test scripts for the QNX operating system of core B and the Android operating system of core B can be accessed via telnet into the QNX of core B. Based on the IP address of the QNX operating system of core B, the test script QNX_B_test.h (equivalent to the "third target test data" in other embodiments) is determined. In this environment, each driver module is tested according to QNX_B_test.h, and the test results are placed in a designated location (shared storage area) via a shared path. Then, the Android operating system of core B is accessed via telnet, and in this environment, each driver module is tested according to Android_B_test.h (equivalent to the "second Android operating system test data" in other embodiments), and the test results are placed in a designated location via a shared path.

[0127] In some embodiments, such as Figure 4 As shown, data stream transmission between an Android operating system with core A and core B, as well as between an Android operating system with core A and core B, can be achieved through the Camera Serial Interface (CSI), Display Serial Interface (DSI), and Display Port (DP). During the testing of each operating system, the network connectivity between two operating systems that interact with each other can be tested.

[0128] S404. Upload the test results to the test terminal for analysis and report generation.

[0129] In some embodiments, such as Figure 4 As shown, once all four operating systems have been tested, the test results at the specified locations are automatically stored on the PC (test terminal), and the results are statistically analyzed to facilitate testers' viewing of the final test results. The test results include logs and screenshots from the test process. Based on the test results, it can be determined whether the test of each operating system was successful and whether the functions of each driver module in each operating system are normal.

[0130] Understandably, by sequentially testing the Android operating system with core A, the QNX operating system with core A, the QNX operating system with core B, and the Android operating system with core B, automated testing of the underlying driver links for different operating systems can be completed. At the same time, this method enables cross-operating system testing, which can not only improve the development efficiency of multiple operating systems, but also solve the problem of not being able to determine whether a driver module is working properly due to a lack of understanding of the driver modules in the operating system.

[0131] In this embodiment, firstly, test data for the first and second operating systems are acquired; then, based on the test data, the first and second operating systems are tested respectively to obtain test results for each operating system; finally, the test results for each operating system are output. Thus, by automating the testing of the first and second operating systems, cross-operating system testing is achieved, improving the development efficiency of multiple operating systems on a domain controller.

[0132] This application also provides a testing apparatus for a domain controller, used to test a domain controller, wherein the domain controller includes at least a first processor and a second processor, the first processor having at least one first operating system deployed on it, and the second processor having at least one second operating system deployed on it. Figure 5 This is a schematic diagram of the composition structure of a test device for a domain controller provided in an embodiment of this application, as shown below. Figure 5 As shown, the domain controller test apparatus 500 includes:

[0133] The acquisition module 501 is used to acquire test data of the first operating system and the second operating system;

[0134] Test module 502 is used to test the first operating system and the second operating system respectively based on the test data, and obtain the test results corresponding to each operating system; a network connection is established between the first operating system and the second operating system;

[0135] The test result output module 503 is used to output the test results.

[0136] In some embodiments, the first operating system includes a first Android operating system and a first real-time operating system, and the second operating system includes a second Android operating system and a second real-time operating system; the test module 502 includes:

[0137] The first testing submodule is used to test the first Android operating system, the first real-time operating system, the second real-time operating system, and the second Android operating system sequentially based on the test data, and obtain the test results corresponding to each operating system.

[0138] In some embodiments, the first test submodule includes:

[0139] The first test unit is used to send the test data to the domain controller based on the network connection between the test terminal and the first Android operating system of the domain controller, so that the domain controller sequentially tests the first Android operating system, the first real-time operating system, the second real-time operating system and the second Android operating system.

[0140] The first receiving unit is used to receive the test results of each operating system sent by the domain controller based on the network connection between the test terminal and the second Android operating system of the domain controller.

[0141] In some embodiments, the test result output module 503 further includes:

[0142] The first determining submodule is used to determine the final test result of the domain controller based on the test results corresponding to each operating system;

[0143] The display submodule is used to display the test results corresponding to each operating system and the final test results of the domain controller on the user interface.

[0144] In some embodiments, the acquisition module 501 includes:

[0145] The first acquisition submodule is used to acquire test instructions for the domain controller; the test instructions are initiated by the user, generated periodically, or generated after detecting that the domain controller has deployed new features;

[0146] The second acquisition submodule is used to acquire test data of the first operating system and the second operating system in response to the test command.

[0147] In some embodiments of this application, the acquisition module 501 further includes:

[0148] The first receiving submodule is used to receive the test data sent by the test terminal based on the network connection between the test terminal and the first Android operating system of the domain controller;

[0149] Correspondingly, the test result output module 503 also includes:

[0150] The first sending submodule is used to send the test results of each operating system to the test terminal based on the network connection between the test terminal and the second Android operating system of the domain controller.

[0151] In some embodiments, the first test submodule further includes:

[0152] The second testing unit is used to obtain first target test data from the test data based on the identification information of the first Android operating system, and to test the first Android operating system using the first target test data to obtain the test results of the first Android operating system; the first target test data is the test data of the first Android operating system.

[0153] The first sending unit is configured to transmit first candidate test data to the first real-time operating system via a network connection between the first Android operating system and the first real-time operating system; the first candidate test data includes test data from the first real-time operating system, the second real-time operating system, and the second Android operating system.

[0154] The third testing unit is used to obtain second target test data from the first candidate test data based on the identification information of the first real-time operating system, and to test the first real-time operating system using the second target test data to obtain the test results of the first real-time operating system; the second target test data is the test data of the first real-time operating system.

[0155] The second sending unit is used to transmit the second candidate test data to the second real-time operating system through a network connection between the first real-time operating system and the second real-time operating system; the second candidate test data includes test data from the second real-time operating system and the second Android operating system;

[0156] The fourth testing unit is used to test the candidate operating system based on the second candidate test data and obtain the test results of the candidate operating system; the candidate operating system includes the second real-time operating system and the second Android operating system.

[0157] In some embodiments, the fourth test unit further includes:

[0158] The first testing subunit is used to obtain third target test data from the second candidate test data based on the identification information of the second real-time operating system, and to test the second real-time operating system using the third target test data to obtain the test results of the second real-time operating system; the third target test data is the test data of the second Android operating system.

[0159] A sending subunit is configured to transmit third candidate test data to the second Android operating system via a network connection between the second real-time operating system and the second Android operating system; the third candidate test data includes test data from the second Android operating system.

[0160] The second testing subunit is used to obtain the test data of the second Android operating system from the third candidate test data based on the identification information of the second Android operating system, and to test the second Android operating system using the test data of the second Android operating system to obtain the test result of the second Android operating system.

[0161] It should be noted that the description of the domain controller testing device in this application embodiment is similar to the description of the method embodiment above, and has similar beneficial effects as the method embodiment; therefore, it will not be repeated. For technical details not disclosed in this device embodiment, please refer to the description of the method embodiment of this application for understanding.

[0162] It should be noted that, in the embodiments of this application, if the above-described domain controller testing method is implemented as a software functional module and sold or used as an independent product, it can also be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the embodiments of this application, or the part that contributes to related solutions, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), magnetic disks, or optical disks. Thus, the embodiments of this application are not limited to any specific hardware and software combination.

[0163] Accordingly, embodiments of this application provide a computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the domain controller testing method provided in the above embodiments.

[0164] This application also provides a test device for a domain controller. Figure 6This is a schematic diagram of the composition structure of a test device for a domain controller provided in an embodiment of this application, as shown below. Figure 6 As shown, the test device 600 for the domain controller includes: a memory 601, a processor 602, a communication interface 603, and a communication bus 604. The memory 601 stores executable test instructions for the domain controller; the processor 602 executes the executable test instructions stored in the memory to implement the domain controller test method provided in the above embodiment.

[0165] The description of the test equipment and storage medium embodiments of the domain controller above is similar to the description of the method embodiments above, and has similar beneficial effects. For technical details not disclosed in the test equipment and storage medium embodiments of the domain controller in this application, please refer to the description of the method embodiments of this application for understanding.

[0166] It should be noted that, in this document, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising at least one…" does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes that element.

[0167] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can be implemented in other ways. The device embodiments described above are merely illustrative. For example, the division of units is only a logical functional division, and in actual implementation, there may be other division methods, such as: multiple units or components can be combined, or integrated into another system, or some features can be ignored or not executed. In addition, the coupling, direct coupling, or communication connection between the various components shown or discussed can be through some interfaces, and the indirect coupling or communication connection between devices or units can be electrical, mechanical, or other forms.

[0168] The units described above as separate components may or may not be physically separate. The components shown as units may or may not be physical units. They may be located in one place or distributed across multiple network units. Some or all of the units may be selected to achieve the purpose of this embodiment according to actual needs.

[0169] In addition, each functional unit in the various embodiments of this application can be integrated into one processing unit, or each unit can be a separate unit, or two or more units can be integrated into one unit; the integrated unit can be implemented in hardware or in the form of hardware plus software functional units.

[0170] Those skilled in the art will understand that all or part of the steps of the above method embodiments can be implemented by hardware related to program instructions. The aforementioned program can be stored in a computer-readable storage medium. When the program is executed, it performs the steps of the above method embodiments. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, ROMs, magnetic disks, or optical disks.

[0171] Alternatively, if the integrated units described above are implemented as software functional modules and sold or used as independent products, they can also be stored in a computer-readable storage medium. Based on this understanding, the technical solutions of the embodiments of this application, or the parts that contribute to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a product to execute all or part of the methods described in the various embodiments of this application. The aforementioned storage medium includes various media capable of storing program code, such as mobile storage devices, ROMs, magnetic disks, or optical disks.

[0172] The above description is merely an embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.

Claims

1. A testing method for a domain controller, the domain controller comprising at least a first processor and a second processor, wherein at least one first operating system is deployed on the first processor, and at least one second operating system is deployed on the second processor; the first operating system comprises a first Android operating system and a first real-time operating system, and the second operating system comprises a second Android operating system and a second real-time operating system, characterized in that, include: Obtain test data for the first operating system and the second operating system; The test data is first transmitted to the first Android operating system for testing. Then, through network connections between the first Android operating system and the first real-time operating system, the first real-time operating system and the second real-time operating system, and the second Android operating system and the second real-time operating system, the tests on the first Android operating system, the first real-time operating system, the second real-time operating system, and the second Android operating system are carried out sequentially to obtain the test results for each operating system. The network connection between the operating systems is a TELNET connection. Output the test results.

2. The method according to claim 1, characterized in that, When the method is executed by the test terminal, based on the test data, the first Android operating system, the first real-time operating system, the second real-time operating system, and the second Android operating system are tested sequentially to obtain the test results corresponding to each operating system, including: Based on the network connection between the test terminal and the first Android operating system of the domain controller, the test data is sent to the domain controller, so that the domain controller sequentially tests the first Android operating system, the first real-time operating system, the second real-time operating system and the second Android operating system. Based on the network connection between the test terminal and the second Android operating system of the domain controller, the test results of each operating system sent by the domain controller are received.

3. The method according to claim 2, characterized in that, The output of the test results includes: The final test result of the domain controller is determined based on the test results corresponding to each operating system. The user interface displays the test results for each operating system and the final test results for the domain controller.

4. The method according to claim 2, characterized in that, Obtain test data for the first operating system and the second operating system, including: Obtain test instructions for the domain controller; the test instructions may be initiated by a user, generated periodically, or generated after detecting the deployment of new features on the domain controller. In response to the test command, test data for the first operating system and the second operating system are obtained.

5. The method according to claim 1, characterized in that, When the method is executed by a domain controller, acquiring test data for the first operating system and the second operating system includes: Based on the network connection between the test terminal and the first Android operating system of the domain controller, the test data sent by the test terminal is received; The output of the test results includes: Based on the network connection between the test terminal and the second Android operating system of the domain controller, the test results of each operating system are sent to the test terminal.

6. The method according to claim 5, characterized in that, Based on the test data, the first Android operating system, the first real-time operating system, the second real-time operating system, and the second Android operating system were tested sequentially to obtain the test results for each operating system, including: Based on the identification information of the first Android operating system, first target test data is obtained from the test data, and the first Android operating system is tested using the first target test data to obtain the test results of the first Android operating system; the first target test data is the test data of the first Android operating system. The first candidate test data is transmitted to the first real-time operating system through a network connection between the first Android operating system and the first real-time operating system; the first candidate test data includes test data from the first real-time operating system, the second real-time operating system, and the second Android operating system. Based on the identification information of the first real-time operating system, second target test data is obtained from the first candidate test data, and the first real-time operating system is tested using the second target test data to obtain the test results of the first real-time operating system; the second target test data is the test data of the first real-time operating system. The second candidate test data is transmitted to the second real-time operating system through a network connection between the first real-time operating system and the second real-time operating system; the second candidate test data includes test data from the second real-time operating system and the second Android operating system. Based on the second candidate test data, the candidate operating systems are tested to obtain the test results of the candidate operating systems; the candidate operating systems include the second real-time operating system and the second Android operating system.

7. The method according to claim 6, characterized in that, The step of testing the candidate operating system based on the second candidate test data to obtain the test results of the candidate operating system includes: Based on the identification information of the second real-time operating system, third target test data is obtained from the second candidate test data, and the second real-time operating system is tested using the third target test data to obtain the test results of the second real-time operating system; the third target test data is the test data of the second Android operating system. The third candidate test data is transmitted to the second Android operating system via a network connection between the second real-time operating system and the second Android operating system; the third candidate test data includes the test data of the second Android operating system. Based on the identification information of the second Android operating system, test data of the second Android operating system is obtained from the third candidate test data. The test data of the second Android operating system is used to test the second Android operating system to obtain the test results of the second Android operating system.

8. A testing apparatus for a domain controller, the domain controller comprising at least a first processor and a second processor, wherein at least one first operating system is deployed on the first processor, and at least one second operating system is deployed on the second processor, the first operating system comprising a first Android operating system and a first real-time operating system, and the second operating system comprising a second Android operating system and a second real-time operating system, characterized in that, include: The acquisition module is used to acquire test data of the first operating system and the second operating system; The testing module is used to first transmit the test data to the first Android operating system for testing, and then transmit it through the network connection between the first Android operating system and the first real-time operating system, the network connection between the first real-time operating system and the second real-time operating system, and the network connection between the second Android operating system and the second real-time operating system, so as to sequentially realize the testing of the first Android operating system, the first real-time operating system, the second real-time operating system and the second Android operating system, and obtain the test results corresponding to each operating system. The network connection between different operating systems is a TELNET connection; The test result output module is used to output the test results.

9. A test device for a domain controller, comprising: Memory, used to store test instructions for the executable domain controller; A processor, when executing test instructions for an executable domain controller stored in the memory, implements the method of any one of claims 1 to 7.