CN112527648A - Testing method and testing device for embedded software system - Google Patents

Testing method and testing device for embedded software system Download PDF

Info

Publication number
CN112527648A
CN112527648A CN202011481289.5A CN202011481289A CN112527648A CN 112527648 A CN112527648 A CN 112527648A CN 202011481289 A CN202011481289 A CN 202011481289A CN 112527648 A CN112527648 A CN 112527648A
Authority
CN
China
Prior art keywords
hardware system
virtual operating
embedded software
memory
hardware
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202011481289.5A
Other languages
Chinese (zh)
Inventor
刘琦
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xi'an Zhonglang Intelligent Control Technology Co ltd
Original Assignee
Xi'an Zhonglang Intelligent Control Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Xi'an Zhonglang Intelligent Control Technology Co ltd filed Critical Xi'an Zhonglang Intelligent Control Technology Co ltd
Priority to CN202011481289.5A priority Critical patent/CN112527648A/en
Publication of CN112527648A publication Critical patent/CN112527648A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45591Monitoring or debugging support

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)

Abstract

The application provides a testing method and a testing device of an embedded software system. According to the technical scheme, a virtual operating environment obtained by virtualizing a hardware system for operating the embedded software system is obtained, and the virtual operating environment is given to test the embedded software system. According to the technical scheme, the embedded software system is not directly tested on the hardware system, so that the test can be realized only after the hardware system is designed, the research and development and the test of the embedded software system can be synchronously executed with the development of the hardware system, and the development period of the whole embedded system consisting of the embedded software system and the hardware system can be saved.

Description

