Introduction to white-box testing tools for commonly used embedded softwareAuthor: Tony Source: http://blog.csdn.net/vincetest
I,
Vctester
Shenzhen lingzhou Technology Co., Ltd.
Vctester is independently developed by Shenzhen lingzhou Technology Co., Ltd. It specializes in testing tools for Embedded white box testing. It follows the 4th-generation white box testing method (4gwm, the 4th generation white-box-testing methodology) provides a systematic testing solution for effective implementation of unit testing, integration testing, and protocol testing for the C language. Vctester only supports White-box testing of C source code on the VC platform. It is mainly used for source code testing of real-time embedded products such as communication devices, embedded handheld terminals, and medical devices.
The functions of the vctester shared version are as follows:
1.
Script-based test driveVctester uses the CSE script language to compile test cases. The style of the CSE language is similar to that of the C language, which is easy to use and easy to use. Write the CSE script to read global variables, assign values to variables, and call functions.
2. Script Pile[Article Source: Vince Testing Technology Research Center. A specific test process can be written in the script pile function, or a specific value is returned for testing.
3.
Online TestingAfter running the target test program, design and run the test cases online, and improve or add the test cases based on the test results to continuously perform the test online. Vctester makes the unit test process simpler and clearer. What you see is what you get, and the operation process is more user-friendly.
4.
Instant commissioningVctester works with the debugging program in VC to support single-step debugging of the target code. You can use VC to set breakpoints and perform single-step tracking. During the test case design process, both the test driver and script pile can be selected and executed in part or whole. Code debugging and script debugging are both performed online and can be performed in real time.
5.
Test Project ManagementSupports intuitive tree-based test case management, batch execution of Single-case, single-Test Set, multi-use cases, and multi-Test Set, and automatic testing of the entire project through command lines. The vctester shared version is positioned for individual test applications, while the commercial version is positioned for enterprise-level applications. It adds features to adapt to team operations and product quality assurance activities. The commercial version has the following features:
1.
Support testing and evaluation systems that comply with the 4th-generation white box testing methodsThe commercial version provides two types of code coverage rate statistics: licc and ldcc, and evaluates the test design level. The evaluation results can be displayed online and intuitively, and test reports can be automatically generated. The shared version does not have these functions.
2.
Integration of commissioning and testing, supporting automatic conversion of debugging operations into test scriptsThe commercial version of the viewer supports debugging operations to convert scripts. This function can help you develop the habit of spontaneous testing and get rid of the passive testing status unconsciously, the viewer also supports more powerful script piling functions, such as condition piling, precheck, and postcheck definitions. The shared version does not have these functions.
3.
Provides an integrated work platform to greatly improve development efficiency.The source code and test cases of the commercial version can be edited and maintained on the same ide platform. In the same form, the integrated debugging of test scripts and source code is supported. The integrated interface supports breakpoint setting and single-step tracking. The shared version does not support single-step debugging. Vctester provides an excellent ide editor with powerful editing functions. It supports prompt input, full-text search and replacement, function call relationship analysis, definition and reference jump, and online viewing of the coverage of each row of calls. The shared version does not support function call Link Analysis and online query. Both the shared version and the commercial version support integration of external tools, such as engineering build integration and automatic checkin and checkout integration.
4.
Support Complete Test message construction and parsingThe commercial version provides the user data UDT editor to quickly construct test data. Shared version does not have this function. The commercial version also provides a general message editor and a message parser to customize message templates. This function is especially suitable for communication protocol testing. Its message parser and editor can also be freely integrated into user products or related IT tools. With this function, you can extend the vctester tool to protocol testing, functional testing, and other fields. The shared version does not provide these functions.
5.
Support Test Design refactoringWhen the tested code has been significantly adjusted and reconstructed once or multiple times, the commercial version supports fast test design refactoring, this feature ensures that the continuous integration operation process does not break the chain due to code refactoring. The shared version does not have this function. The commercial version fully supports the functions required by the 4th white box testing method, while the shared version lacks many functions. In addition, the test script of the commercial version is fully compatible with the shared version. You can use the shared version for evaluation or trial use. After purchasing the commercial version, all use cases can be seamlessly upgraded to the commercial version.
Shared version free, commercial version price see its official website http://www.eztester.com.
Http://www.eztester.com
Online: http://www.eztester.com
II,
Codetest
Metrowerks [Source: Vince Testing Technology Research Center http://blog.csdn.net/vincetest]
Codetest is the world's first tool suite designed for Embedded System Software Testing. codetest is used to track embedded applications and analyze software performance, the coverage rate of testing software and the Dynamic Distribution of storage bodies provide a real-time online and efficient solution. Codetest is also a shared network tool that will bring high-quality testing methods to the entire development and testing team.
The basic codetest system includes the following four modules: 1.
Performance AnalysisCodetest can perform non-sampling tests on up to 32000 functions at the same time to accurately calculate the execution time or interval of each function or task (based on RTOS, and can list the maximum and minimum execution time. Each call between two functions or tasks can also be counted to confirm the call that fails. The performance analysis function of codetest can also provide a basis for optimization of embedded applications, so that software engineers can optimize some key functions or modules and improve the overall performance of the entire software. [Source: Vince Testing Technology Research Center http://blog.csdn.net/vincetest.pdf 2.
Test Coverage AnalysisCodetest provides a general overview of the program, function-level code, source-level coverage trends, and other modes to observe software coverage. Since codetest is a completely interactive tool, testers can track coverage while operating the system. Codetest coverage information includes all the content actually executed by the program, instead of the sample result. It distinguishes the running and unexecuted code by different colors. codetest can track more than 1 million pivot points, especially suitable for testing large embedded software. Codetest can also generate a comprehensive report that integrates multiple test results to enable testers to see the overall effect of the entire test site. 3.
Dynamic Storage Allocation AnalysisBefore codetest was born, it was difficult to track the distribution of dynamic memory. The codetest analysis shows the number of bytes of memory allocated to the program. In this way, it is not difficult to find that those functions occupy a large amount of storage space, and those functions do not release the corresponding storage space. The tester can even observe that the distribution of the storage body increases or decreases dynamically as the program runs, that is, codetest can calculate the distribution of all the memory. As the program runs, codetest can point out the storage body allocation error, and the tester can view the corresponding source program content at the same time. 4.
Trace)Codetest can track embedded software by source program, control flow, and advanced mode. The maximum tracing depth can be up to 1.5 million source-level programs. The advanced tracing mode displays the RTOS events and function entry and exit, giving the tester a large diagram of the program process; control flow tracing adds the display of each branch statement in the executable function, and source tracing adds the display of all statements executed. In the above three modes, the detailed memory allocation will be displayed, including the row in the code file, which calls the memory allocation or release function, memory size and pointer of allocated memory, pointer of released memory, memory error.
Unknown
Unknown
Agent of Shenzhen huatang Technology Co., Ltd.
III,
Rtrt (rational test realtime)
IBM Rational
IBM Rational test realtime helps developers create test scripts, execute test cases, and generate test reports. It also provides static analysis and runtime analysis for tested code. With this tool, developers can greatly improve the test efficiency.
1.
Static code analysis, function testing, and runtime analysis are integrated.
2.
Code editing, testing, and debugging are integrated.
3.
Test realtime
By analyzing the source code, the test driver and test stub templates are automatically generated. Developers only need to specify the test input data, expected output data, and piling function logic based on the test script.
4.
After the test is executed, the test report and various runtime reports are automatically generated. The test report shows the test cases that pass or fail, while the runtime analysis report includes the code coverage analysis report, memory Analysis Report, performance analysis report, and execution tracing report.
5.
The target deployment port technology supports both development and target machine tests.
Unknown
Http://www.ibm.com/cn
Unknown
IV,
Cppunit
Open-source testing tool [Source: Vince Testing Technology Research Center http://blog.csdn.net/vincetest]
Cppunit is a unit test framework implemented in C ++ and is a member of the xunit series. Its first version is Michael feathers transplanted from JUnit. The current version is 1.10.2, and the source code can be downloaded at http://sourceforge.net/projects/cppunit. This library is currently protected by GNU lgpl (lesser General Public License.
1.
Provides a test case design framework
2.
Provides common public functions for testing, such as setup (), teardown (), and cppunit_assert.
3.
Use the tested code C ++/C to write the test code
4.
Write test report to log file
Free access to open-source tools
Http://sourceforge.net/projects/cppunit
Online: http://sourceforge.net/projects/cppunit
V,
Cantata ++
IPL [Source: Vince Testing Technology Research Center: http://blog.csdn.net/vincetest]
Cantata/cantata ++ is a source code-oriented testing and analysis tool throughout the software development process, including code review, unit testing, integration testing, system testing, and software maintenance.
1.
Static AnalysisIt allows users to enhance code standards and evaluate the complexity and maintainability of software.
2.
Dynamic TestingVerifies software requirements and provides a formal framework for testing description, execution, archiving, reuse, and repeated dynamic tests. Generate a complete diagnosis and quality validation report through testing. Provides a large amount of coverage analysis: statement coverage, condition branch coverage, data value coverage, MC/DC, and user-defined standards.
3.
Software executionTest whether the program meets the requirements
4.
Data checkCheck user-defined types
5.
Test scriptAutomatically generated based on user-defined test case definition
6.
Automatic PilingUse the pile module to simulate function calls of the tested module. You can pass parameters to the pile module and set the return parameters of the pile module.
7.
Time ToolTime when the software is executed
8.
Cantata
Supports C and cantata ++ C ++
Unknown [Source: Vince Testing Technology Research Center http://blog.csdn.net/vincetest]
Unknown
Unknown
VI,
C ++ Test
Parasoft
C ++ test is a powerful automated C/C ++ unit-level testing tool that can automatically test any C/C ++ functions and classes, automatically generate test cases, test-driven functions, or pile functions. In an automated environment, it is extremely easy to quickly increase the unit-level test coverage to 100%.
1.
Instant test class/Function
2.
Supports code testing in extreme programming mode
3.
Automatically create test drivers and Pile calls for classes/functions
4.
Automatically create and execute test cases for classes/functions
5.
Provides a framework for fast addition and execution of instructions and functional tests.
6.
Perform an automatic regression test
7.
Execute part test (COM)
Unknown [Source: Vince Testing Technology Research Center http://blog.csdn.net/vincetest]
Http://www.parasoft.com
Unknown
VII,
Purecoverage
Rational
Purecoverage is a test coverage test for VC, VB, or Java development.
Tool, which can automatically detect your test integrity and those that cannot be achieved.
A volume control project that can use purecoverage to produce detailed tests at each test phase
Coverage report.
1.
Instant code testing percentage display
2.
Not tested. Incomplete functions are tested. The status of the process or method indicates
3.
Locate specific untested code lines in the source code
4.
Custom Data Collection to maximize execution efficiency
5.
Customize the display mode for the desired focus details
6.
Merging data coverage from multiple executions of a program
7.
Share data coverage with other team members or generate reports
8.
Use purecoverage integration in the development environment to implement detection code coverage (visual stadio, vb5 +)
Unknown
Unknown [Source: Vince Testing Technology Research Center http://blog.csdn.net/vincetest]
Unknown
8,
Vectorcast
Vector Software
Vectorcast scans your Ada, C/C ++, and embedded C ++ (EC ++) source code, automatically generate test code to construct an executable test architecture for the host and embedded environment. Using vectorcast to test the system, your component simulation model can be updated frequently. It takes only a few minutes to build a test environment required for a single independent software component. It also provides components for constructing and running test examples and generating reports required to provide statistical information between actual and predicted results.
Vectorcast consists of the following six integrated components:
1.
Environment Generator
2.
Test sample Generator
3.
Operation Controller
4.
Report Builder
5.
Dynamic analysis-code coverage
6.
Static analysis-code integrity and basic path
Unknown
Unknown
Unknown [Source: Vince Testing Technology Research Center http://blog.csdn.net/vincetest]
IX,
Logiscope
Telelogic
Telelogic logis is a software quality assurance tool. It can help expand the test scope by automatically performing code checks and identifying error-prone modules, so as to ensure the quality and complete software testing. Customizable software testing helps you detect defects early in the software development process, so that you can deliver the software on time, control the cost within the budget, and improve the software quality. [Source: Vince Testing Technology Research Center: http://blog.csdn.net/vincetest]
1.
Software Quality Analysis
2.
Code standardization Detection
3.
Test Coverage rate statistics
4.
Logiscope
You can analyze Code implemented in multiple languages, such as C, C ++, Java, and Ada.
Unknown [Source: Vince Testing Technology Research Center http://blog.csdn.net/vincetest]
Http://www.telelogic.com.cn
For more information about how to choose Embedded white-box testing tools, see http://blog.csdn.net/wayne_chan/archive/2006/10/13/1332571.aspx. Welcome to repost this article, please indicate the source of the article: Vince Testing Technology Research Center http://blog.csdn.net/vincetest