C and C++ Unit and Integration Testing
VectorCAST/C++ is a highly automated unit and integration test solution used by embedded developers to validate safety and business critical embedded systems. This dynamic test solution is widely used in the avionics, medical device, automotive, industrial controls, railway, and financial industries.
- Can be used on new or legacy applications
- Ease of use enables non-regulated industries to realize benefits of C and C++ unit testing
- Makes developer testing a streamlined and repeatable technology
- Moves testing from a manual process to engineering rigor
- Proven reduction in cost by automating framework creation to isolate newly developed code
The key features of VectorCAST/C++ include:
- Complete test-harness construction for C and C++ unit and integration testing – no writing of test code
- Stub and driver code built automatically
- Test execution from GUI or scripts
- Code-coverage analysis with optimization for embedded systems
- Integrations with The MathWorks® Simulink®, Green Hills® INTEGRITY®, IBM® Rational® DOORS® IBM® Rational® Rhapsody®, PC-Lint and other tools
- On-target and simulator test execution
- Code-complexity analysis highlights high risk code
- Automatic test case generation based on decision paths
- Test execution playback to assist in debugging Integrated with leading static analysis tools
How it Works
VectorCAST/C++ parses your source code and invokes code generators to automatically create the test code (stubs and drivers) required to construct a complete, executable test harness.
Once the test harness is constructed, VectorCAST/C++ can be used to build and execute test cases, show code covered, and report static measurements. Test data is maintained separately from the test harness, enabling easy automatic regression testing.
Components of the VectorCAST executable harness
- test driver
- source file(s) under test
- complete stubs for dependent functions
- source files for any dependent units that are not stubbed
- The test harness is data-driven, meaning the harness reads test data during execution. This approach eliminates the need to compile and link a new executable harness for each new test.
VectorCAST/C++ also generates code coverage metrics which indicate which areas of the code that you are testing still have not been tested. The easy-to-read code coverage viewer indicates down to the line of code where there is testing left to be done and can support the different levels of coverage specified in various industry standards like: IEC 62304, ISO 26262, DO-178B/C and IEC 61508.