Testing method and testing device for embedded software system
Technical Field
The present invention relates to the field of software testing, and more particularly, to a testing method and a testing apparatus for an embedded software system.
Background
At present, in a development mode of an embedded system, for example, an embedded system in a flight device, a ship device, or a land transportation device, a software overall or general design is performed first, and then after a hardware device is started to reach a delivery state, software development and a tester perform software design development and unit component test, and software and hardware system integration test and verification.
Because the software system and the hardware system in the embedded system have great correlation, the embedded software system has the following problems in development and test: the test work of the embedded system software can be developed only after the development and the test of the related hardware equipment are completed, so that the period of the whole project is prolonged.
Disclosure of Invention
The application provides a testing method and a testing device of an embedded software system. The technical scheme provided by the application can accelerate the research and development of the embedded software system and shorten the research and development period of the whole embedded system.
In a first aspect, the present application provides a method for testing an embedded software system. The method comprises the following steps: acquiring a virtual operating environment obtained by simulating a hardware system for operating an embedded software system; and testing the embedded software system according to the virtual operating environment.
With reference to the first aspect, in a possible implementation manner, the obtaining a virtual operating environment obtained by simulating a hardware system used for operating an embedded software system includes: displaying a graphical interface for a user to input a virtual operating environment for a plurality of subsystems of the hardware system; acquiring virtual operating environments of a plurality of subsystems of the hardware system from the imaging interface; and constructing the virtual operating environment of the hardware system according to the virtual operating environments of the subsystems of the hardware system.
With reference to the first aspect, in one possible implementation manner, the hardware system includes: a control system for flight equipment and/or a control system for marine equipment.
In a second aspect, the present application provides a test case multiplexing apparatus. The device comprises: the system comprises an acquisition module, a storage module and a control module, wherein the acquisition module is used for acquiring a virtual operating environment obtained by simulating a hardware system for operating an embedded software system; and the testing module is used for testing the embedded software system according to the virtual operating environment.
With reference to the second aspect, in a possible implementation manner, the obtaining module is specifically configured to: displaying a graphical interface for a user to input a virtual operating environment for a plurality of subsystems of the hardware system; acquiring virtual operating environments of a plurality of subsystems of the hardware system from the imaging interface; and constructing the virtual operating environment of the hardware system according to the virtual operating environments of the subsystems of the hardware system.
With reference to the second aspect, in one possible implementation manner, the hardware system includes: a control system for flight equipment and/or a control system for marine equipment.
In a third aspect, a testing apparatus for an embedded software system is provided, the apparatus comprising a processor; the processor is used for executing the program stored in the memory; the processor is adapted to perform the method of the first aspect or any one of its implementations when the program stored in the memory is executed.
Optionally, the apparatus may further comprise the memory.
In a fourth aspect, there is provided a computer readable medium storing program code for execution by a device, the program code for performing the method of the first aspect or any one of its implementations.
In a fifth aspect, there is provided a computer program product comprising instructions which, when run on a computer, cause the computer to perform the method of the first aspect or any one of its implementations.
A sixth aspect provides a chip, where the chip includes a processor and a data interface, and the processor reads instructions stored in a memory through the data interface to execute the method in the first aspect or any one of the implementation manners.
Optionally, as an implementation manner, the chip may further include a memory, where instructions are stored in the memory, and the processor is configured to execute the instructions stored in the memory, and when the instructions are executed, the processor is configured to execute the method in the first aspect or any one of the implementation manners.
In a seventh aspect, a computing device is provided, the computing device comprising: a memory for storing a program; a processor for executing the program stored in the memory, the processor being configured to perform the method of the first aspect or any one of the implementations when the program stored in the memory is executed.
Drawings
FIG. 1 is a schematic flow chart diagram of a testing method of one embodiment of the present application;
FIG. 2 is a schematic flow chart diagram of a testing method of one embodiment of the present application;
FIG. 3 is a schematic block diagram of a test setup of an embodiment of the present application;
fig. 4 is a schematic structural view of a test apparatus of another embodiment of the present application.
Detailed Description
Fig. 1 is a schematic flow chart of a testing method of an embedded software system according to an embodiment of the present application. As shown in fig. 1, the method may include step 101 and step 102. The method may be performed by a test apparatus as shown in fig. 3 or fig. 4.
101, acquiring a virtual running environment obtained by simulating a hardware system for running the embedded software system.
In this embodiment, the hardware system includes: a control system for flight equipment and/or a control system for marine equipment. For example, the hardware system may be a flight control system on an airplane, and may also be a control system on a ship or a vehicle or a tank, and the like.
Various parameters of various components in the hardware system, such as the amount of computing resources, the amount of storage resources, etc. of the processor, may be included in the virtual execution environment resulting from the simulation or virtualization of the hardware system.
An embedded software system refers to a software product that ultimately runs in the hardware system.
And 102, testing the embedded software system according to the virtual operating environment.
Or, as it were, running the embedded software system in a virtual run-time environment to enable testing of the embedded software system.
For example, the embedded software system may be run on real hardware, but the various resources that the real hardware can provide for the embedded software system are limited based on the virtual run environment, so that the resources that the real hardware can provide for the embedded software system coincide with the resources that the hardware system of the embedded software system can provide.
In this embodiment, because the embedded software system is tested based on the virtual operating environment corresponding to the hardware system, and the virtual operating environment can be obtained based on various parameter simulations of the hardware system before the hardware system is completely developed, the test of the embedded software system can be performed synchronously with the development of the hardware system, so that the development cycle of the embedded software system can be shortened.
In this embodiment, step 102 may include step 201, step 202, and step 203.
A graphical interface is displayed 201 to facilitate user input of virtual operating environments of a plurality of subsystems of the hardware system.
202, acquiring virtual operating environments of a plurality of subsystems of the hardware system from the imaging interface.
And 203, constructing a virtual operating environment of the hardware system according to the virtual operating environments of the subsystems of the hardware system.
In the implementation mode, the virtual operating environment of each subsystem of the hardware system is obtained through the graphical interface, and the user experience can be improved.
FIG. 3 is a schematic block diagram of a test apparatus 300 according to an embodiment of the present application. The apparatus 300 may include an acquisition module 301 and a testing module 302.
The acquisition module 301 and the testing module 302 may be implemented by a processor.
The apparatus 300 may be used to perform the methods shown in fig. 1 or fig. 2. For example, the obtaining module 301 may be used to perform step 101, and the testing module 302 may be used to perform step 102.
Specifically, the obtaining module 301 may be configured to obtain a virtual running environment obtained by simulating a hardware system for running the embedded software system.
The testing module 302 may be configured to test the embedded software system according to the virtual operating environment.
For another example, the obtaining module 301 may be configured to perform steps 201 to 203, and the testing module 302 may be configured to perform step 102.
Specifically, the obtaining module 301 is configured to: displaying a graphical interface for a user to input a virtual operating environment for a plurality of subsystems of the hardware system; acquiring virtual operating environments of a plurality of subsystems of the hardware system from the imaging interface; and constructing the virtual operating environment of the hardware system according to the virtual operating environments of the subsystems of the hardware system.
The testing module 302 may be configured to test the embedded software system according to the virtual operating environment.
In one possible implementation, the hardware system includes: a control system for flight equipment and/or a control system for marine equipment.
Fig. 4 is a schematic structural diagram of a test case multiplexing apparatus 400 according to an embodiment of the present application. The apparatus 400 includes a processor 402, a communication interface 403, and a memory 404. One example of the apparatus 400 is a chip and another example of the apparatus 400 is a computing device.
The processor 402, the memory 404, and the communication interface 403 may communicate with each other via a bus. The memory 404 stores executable code therein, and the processor 402 reads the executable code in the memory 404 to perform a corresponding method. The memory 404 may also include other software modules required to run processes, such as an operating system. The operating system may be LINUXTM,UNIXTM,WINDOWSTMAnd the like.
For example, the executable code in memory 404 is used to implement the steps or operations in FIG. 1 or FIG. 2; processor 402 reads the executable code in memory 404 to perform step 101 or step 102 in fig. 1, or to perform steps 201 to 203 and step 102 in fig. 2.
The processor 402 may be a CPU. The memory 404 may include volatile memory (volatile memory), such as Random Access Memory (RAM). The memory 404 may also include a non-volatile memory (2 NVM), such as a read-only memory (2 ROM), a flash memory, a Hard Disk Drive (HDD) or a Solid State Drive (SSD).
Those of ordinary skill in the art will appreciate that the various illustrative elements and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware or combinations of computer software and electronic hardware. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the implementation. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
It is clear to those skilled in the art that, for convenience and brevity of description, the specific working processes of the above-described systems, apparatuses and units may refer to the corresponding processes in the foregoing method embodiments, and are not described herein again.
In the several embodiments provided in the present application, it should be understood that the disclosed system, apparatus and method may be implemented in other ways. For example, the above-described apparatus embodiments are merely illustrative, and for example, the division of the units is only one logical division, and other divisions may be realized in practice, for example, a plurality of units or components may be combined or integrated into another system, or some features may be omitted, or not executed. In addition, the shown or discussed mutual coupling or direct coupling or communication connection may be an indirect coupling or communication connection through some interfaces, devices or units, and may be in an electrical, mechanical or other form.
The units described as separate parts may or may not be physically separate, and parts displayed as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units can be selected according to actual needs to achieve the purpose of the solution of the embodiment.
In addition, functional units in the embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units are integrated into one unit.
The functions, if implemented in the form of software functional units and sold or used as a stand-alone product, may be stored in a computer readable storage medium. Based on such understanding, the technical solution of the present application or portions thereof that substantially contribute to the prior art may be embodied in the form of a software product stored in a storage medium and including instructions for causing a computer device (which may be a personal computer, a server, or a network device) to execute all or part of the steps of the method according to the embodiments of the present application. And the aforementioned storage medium includes: u disk, removable hard disk, read only memory, random access memory, magnetic or optical disk, etc. for storing program codes.
The above description is only for the specific embodiments of the present application, but the scope of the present application is not limited thereto, and any person skilled in the art can easily conceive of the changes or substitutions within the technical scope of the present application, and shall be covered by the scope of the present application. Therefore, the protection scope of the present application shall be subject to the protection scope of the claims.

