中文  |  English
Home > R&D tools > VectorCAST

VectorCAST

VectorCAST is one of Vector’s leading dynamic automation testing tools for C/C++ code, enabling both unit/integrity testing(VectorCAST/C++) and system testing(VectorCAST/QA). VectorCAST follows some industry standards such as ASPICE, ISO26262, and is suitable for embedded system with high security and high reliability requirement, and it can reduce development risk and improve code quality.

Based with RAD model development, VectorCAST realized rich integration with RAD model, in function, it covers with various aspects involved in software testing such as requirement analysis, unit testing, integrity testing, coverage analysis, regression testing, partial system testing and so on. VectorCAST can run on Windows, Linux and other operation systems, its biggest feature but also biggest advantage compared with other similar product is maximum automation and more suitable for embedded environment.


image.png   

Figure 1.  RAD model

With different code testing requirement for customers, VectorCAST provide appropriate solutions for customers, including VectorCAST/C++ and VectorCAST/QA, VectorCAST/C++ is used for unit testing, and VectorCAST/QA is used for system testing.

VectorCAST/C++

VectorCAST/C++ is an integrated software testing solution, it is mainly used for dynamic unit testing and integrity testing for C/C++ code, significantly reducing the time, effort and cost in testing process. 

image.png

Figure 2.  VectorCAST/C++

VectorCAST/C++ features

1) Requirements-based Testing

VectorCAST/C++ can integrity some online requirements management servers such as Polarion/DOORS/PTC/IBM or some local requirements documents, customizing test cases based on test requirements, and realizing bidirectional traceability.

2) Code Coverage Analysis

VectorCAST/C++ provides integrated code coverage utility that allow you to gauge the effectiveness of your component testing by reporting on the source code statements or decision points exercised during individual or multiple test run. Code coverage data can also be shared with VectorCAST/QA to produce combined coverage reports that reflect unit, integration, and system testing. In the source code, the code coverage status is marked by color, the red represents the code is uncovered, the yellow represents the code is partially covered, the green represents the code is covered. In testing report, according to coverage requirements, the coverage fraction is counted by color and percentage, and indicates the coverage information for users.


image.png

                     Figure 3.  VectorCAST coverage statistics

3) Automatic Test Case Creation

VectorCAST/C++ supports for automatic generation of test cases with variety forms of input and output parameters, users don’t need to write test code, can completely automatically set parameters through GUI windows, and can also create test case automatically based on different coverage requirements to meet coverage requirement as much as possible, including basis path, equivalence classes, boundary values, and MC/DC test cases, satisfies the requirements of ASIL D level in ISO26262. For basis path coverage, VectorCAST can automatically generate test case with 90% to 100% coverage. For MC/DC, VectorCAST can analyzes code structure based on MC/DC coverage, and then automatically generate test case. Meanwhile, users can also analyzes code structure and create test case according to MC/DC metrics.

image.png

                     Figure 4.  Test Case Automatic Generation

4) Regression Testing

VectorCAST has a powerful regression test function, which can execute test cases through GUI-Incremetal or command line regularly and reconstruct the test environment in an incremental way, check for code change, and only execute affected test cases, and then save the testing time and reduce the project version maintenance costs.

5) VectorCAST/RSP

VectorCAST/RSP is a real-time package in VectorCAST tool suite. Combine with VectorCAST/RSP, VectorCAST/C++ can support real-time application testing in embedded target boards or simulators. The test cases are designed on the host computer and run in the embedded target environment, and then realizing the real-time testing in embedded target environment.

6) Compiler Integration

Given the abundance of embedded systems, VectorCAST/C++ supports many kinds of mainstream compilers, all VectorCAST/C++ generated test harness components are automatically compiled and linked using your compilers. An interface to your compiler’s debugger is also provided so that you can run test cases under control of the debugger. Here is the part list of compilers and embedded environment supported by VectorCAST/C++: 

image.png

7) Test Execution Trace and Playback

Given of code complexity and the familiarity with the code of testers, VectorCAST/C++ support single-step playback code execution trajectories of test cases to assist in code coverage analysis and code debugguing.

8) Batch Insert Test Case

VectorCAST/C++ supports to input data list as CSV format and generates test cases in batches.

9) Integrated with Jenkins to Realize Continuous Integrated Development/Test

VectorCAST/QA

VectorCAST/QA is primarily used for automated system test and provides an integrated workflow for white-box system testing. Through integrating user software compile/construction environment and existing test infrastructure, VectorCAST/QA can capture the key metrics in system testing, like code complexity, the frequency of code change, test cases status and code coverage and so on.

VectorCAST/QA features:

1) Automatically capture and maintain code coverage data during system testing, and help users to rapidly identify the part untested, and then confirm the required resource for improving test completeness.

2) Change-based testing, and automatically calculate the minimum set of test cases for the requirement of providing complete test changes, or identify test cased affected by code changes and then re-executed.

3) VectorCAST/QA can’t generate test case by its own, but VectorCAST/QA can follow the existing system testing framework and test cases of clients.

4) Automatically insert stub function of customer source code, and add code coverage interface, whick will cause the source code to expand, the more meticulous the function inserting, the higher the code expansion. So, VectorCAST/QA has certain requirements on the system.

5) Integrate with Jenkins, and execute test cases continuously in Jenkins, then realize continuous integrated development/testing.

image.png

Figure 5.   VectorCAST/QA

Quality Certification

VectorCAST has passed TÜV certification, and followed the relevant industry certification standard, such as the automobile standard ASPICE and ISO26262(ASIL D), the industry standard IEC61508, the rail transit industry standard EN50216 and so on. And VectorCAST is the ”only” code test tool for certifying big/small version, and free to provide《Safety Manual》to users to help its authentication in the market.

image.png

Figure 6.   Certification


 

 Automotive Industry Users/Project Summary


image.png