Heterogeneous platform software dynamic test method based on distributed data transmission

Through the dynamic testing method of heterogeneous platform software based on distributed data transmission, the existing embedded system software testing methods are solved, and the rapid dynamic testing of embedded system software code is realized, and the code quality and stability are improved.

CN120162273APending Publication Date: 2025-06-17NANJING RES INST OF ELECTRONICS TECH
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510561632.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-04-30
Publication Date
2025-06-17

AI Technical Summary

Technical Problem

The existing embedded system software testing methods are slow to execute, low running efficiency, and difficult to pass data, and cannot meet the needs of lightweight and fast embedded software testing.

Method used

The dynamic testing method of heterogeneous platform software based on distributed data transmission is adopted, and the automated test case generation, dynamic test and test result report generation of the tested software is realized through the dynamic testing framework, test case generation module, distributed data transmission module, test result and report generation module, dynamic test code framework and supporting interface.

Benefits of technology

It realizes rapid dynamic testing of embedded system software code, improves code quality and stability, supports rapid iteration and upgrading of embedded system software, reduces the manual testing cost of developers, and improves testing efficiency and visualization.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120162273A_ABST
    Figure CN120162273A_ABST
Patent Text Reader

Abstract

The invention relates to a heterogeneous platform software dynamic test method based on distributed data transmission, which comprises the following steps: a dynamic test framework completes automatic generation of test cases and code elements based on a tested software configuration file through a test case generation module; after the generation is finished, the distributed data transmission module is called to transmit the tested software to the corresponding embedded hardware module, the tested software is called to run through the test framework, under the support of the dynamic test code framework, the tested software sends a test data request to the dynamic test framework, and the dynamic test framework sends test data based on the distributed data transmission module; after obtaining related test data, the tested software normally runs to complete the dynamic test, generates test results and sends the test results to the dynamic test framework, and the test results are summarized by the test result and report generation module and are generated according to a template. According to the method, the dynamic test rate of the software code of the embedded system can be increased, the code quality and stability are improved, and rapid iteration upgrading of the software of the embedded system is supported.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of embedded software research and development, and particularly to a dynamic testing method for heterogeneous platform software based on distributed data transmission. Background Art

[0002] Existing embedded systems have the characteristics of complex scenarios, large management nodes, large amounts of interfaces and data. Among them, the scale of embedded software is large and the branches are complex, resulting in many defects in terms of code quality and stability. Traditional embedded testing methods are mainly dominated by manual testing methods, which have problems such as slow execution speed, low operating efficiency, and difficult data transfer, and cannot meet the needs of lightweight and fast embedded software testing, which is not conducive to system maintenance and long-term use. Therefore, it is necessary to design a testing method that can quickly realize the dynamic testing of embedded system software code. Summary of the Invention

[0003] To solve the existing technical problems, the present invention provides a dynamic testing method for heterogeneous platform software based on distributed data transmission.

[0004] The specific content of the present invention is as follows: A dynamic testing method for heterogeneous platform software based on distributed data transmission, based on a dynamic testing framework, a test case generation module, a distributed data transmission module based on a communication protocol, a test result and report generation module, a dynamic testing code framework, and a supporting interface. The dynamic testing framework automatically generates test cases and code elements based on the configuration file of the software under test through the test case generation module. After generation, it calls the distributed data transmission module to transmit the software under test to the corresponding embedded hardware module and calls it to run through the test framework. With the support of the dynamic testing code framework, the software under test sends a test data request to the dynamic testing framework. After the dynamic testing framework obtains the request, it sends the test data based on the distributed transmission module. After the software under test obtains the relevant test data, it runs normally to complete the dynamic testing and generates a test result and sends it to the dynamic testing framework. Finally, the test results are summarized by the test result and report generation module and generated according to a certain template, and the test results are displayed through the supporting interface.

