current position:Home>Summary of software testing tools in 2022 - embedded software testing tools

Summary of software testing tools in 2022 - embedded software testing tools

2022-06-24 06:09:57Truth and falsehood

When it comes to embedded software testing, maybe you are new , But in the era of intelligent Internet of things , People will pay more and more attention to embedded software testing .

Speaking of embedded software testing , Let's quickly understand the characteristics of embedded software . Embedded software is real-time 、 Limited memory space 、I/O Less channels , And low power consumption is required 、 high reliability , It is also sensitive to cost , Strong correlation with hardware , Therefore, the testing of embedded software is quite different from that of general commercial software .

   The environment of embedded software development and operation is completely different , It's separate. , Development in Windows/Mac OS Desktop client ( Host environment ) on , The running environment is on the target machine environment , That is, it is generally based on Linux/Android Embedded operating system developed by kernel or like RT-thread Such a real-time operating system , Support ARM CPU、 MCU and Bluetooth chip and other key hardware with low power consumption .

The unit test of embedded software is generally carried out in the host environment , Only in individual cases ( For example, the target compiler may be defective ) It will be required to perform... In the target environment , So in unit testing , The difference between embedded software and general commercial software is relatively small , however , The unit test of embedded software requires high code quality , General requirements MC/DC coverage .

Integration testing of embedded software , It generally refers to the integration with the hardware environment of the target machine , It can also be integrated with the simulation environment , At this time, we need to do the corresponding hardware compatibility test . But when it comes to system testing 、 Configuration item test or validation test , Generally, it will be executed in the target environment , At this time, it is quite different from the test of general commercial software . Due to the real-time performance of embedded system , The real-time response of the system shall be fully considered in the test , Its response time is generally required to be in the millisecond level , The corresponding load test is indispensable . When testing the target machine , Generally, the code compiled on the host computer needs to be instrumented . In this way, when the target machine executes the program , Return the predicted data during pile insertion to the host for analysis , therefore , The data transmission between the host and the target should also be taken seriously .

besides , We need to formulate the reliability level and security level that meet the system requirements , Carry out corresponding reliability test and safety test . Embedded software testing tools , There are few open source tools , Mostly business tools , And often in complete sets , Cover system functions 、 Performance analysis and safety testing . Today, we will introduce the commonly used or easy-to-use embedded software testing tools , There are mainly :

  1. ETest Studio
  2. Klocwork
  3. Hitex TESSY
  4. Rapita Verification Suite
  5. Squish
  6. Trinity DT10
  7. VectorCAST

2022 Summary of software testing tools in —— Embedded software testing tools

1. ETest Studio

2022 Summary of software testing tools in —— Embedded software testing tools

2022 Summary of software testing tools in —— Embedded software testing tools

A domestic black box testing tool , Can do configuration item test and system test , Including test resource management 、 Description of the environment 、 Interface protocol definition 、 Use case design 、 Real time data monitoring 、 Test task management and other functions , The main features are :

  • Provide various control buses and instrument interfaces API, Developers can integrate all kinds of general interface cards and user-defined interface cards . Supported by I/O Types include :RS232/422/485、1553B、CAN、TCP、UDP、AD、DA、DI、DO、ARINC429 etc. , And flexible expansion ;
  • Support the system to be tested and its peripheral environment 、 Visual simulation modeling and design of interface conditions , If provided Matlab/Simulink Integration interface , It can realize the development and utilization of existing simulation models , Support the generation and running of real-time code of simulation model ;
  • Provide interface protocol description language (DPD Language ) And its editing and compiling environment ;
  • You can use the form 、 Meter 、 diagram 、 Status lights and other virtual instruments monitor interface data in real time ;
  • Can be binary 、 Decimal system 、 Hexadecimal monitors the input and output original messages and queries and filters them ;
  • The test script supports timing test and multi task real-time test , It has the function of automatically generating test data meeting different combination coverage requirements ;
  • Provide real-time kernel module , It can realize high reliability and strong real-time test , response time <=1ms, Synchronous transmission and jitter time is less than 10us. The upper computer and the lower computer adopt Windows And real-time operating system .

2. Klocwork

2022 Summary of software testing tools in —— Embedded software testing tools

Klocwork It is a product that supports millions or even tens of millions of lines C/C++/Java/JS/C# Code quality static detection tool , Take advantage of leading in-depth data flow analysis technology , Statically cross class 、 Find software runtime defects across files 、 Errors and security vulnerabilities , And accurately locate the code stack path where the error occurs .

  • Klocwork Support automatic scanning 1000 Multiple code defects , Including null pointers 、 Resource and memory leaks 、 Uncaught exception 、 Divide by zero, etc , Comprehensively detect code quality problems
  • Klocwork Provide comprehensive security rule scanning capability , Support CWE, OWASP, CERT, PCI DSS, DISA STIG, and ISO/IEC TS 17961 Equal standard , Strong in-depth data flow analysis ability 、 High accuracy 、 Low underreporting rate
  • Support common IDE, Such as Eclipse, Visual Studio, IntelilJ Idea etc. , And with CI/CD Tools and integration 、B/S+C/S Deployment way
  • Klocwork Support static detection of security vulnerabilities in software applications , Include SQL Inject 、 Contaminated data 、 Buffer overflow 、 Weak code implementation and other common application security vulnerabilities

