Airborne display control software automatic test system and method based on digital simulation
By designing an automatic test system for onboard display and control software based on digital simulation, using automatic execution tools and image comparison technology, the problems of low manual operation efficiency and difficult test reproduction in the existing technology are solved, and efficient and automated onboard software testing are achieved.
Patent Information
- Application Number
- CN202411913617.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-12-24
- Publication Date
- 2025-04-25
AI Technical Summary
When performing on-board software testing on digital simulation platforms, the existing technology relies on manual operation, resulting in low testing efficiency, frequent operation errors, and difficulty in accurately defining test phenomena and problems, affecting the investigation and reproduction of test problems.
Design an automatic test system for onboard display and control software based on digital simulation, use automatic execution tools instead of manual operations, and combine image comparison technology to realize automatic execution and reproduction of experimental operations, and improve testing efficiency.
It realizes efficient testing of the onboard display and control software system configuration item without occupying the avionics software comprehensive test bench with shortage of testing resources, which improves the testing efficiency, reduces manual misoperation, and simplifies the investigation and reproduction of test problems.
Smart Images

Figure CN119883898A_ABST
Abstract
Description
Technical Field
[0001] The invention belongs to the technical field of computing software testing, and relates to an automatic testing system and method for airborne display and control software based on digital simulation. Background Art
[0002] The available test resources of avionics integrated test benches with real airborne hardware are in short supply. Now, digital simulation platforms can be used to test the configuration items of avionics software. Digital simulation platforms use software to simulate real hardware functions. After development, they can be deployed on multiple machines, greatly increasing test resources.
[0003] The result image of the display and control software interacts with the user through the display system and is presented in the display window, with significant features such as multi-layer overlay, target rotation, scaling, deformation, etc. The current configuration item test mainly relies on manual visual observation to identify whether the running results meet expectations.
[0004] At present, the airborne software testing on the digital simulation platform mainly relies on the tester to manually operate the software simulation interface, so that the various parts of the simulation environment can interact with each other, and the test phenomena and results are recorded in text. In such a test process, multiple manual operations are difficult to ensure that they are completely correct every time, which takes a long time, and operation errors will reduce the test efficiency; text descriptions are difficult to accurately define the phenomena and problems found in the test, which makes it difficult to troubleshoot and reproduce test problems.
[0005] In the field of automated testing, display and control software testing is based on the automated testing of the UI (user interface) layer of the project product. UI testing often requires a lot of manpower and time for manual testing, and it is difficult to achieve automation.
[0006] Therefore, it is necessary to design an automatic test system and test method for airborne display and control software based on digital simulation, use automatic execution tools to replace manual operations, and use image comparison technology to perform repeated experimental operations, which will help reproduce experimental phenomena and improve test efficiency. Summary of the invention
[0007] The purpose of the present invention is to break away from the avionics integrated test bench with scarce hardware testing resources and realize convenient and efficient airborne display and control software system configuration item testing. The present invention proposes an airborne display and control software automatic testing system and method based on digital simulation, which performs airborne software configuration item testing by using automatic execution tools.
[0008] Technical Solution
[0009] An automatic test system for airborne display and control software based on digital simulation, the test system includes a simulation target machine, an avionics software test tool, and an underlying communication bus;
[0010] The simulation target machine uses software to simulate the hardware functions, and uses C / C++ language to build the kernel and peripherals of the simulation target machine into repeatable software modules, and assemble the software modules. Based on the simulation target machine, the airborne display and control software can be run;
[0011] The avionics software testing tool is an application that parses messages in the avionics software system, making it convenient for testers to edit messages and send them to the software to be tested, and analyze the message content. During the test, the avionics system message definition file that matches the version of the current onboard display and control software to be tested is selected, and the avionics software testing tool can send messages to the current simulation target machine to perform configuration item testing.
[0012] Bottom-layer communication bus: Configure the communication bus between the avionics software test tool and the simulation target machine to complete data communication and the test system is built.
[0013] A testing method according to the airborne display and control software automatic testing system based on digital simulation comprises the following steps:
[0014] Step 1: Test requirements analysis;
[0015] Step 2: Setting up digital simulation test environment;
[0016] Step 3: Design and write test cases;
[0017] Step 4: Automatic test script writing;
[0018] Step 5: Test process pipeline integration.
[0019] Furthermore, step 1 specifically analyzes the hardware configuration of the airborne display and control software and the functional requirements of the airborne display and control software to be tested.
[0020] Furthermore, step 2 specifically builds a digital simulation platform with hardware functions using software according to the analysis results in step 1. The digital simulation platform includes the following modules: a simulation target machine, an avionics software testing tool, and an underlying communication bus.
[0021] Further, step 2 specifically includes the following steps:
[0022] Step 2.1: Use C / C++ language to build the kernel and peripherals of the simulation target machine into repeatable software modules, and assemble these software modules to form the simulation target machine;
[0023] Step 2.2, use the avionics software testing tool to select the avionics system ICD file that matches the current airborne software to be tested, simulate different message nodes, and send messages to the current simulation target machine to perform configuration item testing;
[0024] Step 2.3: Configure the communication bus between the avionics software test tool and the simulation target machine to complete data communication, and the simulation test platform is built.
[0025] Furthermore, in step 4, the writing and execution of the automatic test script is implemented by the SikuliX tool.
[0026] Further, step 4 specifically includes the following steps:
[0027] Step 4.1: When testing the airborne software for the first time, the tester needs to manually execute the test process, that is, use the avionics software test tool to send a message to the simulation target machine, and the tester manually operates the simulation target machine to complete the test operation, splitting the test operation into individual action steps;
[0028] Step 4.2: During the test, take screenshots of the results that need to be viewed in each action step;
[0029] Step 4.3: Write the automatic test script code according to the usage rules of the SikuliX tool, and use the screenshots in step 4.2 as the image comparison basis for the script code execution. The script writing is completed;
[0030] After the script in step 4.4 is written, you can use the SikuliX tool to perform automatic testing. If the image contained in the screenshot exists in the current onboard software test screen during the current automatic test, the test is considered to have passed and the displayed result is correct. If the image contained in the screenshot does not exist in the current onboard software test screen, the test is considered to have a problem and the correct result cannot be displayed.
[0031] Furthermore, step 5 is to integrate the test process pipeline, specifically, to apply the airborne display and control software testing method based on digital simulation to the test pipeline to automatically execute the test.
[0032] Furthermore, the test method also includes step 6: generating a test result report.
[0033] Beneficial Effects
[0034] The invention proposes an automatic test system and method for airborne display and control software based on digital simulation. Compared with traditional manual operation, the main advantages of using a simulated target machine with an automatic test tool for testing are:
[0035] (1) Do not occupy the avionics software comprehensive test bench where test resources are scarce. Use an easily replicable software simulation test bench to facilitate the construction of an avionics test simulation target machine on a computer, increase test resources, and improve test efficiency. The simulation test bench simulates the real hardware test bench as much as possible, and the test environment is closer to the real hardware than other operating platforms.
[0036] (2) It can replace the tedious manual operation of regression testing. Regression testing requires multiple experiments to confirm the correctness of the experimental phenomenon. Multiple repetitive manual operations may result in operational errors. The use of automatic testing tools can ensure that each regression test operation is completely consistent, saving the time of erroneous operation during manual experiments.
[0037] (3) Use computer commands to start the test, and all test tasks described in the script can be completed according to the instructions without human supervision. Although writing scripts creates additional workload, the test executed by the machine can be completed automatically in an unattended state (such as at night), which increases the overall test efficiency. BRIEF DESCRIPTION OF THE DRAWINGS
[0038] Figure 1 This is a flow chart of the onboard software test of the present invention;
[0039] Figure 2 This is the software testing process screen. DETAILED DESCRIPTION
[0040] The features and illustrative embodiments of various aspects of the present invention will be described in detail below. In the detailed description below, many specific details are proposed to provide a comprehensive understanding of the present invention. However, it is obvious to those skilled in the art that the present invention can be implemented without the need for some of these specific details. The following description of the embodiments is only to provide a better understanding of the present invention by illustrating examples of the present invention. The present invention is by no means limited to any specific settings and methods proposed below, but covers any improvements, replacements and modifications of structures, methods, devices without departing from the spirit of the present invention. In the accompanying drawings and the following description, known structures and technologies are not shown to avoid unnecessary ambiguity in the present invention.
[0041] It should be noted that, in the absence of conflict, the embodiments of the present invention and the features in the embodiments can be combined with each other, and the embodiments can refer to and quote each other. The present invention will be described in detail below with reference to the accompanying drawings and in combination with the embodiments.
[0042] Embodiment 1:
[0043] This embodiment provides an automatic test system for airborne display and control software based on digital simulation, the test system comprising a simulation target machine, an avionics software test tool, and an underlying communication bus;
[0044] The simulation target machine uses software to simulate the hardware functions, and uses C / C++ language to build the kernel and peripherals of the simulation target machine into repeatable software modules, and assemble the software modules. Based on the simulation target machine, the airborne display and control software can be run;
[0045] The avionics software testing tool is an application that parses messages in the avionics software system, making it convenient for testers to edit messages and send them to the software to be tested, and analyze the message content. During the test, the avionics system message definition file that matches the version of the current onboard display and control software to be tested is selected, and the avionics software testing tool can send messages to the current simulation target machine to perform configuration item testing.
[0046] The avionics software testing tool has the functions of message parsing, filling data, and sending and receiving data. It plays the role of simulating the avionics nodes of various parts of the aircraft. The avionics software testing tool has been recorded in the journal Aeronautical Engineering, issue 4 of 2022, "Research on Digital Simulation Testing Technology of Avionics System Display and Control Software", by Marco Zinc et al. The "test tool" in the journal refers to the avionics software testing tool used in this application.
[0047] Bottom-layer communication bus: Configure the communication bus between the avionics software test tool and the simulation target machine to complete data communication and the test system is built.
[0048] In addition, this embodiment also provides a test method according to the airborne display and control software automatic test system based on digital simulation, comprising the following steps:
[0049] Step 1: Test requirements analysis: Analyze the hardware configuration of the airborne display and control software and the functional requirements of the airborne display and control software to be tested.
[0050] Step 2: Building a digital simulation test environment: Based on the analysis results in step 1, use software to build a digital simulation platform with hardware functions. The digital simulation platform includes the following modules: simulation target machine, avionics software testing tool, and underlying communication bus.
[0051] Step 2 specifically includes the following steps:
[0052] Step 2.1: Use C / C++ language to build the kernel and peripherals of the simulation target machine into repeatable software modules, and assemble these software modules to form the simulation target machine;
[0053] Step 2.2, use the avionics software testing tool to select the avionics system ICD file that matches the current airborne software to be tested, simulate different message nodes, and send messages to the current simulation target machine to perform configuration item testing;
[0054] Step 2.3, configure the communication bus between the avionics software test tool and the simulation target machine, complete the data communication, and the simulation test platform is built;
[0055] Each module of the simulation test platform is a functional simulation of the real physical hardware module. The hardware working principle level performs functional simulation on the hardware target machine to restore the working state of the display and control software on the real hardware test bench to the maximum extent. The simulation test platform is modular and easy to copy. The hardware peripherals and processors are built on the software platform as modules; the software platform is easy to install on any computer that meets the configuration conditions to increase the test environment resources.
[0056] Step 3: Design and write test cases: Create test cases according to the required test table;
[0057] Step 4: Automatic test script writing. The writing and execution of automatic test scripts are implemented by SikuliX tool.
[0058] Step 4 specifically includes the following steps:
[0059] Step 4.1: When testing the airborne software for the first time, the tester needs to manually execute the test process, that is, use the avionics software test tool to send a message to the simulation target machine, and the tester manually operates the simulation target machine to complete the test operation, splitting the test operation into individual action steps;
[0060] Step 4.2: During the test, take screenshots of the results that need to be viewed in each action step;
[0061] Step 4.3: Write the automatic test script code according to the usage rules of the SikuliX tool, and use the screenshots in step 4.2 as the image comparison basis for the script code execution. The script writing is completed;
[0062] After the script in step 4.4 is written, you can use the SikuliX tool to perform automatic testing. If the image contained in the screenshot exists in the current onboard software test screen during the current automatic test, the test is considered to have passed and the displayed result is correct. If the image contained in the screenshot does not exist in the current onboard software test screen, the test is considered to have a problem and the correct result cannot be displayed.
[0063] Among them, the core of SikuliX's automatic testing lies in image recognition, that is, to find an area with the greatest similarity to the image to be found (i.e. the screenshot in step 4) within the visible range of the current window, and then perform a series of operations or calculations based on this area. In SikuliX, you can use its own IDE to write scripts. The script file itself is a .py file, and the image is in .png format. The script file and its corresponding image are placed in a folder with the suffix .sikuli, which represents the entire SikuliX project. After the automatic test project is written, it can be run on the IDE, and the prompt information during the operation will also be displayed. In addition, the .sikuli project can be run directly in the command line, which is convenient for integration into the pipeline for automatic testing.
[0064] Step 5: Test process pipeline integration: Apply the airborne display and control software testing method based on digital simulation to the test pipeline to automatically perform the test.
[0065] Step 6: Generate a test result report.
[0066] Embodiment 2:
[0067] This embodiment provides a test method for the airborne display and control software automatic test system based on digital simulation, comprising the following steps:
[0068] (1) Test requirements analysis: According to the functional requirements of the software to be tested, analyze the functions to be tested and obtain a test requirements table;
[0069] (2) Construction of digital simulation test environment: The simulation target machine consists of software that simulates the hardware functions and has an interface window for displaying the content of the user interaction interface. The avionics software test tool can customize test items and test data, and can generate the data packets required to complete the test items. The avionics software test tool transmits data to the simulation target machine platform through a pre-defined communication bus (such as UDP, DDS, etc.). Ensure that the simulation target machine and the avionics software test tool can communicate with each other and transmit data through the communication bus.
[0070] The digital simulation platform that uses software to simulate the functions of the hardware test bench mainly consists of the following components: simulation target machine, avionics software testing tools, and underlying communication bus.
[0071] Take a certain model of display and control software simulation test project as an example: the simulation target machine is a system composed of display computer and display and control computer. Display and control and display engineering are composed of core processor SoC and onboard peripherals. Peripherals include storage modules, bus simulation modules, etc. The storage module needs to load the onboard application; the bus simulation module includes FC-AE bus, 1394B bus, 422 serial port, etc., which is the means of interaction between display and control and display engineering, display and control system and users, and display and control system and other nodes.
[0072] The avionics software testing tool can generate different node messages based on the avionics system ICD file, thereby sending data to the target machine. After receiving the data, the target machine will normally display the phenomenon corresponding to the test function, or return specific data information to the avionics software testing tool. In traditional manual testing, testers need to click to run the test cases in the avionics software testing tool according to the software testing instructions, and then quickly observe whether the display interface phenomenon is correct, and return to the avionics software testing tool to check whether the case has been successfully executed. In many test cases, testers are required to manually operate the display interface according to the specifications within a certain period of time; if a certain reaction time is exceeded, the display interface will not display the correct phenomenon, which brings certain difficulties to the test operation. Therefore, using automatic execution tools instead of manual operations can solve problems that may arise in manual operations.
[0073] The simulation target machine and the avionics software test tool realize interactive communication through the underlying Ethernet communication bus (DDS / UDP protocol). The target machine, avionics software test tool and communication bus together constitute the digital simulation test environment.
[0074] (3) Test case design and writing: Testers create new test cases in the avionics software testing tool based on the test requirements table obtained from the requirements analysis.
[0075] (4) Automatic test script writing: Testers write automatic test scripts according to the tool usage rules. During the writing process, testers are required to manually send data from the avionics software test tool to the simulation target machine and view the entire process of the target machine displaying the results. Writing tool scripts is a process of gradually decomposing and reassembling the entire test process. During script writing, testers are required to take partial screenshots of the user interface display results in the test steps and put them into the script file. Instructive user logs can be added to the script to provide feedback on various situations during the operation process.
[0076] (5) Test process pipeline integration: After the script is written, the test script can be used to execute the test case repeatedly. Figure 2 As shown, the tester performs automatic testing according to the test process, and calls the digital simulation test environment and scripts through the pipeline platform command line to realize automatic test execution.
[0077] (6) Generate a test result report: After running the pipeline, the tester records and summarizes the test case running results to form a test report.
[0078] The present invention has an avionics software comprehensive test bench that does not occupy scarce test resources. It adopts an easily replicable software simulation test bench, which is convenient for building an avionics test simulation target machine on a computer, increasing test resources and improving test efficiency. The simulation test bench simulates the real hardware test bench as much as possible, and the test environment is closer to the real hardware than other operating platforms; secondly, the present invention can replace the cumbersome manual operation of regression testing. Regression testing requires multiple experiments to confirm the correctness of the experimental phenomenon, and multiple repetitive manual operations may result in operational errors. The use of automatic testing tools can ensure that each regression test operation is completely consistent, saving the time of misoperation during manual experiments; thirdly, the present invention uses computer commands to start the test, and all test tasks described in the script can be completed according to the instructions without human supervision. Although script writing causes additional workload, the test executed by the machine can be automatically completed in an unattended state (such as at night), which increases the test efficiency overall.
[0079] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, but the protection scope of the present invention is not limited thereto. Any technician familiar with the field can easily think of various equivalent modifications or substitutions within the technical scope disclosed by the present invention, and these modifications or substitutions should all be covered within the protection scope of the present invention.
Claims
1. An automatic test system for airborne display and control software based on digital simulation, characterized in that: The test system includes a simulation target machine, avionics software testing tools, and underlying communication bus; The simulation target machine uses software to simulate the hardware functions, and uses C / C++ language to build the kernel and peripherals of the simulation target machine into repeatable software modules, and assemble the software modules. Based on the simulation target machine, the airborne display and control software can be run; The avionics software testing tool is an application that parses messages in the avionics software system, making it convenient for testers to edit messages and send them to the software to be tested to analyze the message content; During the test, select the avionics system message definition file that matches the version of the current onboard display and control software to be tested. The avionics software test tool can send messages to the current simulation target machine to perform configuration item testing. Bottom-layer communication bus: Configure the communication bus between the avionics software test tool and the simulation target machine to complete data communication and the test system is built.
2. A test method for the airborne display and control software automatic test system based on digital simulation according to claim 1, characterized in that: The following steps are involved: Step 1: Test requirements analysis; Step 2: Setting up digital simulation test environment; Step 3: Design and write test cases; Step 4: Automatic test script writing; Step 5: Test process pipeline integration.
3. The testing method according to claim 2, characterized in that: Step 1 specifically analyzes the hardware configuration of the airborne display and control software and the functional requirements of the airborne display and control software to be tested.
4. The testing method according to claim 3, characterized in that: Step 2 specifically involves building a digital simulation platform with hardware functions using software based on the analysis results in step 1. The digital simulation platform includes the following modules: simulation target machine, avionics software testing tool, and underlying communication bus.
5. The testing method according to claim 4, characterized in that: Step 2 specifically includes the following steps: Step 2.1: Use C / C++ language to build the kernel and peripherals of the simulation target machine into repeatable software modules, and assemble these software modules to form the simulation target machine; Step 2.2, use the avionics software testing tool to select the avionics system ICD file that matches the current airborne software to be tested, simulate different message nodes, and send messages to the current simulation target machine to perform configuration item testing; Step 2.3: Configure the communication bus between the avionics software test tool and the simulation target machine to complete data communication, and the simulation test platform is built.
6. The testing method according to claim 5, characterized in that: In step 4, the writing and execution of the automatic test script is implemented by the SikuliX tool.
7. The testing method according to claim 6, characterized in that: Step 4 specifically includes the following steps: Step 4.1: When testing the airborne software for the first time, the tester needs to manually execute the test process, that is, use the avionics software test tool to send a message to the simulation target machine, and the tester manually operates the simulation target machine to complete the test operation, splitting the test operation into individual action steps; Step 4.2: During the test, take screenshots of the results that need to be viewed in each action step; Step 4.3: Write the automatic test script code according to the usage rules of the SikuliX tool, and use the screenshots in step 4.2 as the image comparison basis for the script code execution. The script writing is completed; After the script in step 4.4 is written, you can use the SikuliX tool to perform automatic testing. If the image contained in the screenshot exists in the current onboard software test screen during the current automatic test, the test is considered to have passed and the displayed result is correct. If the image contained in the screenshot does not exist in the current onboard software test screen, the test is considered to have a problem and the correct result cannot be displayed.
8. The testing method according to claim 7, characterized in that: Step 5 is the test process pipeline integration, specifically, applying the airborne display and control software testing method based on digital simulation to the test pipeline to automatically perform the test.
9. The testing method according to claim 8, characterized in that: The test method also includes step 6: generating a test result report.