Claims (9)

1. A testing method of an embedded software system is characterized by comprising the following steps:
acquiring a virtual operating environment obtained by simulating a hardware system for operating an embedded software system;
and testing the embedded software system according to the virtual operating environment.
2. The method of claim 1, wherein obtaining the virtual execution environment that simulates a hardware system for executing the embedded software system comprises:
displaying a graphical interface for a user to input a virtual operating environment for a plurality of subsystems of the hardware system;
acquiring virtual operating environments of a plurality of subsystems of the hardware system from the imaging interface;
and constructing the virtual operating environment of the hardware system according to the virtual operating environments of the subsystems of the hardware system.
3. The method of claim 1 or 2, wherein the hardware system comprises: a control system for flight equipment and/or a control system for marine equipment.
4. A test case multiplexing apparatus, comprising:
the system comprises an acquisition module, a storage module and a control module, wherein the acquisition module is used for acquiring a virtual operating environment obtained by simulating a hardware system for operating an embedded software system;
and the testing module is used for testing the embedded software system according to the virtual operating environment.
5. The apparatus of claim 4, wherein the obtaining module is specifically configured to:
displaying a graphical interface for a user to input a virtual operating environment for a plurality of subsystems of the hardware system;
acquiring virtual operating environments of a plurality of subsystems of the hardware system from the imaging interface;
and constructing the virtual operating environment of the hardware system according to the virtual operating environments of the subsystems of the hardware system.
6. The apparatus of claim 4 or 5, wherein the hardware system comprises: a control system for flight equipment and/or a control system for marine equipment.
7. A chip, comprising: a processor coupled with a memory;
the memory is to store instructions;
the processor is configured to execute instructions stored in the memory to cause the network device to implement the method of any of claims 1 to 3.
8. A computer-readable medium comprising instructions that, when executed on a processor, cause the processor to implement the method of any of claims 1 to 3.
9. A computing device, comprising: a processor and a memory, the processor coupled with the memory;
the memory is to store instructions;
the processor is configured to execute instructions stored in the memory to cause the network device to implement the method of any of claims 1 to 3.
CN202011481289.5A 2020-12-15 2020-12-15 Testing method and testing device for embedded software system Pending CN112527648A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011481289.5A CN112527648A (en) 2020-12-15 2020-12-15 Testing method and testing device for embedded software system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011481289.5A CN112527648A (en) 2020-12-15 2020-12-15 Testing method and testing device for embedded software system