3. Hitex TESSY

2022 Summary of software testing tools in —— Embedded software testing tools

Tessy From Daimler - Mercedes Benz's Software Technology Lab , From Germany Hitex The company is responsible for global sales and technical support services , It is a special product based on C/C++ The developed embedded software carries on the unit / Tools for integration testing ,Tessy It can also meet all kinds of standards ( Such as ISO26262、IEC61508、EN 50128/50129 etc. ) The need for testing , And the tool itself passed TUV Certification of , Prove that the software is safe and reliable . The main functions are :

  • Automatically generate test environment 、 One click execution and evaluation results
  • Convenient test case design , For example, it integrates the classification tree editor CTE, Support importing and exporting test cases in multiple formats
  • Automatically identify functions and related interfaces by analyzing source files , When the interface changes , Support the reuse of test data through simple operation , Achieve highly automated regression testing
  • Provide branch coverage 、MC/DC、 Multi conditional coverage MCC And so on .

Other tools are also available , Such as :

  • Static code anlaysis
  • Test case specification
  • Working with standards
  • Analyzer
  • Hardware-in-the-loop test

2022 Summary of software testing tools in —— Embedded software testing tools

4. Rapita Verification Suite (RVS)

2022 Summary of software testing tools in —— Embedded software testing tools

RVS It is a set of testing tool set for embedded software , Support MC/DC Coverage analysis , Satisfy DO-178C and ISO 26262 Certification requirements . among RapiTest It has a test format that is easy to write and review, but rich in functions , And creating multithreaded tests and test code elements ( Such as generic and private types ) The ability of ( No need to write source code ).

  • unit 、 Generation and execution of integration and system testing - RapiTest
  • Structural code coverage analysis - RapiCover
  • Execution time analysis - RapiTime
  • Scheduling analysis - RapiTask

5. Squish

2022 Summary of software testing tools in —— Embedded software testing tools

Froglogic The company's Squish Is a popular cross platform 、 Multi technology integration GUI Testing tools , In particular, provide professional and comprehensive support for the following applications :Qt、Java GUIs、Web、Linux、Windows、IOS and android etc. .Squish Support BDD、 Data driven 、 Distributed batch testing and visual verification , Identify custom controls or 2D/3D Images , Support for multiple scripting languages :Python、Perl、JavaScript、Ruby and Tcl, The platform has two major products :

  • Squish: automation GUI test
  • Squish CoCo: Code coverage analysis

6. DT10

2022 Summary of software testing tools in —— Embedded software testing tools

DT10(Dynamic Test Tool DT10 ) It's a support C/C++, C#, Java Software gray box testing and system dynamic tracking debugging tools in many languages , Take advantage of leading automatic code insertion and data acquisition technology , Support complex of software system 、 Backtracking debugging of accidental defects 、 Performance testing 、CPU Load analysis 、 Variable monitoring 、 logic analysis 、 Memory usage analysis 、 Hardware monitoring and analysis , And coverage analysis .DT10 By hardware equipment Dynamic Tracer and PC End software consists of two main parts , The software part is responsible for source code insertion 、 Data processing and result analysis , The hardware part has complex interfaces 、 Signal acquisition and data communication .

. Strong defect backtracking and positioning ability 、

  • Support to track and detect the path during software execution 、 Variables and various intermediate states
  • Support the monitoring and analysis of the hardware status during the operation of the system, and analyze it synchronously with the software status
  • Support long-term continuous testing for up to one month , Coverage analysis of real-time dynamic update
  • The performance test function can refine any code module , And accurate to ns
  • Independent of the system under test CPU and OS type
  • Support serial port 、 Ethernet port 、 Asynchronous bus 、GPIO, SPI, SD Card and CAN Bus and other rich interface types

2022 Summary of software testing tools in —— Embedded software testing tools

7. VectorCAST

2022 Summary of software testing tools in —— Embedded software testing tools

VectorCAST It is an automatic dynamic testing tool chain of high reliability and high security software suitable for embedded software applications , For unit testing 、 Integration testing 、 Coverage analysis 、 regression testing 、 Static analysis 、 All links involved in software testing, such as system testing and quality analysis . Support C/C++ and Ada Language , Built in multiple intelligent automatic test case generation algorithms , Comply with various industry certification standards , Such as DO-178B/C, ISO 26262, ASPICE, IEC 61508, En 50128, IEC 62304, IEC 60880 etc. .

copyright notice
author[Truth and falsehood],Please bring the original link to reprint, thank you.

Random recommended