[0005] Further, the dynamic testing framework connects the interfaces of each module, and connects and controls the invocation of each dynamic testing workflow in the form of a workflow to perform relevant test control operations, including test case generation invocation, on-demand scheduling of the distributed transmission module, starting the software under test, and test result collection.

[0006] Furthermore, the test case generation module generates scenario data, symbol data, and operation control logic required for the dynamic testing of the software in batches through the software under test configuration file, temporarily stores the test cases locally, sends the relevant case information to the test result and report generation module, and notifies the dynamic testing framework to drive the subsequent testing process after the operation is completed.

[0007] Furthermore, the relevant case information includes the name of the software under test, case items, case names, case parameter configurations, and predicted results.

[0008] Furthermore, the distributed data transmission module includes a protocol communication server, a cache space, and a data decoder, and is responsible for receiving instructions from the dynamic testing framework and completing the mutual transmission of the software under test, test cases, and test results among different heterogeneous platforms.

[0009] Furthermore, the communication server includes a sending module and a receiving module, the data decoder includes a data splitting and assembling module and a state machine, and the state machine includes three states: writing data, reading data, and transmitting logs; after the distributed data transmission module receives the scheduling instructions from the dynamic testing framework, it responds to the instructions through the state machine, performs splitting or assembling operations in the cache space in units of network frames through the data splitting and assembling function, and calls the communication server to perform data sending and receiving operations after completion.

[0010] Furthermore, the dynamic testing code framework is responsible for loading and starting the software module to be tested, sending requests to the dynamic testing framework of the host computer, obtaining the symbol data and scenarios required for the dynamic testing of the software through the distributed transmission module, and batch executing them. After the testing is completed, the test results are transmitted to the test result and report generation module of the host computer by sending requests to the dynamic testing framework.

[0011] Furthermore, the test result and report generation module is responsible for summarizing and organizing the test results obtained after the dynamic testing of the software under test, and generating corresponding test reports according to a certain template.

[0012] Furthermore, the supporting interface is used to manage test projects, dynamic testing process steps and platform selection, test cases, view test results and reports.

[0013] Furthermore, the dynamic testing execution is divided into two categories: with an operating system and without an operating system:

[0014] The dynamic testing on the operating system platform includes: the dynamic testing framework loads the running object into the system process through the remote access protocol, the dynamic testing code framework used in the running object sends request instructions to the dynamic testing framework. At this time, the dynamic framework drives the TCP protocol transmission module to send the corresponding test cases and scenario data to the hardware module under test and participates in the dynamic testing process. After generating the results, it sends request instructions again to send the test results to the test result and report generation module;

[0015] Dynamic testing without an operating system platform includes: writing and solidifying the corresponding running object program into the FLASH or other burnable devices of the platform. After the platform starts, the burned program runs automatically. This program module has TCP sending and receiving functions and can receive test data generated by the platform dynamic testing framework according to test tokens. After the tested software is burned and runs and processes, it passes the test results through this module, and the platform receives them and sends them to the test result and report generation module.

[0016] The heterogeneous platform software dynamic testing method based on distributed file transfer of the present invention supports the transfer of the tested software, test cases, and test results among different heterogeneous distributed nodes by using distributed file transfer technology, and supports functions such as the running call of the tested software on the target platform and the generation of test reports through a dynamic testing framework. It covers CPU and DSP platforms, supports domestic operating systems, can accelerate the dynamic testing rate of embedded system software code, improve code quality and stability, and support the rapid iterative upgrade of embedded system software. Brief Description of the Drawings

[0017] The present invention will be further clarified below with reference to the drawings.

[0018] Figure 1 It is a schematic diagram of the heterogeneous platform software dynamic testing method based on distributed data transfer of the present invention;

[0019] Figure 2 It is a schematic diagram of the functional design of the distributed data transfer module. Detailed Embodiment

[0020] Combined with Figure 1 and Figure 2 A heterogeneous platform software dynamic testing method based on distributed data transfer of the present invention mainly includes the following content:

[0021] Overall design: This method mainly includes a dynamic test framework, a test case generation module, a distributed data transmission module, a test result and report generation module, a dynamic test code framework, and a supporting interface. As shown in a dynamic test method for heterogeneous platform software based on distributed data transmission, the dynamic test framework uses the test case generation module to complete the automatic generation of test cases and code elements based on the configuration file of the tested software. After the generation is completed, the distributed data transmission module is called to transfer the tested software to the embedded hardware module and run it through the test framework. With the support of the dynamic test code framework, the tested software sends a data request to the test framework to obtain relevant test data to complete the dynamic test, and the test results are summarized and generated according to a certain template through the test result and report generation module, and finally the test results are displayed through the supporting interface. Through the above modules, dynamic testing of heterogeneous platform software based on distributed data transmission is realized.

[0022] The dynamic test framework is responsible for connecting the interfaces of each module in series, connecting and controlling the call of each dynamic test workflow in the form of a workflow, and mainly realizing related test control operations such as test case generation and call, distributed transmission module on-demand scheduling, starting the software under test, and test result collection.

[0023] The test case generation module generates scenario data, code metadata, and operation control logic required for software dynamic testing in batches through the tested software configuration file, and stores the test cases to the local disk. The relevant case information is sent to the test result and report generation module. After the operation is completed, the dynamic test framework is notified to drive the subsequent test process. The relevant case information includes the name of the tested software, case entry, case name, case parameter configuration, prediction results, etc.

[0024] The distributed data transmission module consists of three parts: communication server, cache space, and data decoder. It is responsible for receiving dynamic test framework instructions and completing the transmission of tested software, test cases, and test results between heterogeneous platforms. The communication server is responsible for specific protocol-based network transmission and reception operations, while the cache space and data decoder are responsible for data splitting and splicing. The data decoder can be divided into a state machine and a data splitting and splicing module.

[0025] The dynamic test code framework is responsible for loading and starting the functional modules of the software under test, and sending requests to the host computer dynamic test framework. It obtains the code metadata and scenarios required for software dynamic testing through the distributed data transmission module and executes them in batches. After the test is completed, the test results are transmitted to the test result and report generation module by sending a request to the dynamic test framework.

[0026] The test result and report generation module is responsible for summarizing and collating the test results obtained after the software under test has been dynamically tested, and generating corresponding test reports according to certain templates after object mapping.

[0027] The supporting interface is used to implement platform functions such as managing test projects, dynamic test process steps and platform selection, test cases, viewing test results and reports.

[0028] To further illustrate the specific implementation manners of the present invention, as Figure 1 shown, an embodiment of a heterogeneous platform software dynamic test method based on distributed data transmission is disclosed.

[0029] In this embodiment, first, a dynamic test framework, a test case generation module, a distributed data transmission module, a test result and report generation module, a dynamic test code framework, a communication protocol environment, and a supporting interface are completed and deployed in the upper computer. Through the supporting interface, operations such as selecting, modifying, and obtaining the software to be tested are performed. After the software is selected, under the mobilization of the dynamic test framework and the support of the distributed data transmission module, the test case generation, dynamic test execution, and test report generation are automatically and sequentially executed.

[0030] The test case generation module batch generates scenario data, symbol data, operation control logic, etc. required for software dynamic testing by calling MATLAB functions through the configuration file of the software to be tested, stores the test cases in the local disk in the form of files, and sends relevant case information such as the name of the software to be tested, case items, case names, case parameter configurations, predicted results, etc. to the test result and report generation module. After the operation is completed, it notifies the dynamic test framework to drive the subsequent test process.