Publications (1)

Publication Number Publication Date
CN112527648A true CN112527648A (en) 2021-03-19

Family

ID=75000385

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011481289.5A Pending CN112527648A (en) 2020-12-15 2020-12-15 Testing method and testing device for embedded software system

Country Status (1)

Country Link
CN (1) CN112527648A (en)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010049594A1 (en) * 2000-05-05 2001-12-06 Klevans Richard L. Method and system for hardware simulation
US20030093187A1 (en) * 2001-10-01 2003-05-15 Kline & Walker, Llc PFN/TRAC systemTM FAA upgrades for accountable remote and robotics control to stop the unauthorized use of aircraft and to improve equipment management and public safety in transportation
CN101713998A (en) * 2009-11-20 2010-05-26 大连海事大学 Hardware in-loop simulation system for controlling ship motion and working method thereof
CN104536856A (en) * 2014-12-12 2015-04-22 北京新能源汽车股份有限公司 Method and device for generating environment model for automobile controller test
CN106200625A (en) * 2016-08-26 2016-12-07 中通客车控股股份有限公司 Hybrid power whole passenger vehicle controller hardware assemblage on-orbit test platform
CN107132771A (en) * 2017-03-31 2017-09-05 北京蓝箭空间科技有限公司 A kind of carrier rocket flight quality efficient emulation verification method
CN111190820A (en) * 2019-12-25 2020-05-22 中国航空工业集团公司西安飞机设计研究所 Construction method and test method of configuration item test platform of display control software
CN111856965A (en) * 2020-06-22 2020-10-30 拓攻(南京)机器人有限公司 Unmanned aerial vehicle visual semi-physical simulation system and simulation method thereof

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010049594A1 (en) * 2000-05-05 2001-12-06 Klevans Richard L. Method and system for hardware simulation
US20030093187A1 (en) * 2001-10-01 2003-05-15 Kline & Walker, Llc PFN/TRAC systemTM FAA upgrades for accountable remote and robotics control to stop the unauthorized use of aircraft and to improve equipment management and public safety in transportation
CN101713998A (en) * 2009-11-20 2010-05-26 大连海事大学 Hardware in-loop simulation system for controlling ship motion and working method thereof
CN104536856A (en) * 2014-12-12 2015-04-22 北京新能源汽车股份有限公司 Method and device for generating environment model for automobile controller test
CN106200625A (en) * 2016-08-26 2016-12-07 中通客车控股股份有限公司 Hybrid power whole passenger vehicle controller hardware assemblage on-orbit test platform
CN107132771A (en) * 2017-03-31 2017-09-05 北京蓝箭空间科技有限公司 A kind of carrier rocket flight quality efficient emulation verification method
CN111190820A (en) * 2019-12-25 2020-05-22 中国航空工业集团公司西安飞机设计研究所 Construction method and test method of configuration item test platform of display control software
CN111856965A (en) * 2020-06-22 2020-10-30 拓攻(南京)机器人有限公司 Unmanned aerial vehicle visual semi-physical simulation system and simulation method thereof

