Unit Testing
Posted in Parasoft
Unit Testing
Test case generation, execution, optimization, management and coverage
- Industry leader in unit testing since 1997
- Rapidly build a high-coverage test suite
- Easily extend and customize generated tests
- Expose functional problems and crash-causing defects
- Remove barriers to creating/maintaining robust test suites
- Integrated with static analysis, code review — more
Unit Test Creation
Parasoft automatically analyzes code then generates a high-coverage test suite with complete xUnit-format tests. These extensible and reusable tests capture existing application behavior for a regression safety net. They can also use corner case conditions to expose defects.Additionally, realistic functional tests can be created via tracing.
You can exercise the application behavior which you want tests to capture. Then we automatically generate unit test cases that represent the actual paths and data used. This can be run independently of the complete system to isolate code behavior changes, reduce setup complexities, and make it practical to execute on a daily basis.
Unit Test Optimization
A variety of technologies help you extend the automatically-generated test cases and get more from your existing (e.g., TDD) test cases:
- Easy test case extension.
- An object repository and flexible stubs framework to make tests more realistic.
- Data-driven testing with different sets of data (automatically-generated or from a data source).
- Integrated coverage tracking.
- Automated distribution of test failures to the appropriate code authors.
- Runtime error detection and debugger integration during test execution.
- Requirements traceability and detailed reporting for auditability.
Embedded Unit Testing on the Host, Target, Simulator
Parasoft automates the complete test execution flow, including test case generation, cross-compilation, deployment, execution, and loading results (including coverage) back into the GUI. The test execution sequence is completely customizable. Testing can be driven interactively from the GUI or from the command line for automated test execution, as well as batch regression testing. In the interactive mode, users can run tests individually or in selected groups for easy debugging or validation. For batch execution, tests can be grouped based either on the user code they are liked with, or their name or location on disk. The test execution sequence is fully customizable. In addition to using the built-in test automation, users can incorporate custom test scripts and shell commands to fit the tool into their specific build and test environment.
Multi-Metric Test Coverage Analysis
A multi-metric test coverage analyzer—including line, statement, block, decision/branch, path, and MC/DC, and condition coverage—reports coverage metrics as well as graphically displays tested vs. untested code via annotated source code. Back tracing from coverage elements to the corresponding test cases enables users to analyze test results and extend the test cases for better coverage, with higher efficiency.Parasoft tracks coverage at the unit, integration, and system (manual/scripted) test levels, and can deliver integrated reporting for all tested levels.
Beyond Unit Testing
Unit testing is a critical component of a comprehensive quality process . . . but it is just one component. The most effective quality processes involve a combination of test and analysis practices embedded throughout the SDLC.That’s why Parasoft’s unit testing technologies are fully integrated with a broad range of complementary capabilities ranging from peer review, to static code analysis, to end-to-end functional and load testing, to service virtualization.For organizations ready to take the next step towards ensuring that quality software is produced consistently and efficiently, Parasoft Development Testing Platform integrates policy-driven project management with Parasoft Test’s Automated Defect Prevention and end-to-end QA testing. This ensures predictable project outcomes while driving unprecedented levels of productivity and application quality.
Do you wish to know more ?