[0031] The distributed data transmission module, as Figure 2 shown, includes a communication server, a data decoder, and a cache space. In this embodiment, a protocol environment is also included. The communication server includes a sending module and a receiving module. The data decoder includes a data splitting and assembling function module and a state machine, and the state machine has three states: writing data, reading data, and transmission log. The communication server is responsible for specific network sending and receiving operations based on the protocol. The cache space and the data decoder are responsible for data splitting and splicing work. The protocol environment is responsible for providing environmental support for platforms without an operating system and is responsible for transmitting the software to be tested, test cases, and test results in this method. After the distributed data transmission module receives the scheduling instruction of the test framework, it responds to the instruction through the state machine, performs splitting or assembling work in the cache space in units of network frames through the data splitting and assembling function, and after completion, calls the communication server to perform data sending and receiving operations. This module supports the selection and switching of multiple communication protocols. Currently, this method already supports multiple domestic / non-domestic operating systems such as Centos / SylixOS / Kylin and operating systems without an operating system, and multiple platforms such as x86 / Flying Dragon / Huairui.

[0032] Dynamic test execution is divided into two categories: those with an operating system and those without an operating system. For platforms with an operating system, the dynamic test framework loads the running object into the system process through remote access protocols such as the telnet / SSH protocol. The dynamic test code framework used in the running object sends a request instruction to the dynamic test framework. At this time, the dynamic framework drives the TCP protocol transmission module to send corresponding test case, scenario and other data to the hardware module under test and participate in the dynamic test process. After generating the result, a request instruction is sent again to send the test result to the test result and report generation module. For platforms without an operating system, the corresponding running object program is written and solidified into the FLASH or other programmable devices of the platform. After the platform starts, the program that has been burned is automatically run. This program module has TCP sending and receiving functions and can receive the test data generated by the platform dynamic test framework according to the test code elements. After the burned software under test runs and processes, the test result is transmitted through this module and received by the platform and then sent to the test result and report generation module. With such a setting, for platforms without an operating system, the IwIP protocol stack is used to build the communication environment to ensure the normal test process of the software under test.

[0033] At this time, the user obtains the dynamic test report of the software under test through the supporting interface. If there are problems, the code is modified and then the automated test process is carried out again. If not, the test process is completed.

[0034] The dynamic test framework, test case generation module, distributed data transmission module, and test result and report generation module of the present invention are automatically driven to run after the user selects the input through a series of automated test operations. Through the method of the present invention, based on the framework, test cases are automatically generated for the software under test, dynamic testing is performed, and a corresponding software dynamic test report is formed, which can reduce the manual test cost of developers, improve the test efficiency and the visualization degree of the test process, support DevOps development, and thus can achieve automated dynamic testing. And it is compatible with a variety of heterogeneous platforms, supports general operating systems, domestic operating systems and the situation without an operating system. Moreover, the distributed transmission module is independently developed and deployed using service-oriented technology, and the external interfaces are consistent and can be quickly upgraded and matched with the changes of the platforms in the environment. Therefore, it has good scalability.

[0035] Numerous specific details are set forth in the above description to facilitate a full understanding of the present invention. However, the above description is only a preferred embodiment of the present invention, and the present invention can be implemented in many other ways different from those described herein. Therefore, the present invention is not limited by the specific embodiments disclosed above. At the same time, any person skilled in the art can make many possible changes and modifications to the technical solution of the present invention, or modify it into an equivalent embodiment with equivalent changes, without departing from the scope of the technical solution of the present invention. All simple modifications, equivalent changes and modifications made to the above embodiments based on the technical essence of the present invention without departing from the content of the technical solution of the present invention still fall within the scope of protection of the technical solution of the present invention.

Claims

1. A method for dynamic testing of heterogeneous platform software based on distributed data transmission, characterized in that: Based on the dynamic testing framework, test case generation module, distributed data transmission module based on communication protocol, test result and report generation module, dynamic testing code framework and supporting interface, the dynamic testing framework completes the automatic generation of test cases and code elements based on the configuration file of the software under test through the test case generation module. After the generation is completed, the distributed data transmission module is called to transfer the software under test to the corresponding embedded hardware module and run it through the test framework. With the support of the dynamic testing code framework, the software under test sends a test data request to the dynamic testing framework. After obtaining the request, the dynamic testing framework sends the test data based on the distributed transmission module. After obtaining the relevant test data, the software under test runs normally to complete the dynamic test and generates test results to be sent to the dynamic testing framework. Finally, the test results are summarized and generated according to a certain template through the test result and report generation module, and the test results are displayed through the supporting interface.