Similar Documents

Publication Publication Date Title
WO2014035463A1 (en) System and methods for generating and managing a virtual device
US10671506B2 (en) Evaluating fairness in devices under test
US10430222B2 (en) Cloud based platform simulation for management controller development
US20080167854A1 (en) System and Method for Incorporating Design Behavior and External Stimulus in Microprocessor Emulation Model Feedback Using a Shared Memory
CN112100957B (en) Method, emulator, storage medium for debugging a logic system design
AU2019246793B2 (en) Generalized virtualization platform for systems using hardware abstraction software layers
US20180046485A1 (en) Platform simulation for management controller development on virtual machines
US9058427B2 (en) Iterative generation of symbolic test drivers for object-oriented languages
US10210296B2 (en) Adaptive bug-search depth for simple and deep counterexamples
CN104834591A (en) Method and system for testing AUTOSAR software component
JP6771413B2 (en) Software verification device and software verification program
CN110569154A (en) Chip interface function testing method, system, terminal and storage medium
CN108572892A (en) A kind of off-line test method and apparatus based on PowerPC multi-core processors
CN109753415B (en) Processor verification system and processor verification method based on same
CN110879786B (en) Test system of satellite-borne software
CN112527648A (en) Testing method and testing device for embedded software system
CN113272785B (en) Method for mounting file system, terminal equipment and storage medium
CN115373929A (en) Test method, device, equipment, readable storage medium and program product
US9400858B1 (en) Virtual verification machine for a hardware based verification platform
CN112506786A (en) Regression testing method and regression testing device
CN112527650A (en) Test case multiplexing method and multiplexing device
US9710581B1 (en) VIP assisted method and apparatus to enable SOC integration and software development
US20240193073A1 (en) Configuring a launch of components of a hardware-in-the-loop simulation environment
CN112527571A (en) CPU instruction set coverage rate calculation method and device
Bartholomew et al. Using combinatorial testing to reduce software rework

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20210319

RJ01 Rejection of invention patent application after publication