2. The method for dynamic testing of heterogeneous platform software based on distributed data transmission according to claim 1 is characterized in that: The dynamic test framework connects the interfaces of each module in series, connects and controls the call of each dynamic test workflow in the form of a workflow, and performs related test control operations, including test case generation and calling, distributed transmission module on-demand scheduling, starting the software under test, and test result collection.

3. The method for dynamic testing of heterogeneous platform software based on distributed data transmission according to claim 1 is characterized in that: The test case generation module uses the configuration file of the software under test to batch generate the scenario data, code metadata and operation control logic required for the dynamic testing of the software, and temporarily stores the test cases locally. The relevant case information is sent to the test result and report generation module. After the operation is completed, the dynamic test framework is notified to drive the subsequent test process.

4. The method for dynamic testing of heterogeneous platform software based on distributed data transmission according to claim 1, characterized in that: Relevant use case information includes the name of the software being tested, use case entry, use case name, use case parameter configuration, and prediction results.

5. The method for dynamic testing of heterogeneous platform software based on distributed data transmission according to claim 1, characterized in that: The distributed data transmission module includes a communication server, a cache space, and a data decoder. It is responsible for receiving dynamic test framework instructions and completing the transmission of the tested software, test cases, and test results between heterogeneous platforms.

6. The method for dynamic testing of heterogeneous platform software based on distributed data transmission according to claim 5 is characterized in that: The communication server includes a sending module and a receiving module. The data decoder includes a data splitting and assembly module and a state machine. The state machine includes three states: writing data, reading data, and transmitting log. After the distributed data transmission module receives the dynamic test framework scheduling instruction, it responds to the instruction through the state machine, and uses the data splitting and assembly function to split or assemble the data in the cache space in units of network frames. After completion, the communication server is called to perform data sending and receiving operations.

7. The method for dynamic testing of heterogeneous platform software based on distributed data transmission according to claim 1, characterized in that: The dynamic test code framework is responsible for loading and starting the software module to be tested, and sending requests to the host computer dynamic test framework. It obtains the code metadata and scenarios required for software dynamic testing through the distributed transmission module and executes them in batches. After the test is completed, the test results are transmitted to the host computer test result and report generation module by sending a request to the dynamic test framework.

8. The method for dynamic testing of heterogeneous platform software based on distributed data transmission according to claim 1, characterized in that: The test result and report generation module is responsible for summarizing and collating the test results obtained after the software under test has been dynamically tested, and generating corresponding test reports according to a certain template.

9. The method for dynamic testing of heterogeneous platform software based on distributed data transmission according to claim 1, characterized in that: The supporting interface is used to manage test projects, dynamic test process steps and platform selection, test cases, and view test results and reports.

10. The method for dynamic testing of heterogeneous platform software based on distributed data transmission according to claim 1, characterized in that: Dynamic test execution is divided into two categories: with operating system and without operating system: The dynamic test with operating system platform includes: the dynamic test framework loads the running object into the system process through the remote access protocol, and the dynamic test code framework used in the running object issues a request instruction to the dynamic test framework. At this time, the dynamic framework drives the TCP protocol transmission module to send the corresponding test case and scenario data to the hardware module under test and participate in the dynamic test process. After the result is generated, the request instruction is issued again to send the test result to the test result and report generation module; Dynamic testing without an operating system platform includes: writing and solidifying the corresponding running object program into the platform's FLASH or other burnable devices. After the platform is started, the burned program is automatically run. The program module has TCP receiving and sending functions and can receive test data generated by the platform's dynamic testing framework based on test code elements. After the burned software under test is run and processed, the test results are transmitted through this module, and after being received by the platform, they are sent to the test result and report generation module.