Parasoft Logo

Discover TÜV-certified GoogleTest with Agentic AI for C/C++ testing!
Get the Details »

Code Coverage Across Builds, Tests, & CI/CD Pipelines

Monitoring and analyzing code coverage across builds, testing practices, and pipelines fosters a data-driven culture to inform decisions.

Get Complete Code Coverage—At Scale

Getting complete coverage across large codebases and multiple teams isn’t easy. Parasoft helps you scale coverage without slowing down development—so leadership gets reliable data for decisions and teams stay productive.

Reduce Release Risk

Track code coverage across all testing practices to identify areas of poor coverage and high risk, helping improve your test strategy.

Fill Coverage Gaps

Use our solutions to target test generation for uncovered lines of code, quickly addressing gaps and strengthening your testing suite.

Validate Every Change

Use modified code coverage analytics to maintain coverage for all new and changed code per build, ensuring quality and reducing risk even if total project coverage is below target.

Achieve Coverage Goals

Combine insights from all test types to understand total coverage. Gain a detailed view of coverage for modified code and ensure every change is tested.

Meet Safety-Critical Coverage Requirements

Ensure thorough testing, fulfill regulatory requirements, enhance fault detection, reduce risks, and improve security assurance with Parasoft’s code coverage solutions. Verify that every line of code has been tested to reduce the likelihood of undetected defects causing system failures.

How It Works

Ensure code coverage for embedded safety and security-critical applications by employing a blend of techniques with Parasoft C/C++test and C/C++test CT to meet compliance standards. Code instrumentation is central to this effort, which involves integrating additional code into the user codebase to track the execution of statements, branches, and MC/DC code structures. Often, code coverage must be gathered directly from the target hardware, which both C/C++ testing solutions do.

Parasoft C/C++test and C/C++test CT, together with Parasoft DTP, collects coverage metrics and produces documentation that’s indispensable for safety-critical applications. Generated reports detail each line of code’s execution status—whether it’s fully, partially, or not—serve as a critical reference for development teams and certification auditors, facilitating the assessment of code coverage compliance.

It’s imperative that code coverage analysis tools are TÜV-certified for use in safety-critical applications, like both C/C++test and DTP.

Screenshot of Parasoft C/C++test with Statement Coverage selected.

How It Works

Ensure code coverage for embedded safety and security-critical applications by employing a blend of techniques with Parasoft C/C++test and C/C++test CT to meet compliance standards. Code instrumentation is central to this effort, which involves integrating additional code into the user codebase to track the execution of statements, branches, and MC/DC code structures. Often, code coverage must be gathered directly from the target hardware, which both C/C++ testing solutions do.

Parasoft C/C++test and C/C++test CT, together with Parasoft DTP, collects coverage metrics and produces documentation that’s indispensable for safety-critical applications. Generated reports detail each line of code’s execution status—whether it’s fully, partially, or not—serve as a critical reference for development teams and certification auditors, facilitating the assessment of code coverage compliance.

It’s imperative that code coverage analysis tools are TÜV-certified for use in safety-critical applications, like both C/C++test and DTP.

Image of a medical professional looking at the medical stats displayed on a patient
CASE STUDY |
Logo for Smiths Medical

Smith’s Medical Delivers Safe, High-Quality Medical Devices

70%

Code coverage reached with automated test generation and execution.

Automated

Tool qualification process to reach code coverage requirements.

Code Coverage for C/C++

Collect, monitor, and analyze C/C++ code coverage data generated during dynamic analysis testing, including unit, integration, and system testing phases with our testing solutions for C and C++ software development.

How It Works

Fundamental in software testing and quality assurance, code coverage metrics offer valuable insights into testing thoroughness and pinpoint areas that may require more attention. Parasoft’s C and C++ testing solutions collect various types of code coverage metrics during dynamic analysis testing, whether conducted locally or via integration with the CI/CD pipeline.

Embedded developers can examine coverage results directly in a preferred code editor, ensuring a streamlined workflow. Teams can guarantee adherence to requirements with tailored quality gates to automatically validate builds based on predefined code coverage metrics.

Our solutions intelligently aggregate coverage information from various execution runs, including testing on target hardware, providing a comprehensive understanding of the code’s test coverage. By analyzing coverage at granular levels like method, class, file, or project, teams can accurately pinpoint areas with insufficient coverage and higher risk.

DTP’s comprehensive reports and dashboards show aggregated, in-depth test coverage and compliance metrics. Teams can automate requirements traceability between test cases, code artifacts, and requirements to ensure a cohesive, efficient development process required in safety-critical development.

Screenshot of Parasoft DTPs reporting dashboard showing Complete Code Coverage.

How It Works

Fundamental in software testing and quality assurance, code coverage metrics offer valuable insights into testing thoroughness and pinpoint areas that may require more attention. Parasoft’s C and C++ testing solutions collect various types of code coverage metrics during dynamic analysis testing, whether conducted locally or via integration with the CI/CD pipeline.

Embedded developers can examine coverage results directly in a preferred code editor, ensuring a streamlined workflow. Teams can guarantee adherence to requirements with tailored quality gates to automatically validate builds based on predefined code coverage metrics.

Our solutions intelligently aggregate coverage information from various execution runs, including testing on target hardware, providing a comprehensive understanding of the code’s test coverage. By analyzing coverage at granular levels like method, class, file, or project, teams can accurately pinpoint areas with insufficient coverage and higher risk.

DTP’s comprehensive reports and dashboards show aggregated, in-depth test coverage and compliance metrics. Teams can automate requirements traceability between test cases, code artifacts, and requirements to ensure a cohesive, efficient development process required in safety-critical development.

Image of a satellite floating in outer space.
CASE STUDY |
Logo for Qinetiq

QinetiQ Reduces Software Problem Reports by 75%

Learn how a the Belgian space division of UK-based QinetiQ leveraged Parasoft C/C++test to:

75%

Reduction of software problem reports issued during development.

Decreased

Development costs with self-verification.

Code Coverage for Java and .NET

Collect, monitor, and analyze code coverage from unit, API, UI, end-to-end and manual tests for Java and .NET applications—whether executed with Parasoft or any third-party testing framework. Gain actionable insights into which lines of code have been tested.

How It Works

Parasoft’s Java code coverage and .NET code coverage solutions collect coverage across multiple testing practices, including unit, API, web UI, end-to-end, and manual testing—even in distributed, microservices-based applications.

Teams get a unified view of test coverage across the entire testing lifecycle. They can access coverage results in IDEs, export coverage reports, or publish them to Parasoft DTP for centralized dashboards, analysis, and trend visibility. Teams can also:

  • Measure unit test coverage with Jtest or dotTEST. Capture execution-based coverage for Java or .NET applications.
  • Aggregate coverage from any testing framework. Leverage coverage agents and Parasoft CTP to collect code coverage using any test framework.
  • Aggregate coverage from incremental test runs with CTP and DTP. See an aggregated code coverage view built from running subsets of functional tests across multiple builds—ideal when your full test suite is too large to execute in a single run.
  • Analyze coverage at every level. Drill down by project, file, class, or method to identify untested, high-risk code with Jtest, dotTEST or DTP.
  • See a unified test coverage view. Merge coverage from multiple testing practices such as unit, API, web UI, end-to-end, and manual testing into a single, correlated view in DTP’s dedicated code coverage widgets and dashboard.
  • Close coverage gaps efficiently. Autonomously generate new unit tests for uncovered code in build pipelines to meet coverage targets.
  • Enforce quality gates. Automatically validate builds against defined coverage thresholds in CI/CD pipelines.

Recommended Products

Screenshot of Parasoft Jtest showing code coverage percentages for Java code.

How It Works

Parasoft’s Java code coverage and .NET code coverage solutions collect coverage across multiple testing practices, including unit, API, web UI, end-to-end, and manual testing—even in distributed, microservices-based applications.

Teams get a unified view of test coverage across the entire testing lifecycle. They can access coverage results in IDEs, export coverage reports, or publish them to Parasoft DTP for centralized dashboards, analysis, and trend visibility. Teams can also:

  • Measure unit test coverage with Jtest or dotTEST. Capture execution-based coverage for Java or .NET applications.
  • Aggregate coverage from any testing framework. Leverage coverage agents and Parasoft CTP to collect code coverage using any test framework.
  • Aggregate coverage from incremental test runs with CTP and DTP. See an aggregated code coverage view built from running subsets of functional tests across multiple builds—ideal when your full test suite is too large to execute in a single run.
  • Analyze coverage at every level. Drill down by project, file, class, or method to identify untested, high-risk code with Jtest, dotTEST or DTP.
  • See a unified test coverage view. Merge coverage from multiple testing practices such as unit, API, web UI, end-to-end, and manual testing into a single, correlated view in DTP’s dedicated code coverage widgets and dashboard.
  • Close coverage gaps efficiently. Autonomously generate new unit tests for uncovered code in build pipelines to meet coverage targets.
  • Enforce quality gates. Automatically validate builds against defined coverage thresholds in CI/CD pipelines.

Recommended Products

Screenshot of Parasoft Jtest showing code coverage percentages for Java code.
Profile image of a human head filled in with data connectors to reflect artificial intelligence.
CASE STUDY | FINANCE INDUSTRY

AI-Driven Java Unit Testing Boosts Developer Productivity for Financial Firm

Learn how a leading financial firm leveraged Parasoft Jtest to:

85%

Code coverage achieved in a few weeks.

90%

Reduction of test execution time in the CI/CD pipeline.

Obtain Code Coverage for Legacy Code

Teams modernizing legacy applications use analysis provided by our code coverage tools for Java, .NET, C#, C, and C++ applications to create a strategy that safeguards existing functionality when making changes.

How It Works

With insight into previously tested legacy applications, teams can evaluate the effectiveness of their inherited regression test suite and determine if new test cases are needed to strengthen their regression safety net.

For legacy applications with low coverage, Parasoft Jtest or C/C++test rapidly generate unit tests in bulk that can be run in regression to ensure that the new functionality introduced does not impact the existing functionality.

In parallel with regression testing, teams often adopt a coverage policy that helps them create a baseline for new development. However, it can be challenging to ensure high code coverage on modified code when the existing legacy code has low levels of coverage.

Parasoft enables teams to collect, analyze, and monitor code coverage metrics that correlate specifically with new or modified code. This ensures that all new or changed code is thoroughly tested and meets the organization’s quality standards and incrementally increases the coverage across the codebase.

Read Blog: Testing Legacy Code & 3 Steps to Update »

Recommended Products

Screenshot showing side by side of C/C++ legacy code in Parasoft C/C++test on the left and on the right Parasoft DTP

How It Works

With insight into previously tested legacy applications, teams can evaluate the effectiveness of their inherited regression test suite and determine if new test cases are needed to strengthen their regression safety net.

For legacy applications with low coverage, Parasoft Jtest or C/C++test rapidly generate unit tests in bulk that can be run in regression to ensure that the new functionality introduced does not impact the existing functionality.

In parallel with regression testing, teams often adopt a coverage policy that helps them create a baseline for new development. However, it can be challenging to ensure high code coverage on modified code when the existing legacy code has low levels of coverage.

Parasoft enables teams to collect, analyze, and monitor code coverage metrics that correlate specifically with new or modified code. This ensures that all new or changed code is thoroughly tested and meets the organization’s quality standards and incrementally increases the coverage across the codebase.

Read Blog: Testing Legacy Code & 3 Steps to Update »

Recommended Products

Screenshot showing side by side of C/C++ legacy code in Parasoft C/C++test on the left and on the right Parasoft DTP

Use Modified Code Coverage Analysis to Make Code Changes With Confidence

Code modifications can introduce new bugs and break existing code functionality. Mitigate these risks by tracking code coverage specifically associated with modified code and easily enforcing coverage policies to ensure all modified code is well tested. 

How It Works

Publish code coverage captured during automated test execution in the CI/CD pipeline into Parasoft DTP for advanced build-to-build reporting and analysis. Set quality gates for modified code coverage in the CI/CD pipeline, and leverage Parasoft DTP’s modified code coverage widget to analyze and view code coverage that correlates only to new code or to modified lines of code.

By ensuring any new or modified code has high levels of code coverage, development teams can mitigate the risk of untested changes slipping into production and incrementally increase the overall test coverage of their codebase.

Read Blog: Application Coverage Is the Most Powerful Metric You’re Not Measuring »

 

Recommended Products

Screenshot of Parasoft DTP

How It Works

Publish code coverage captured during automated test execution in the CI/CD pipeline into Parasoft DTP for advanced build-to-build reporting and analysis. Set quality gates for modified code coverage in the CI/CD pipeline, and leverage Parasoft DTP’s modified code coverage widget to analyze and view code coverage that correlates only to new code or to modified lines of code.

By ensuring any new or modified code has high levels of code coverage, development teams can mitigate the risk of untested changes slipping into production and incrementally increase the overall test coverage of their codebase.

Read Blog: Application Coverage Is the Most Powerful Metric You’re Not Measuring »

 

Recommended Products

Screenshot of Parasoft DTP

Collect Code Coverage From Distributed Microservices

In distributed microservices architectures, gathering coverage from end-to-end test runs is challenging due to the interconnected services and complexity of interactions between them. Our coverage solutions simplify gathering functional testing code coverage for Java and .NET services within complex microservice architectures.

How It Works

Collect and analyze code coverage from the testing of distributed Java and .NET microservices. Easily correlate which lines of code in each individual microservice are tested during the execution of automated end-to-end functional tests and increase test thoroughness for higher quality and more reliable software. Here’s how it works:

  1. Code coverage agents are deployed for each microservice.
  2. Parasoft CTP collects and correlates coverage captured by those agents during automated functional testing. Coverage is captured whether the functional test cases are executed within the Parasoft platform or by a third-party tool.
  3. Results are published to Parasoft DTP where testers can easily see what lines of code were covered by each test case and identify microservices with low coverage.

Code coverage collection also enables test impact analysis workflows to reduce the number of end-to-end tests that must be re-run to validate code changes.

Read Blog: Get a Better View of Your Code Coverage »

Graphic showing the workflow of a system under test collecting code coverage from testing distributed Java and .NET microservices. Next, the deployment of code coverage agents. Then CTP collects and correlates data. Last, DTP displays the code coverage results.

How It Works

Collect and analyze code coverage from the testing of distributed Java and .NET microservices. Easily correlate which lines of code in each individual microservice are tested during the execution of automated end-to-end functional tests and increase test thoroughness for higher quality and more reliable software. Here’s how it works:

  1. Code coverage agents are deployed for each microservice.
  2. Parasoft CTP collects and correlates coverage captured by those agents during automated functional testing. Coverage is captured whether the functional test cases are executed within the Parasoft platform or by a third-party tool.
  3. Results are published to Parasoft DTP where testers can easily see what lines of code were covered by each test case and identify microservices with low coverage.

Code coverage collection also enables test impact analysis workflows to reduce the number of end-to-end tests that must be re-run to validate code changes.

Read Blog: Get a Better View of Your Code Coverage »

Measure Manual Testing Effectiveness

Bring visibility to your manual testing practice by collecting and analyzing code coverage during test runs. It helps your team close the gap between manual and automated testing, so you can understand the true impact of manual efforts.

How It Works

Leverage CTP in combination with DTP for reporting and analysis. Code coverage agents for Java and .NET are deployed to capture execution data as tests are performed.

Testers can import manual test definitions from their test management system in CTP’s intuitive web interface. As testers execute their test cases, CTP enables users to easily manage the coverage agents in synchronization with their testing, automatically capturing exactly which parts of the code are exercised by each test case.

After testing is complete, the collected data is automatically published to Parasoft DTP, where detailed reports correlate the manual test cases with the exercised portions of code. This gives teams a clear picture of what areas were covered by manual testing, identifies gaps and testing redundancies, and supports auditing or compliance needs. The manual testing coverage can also be merged and correlated with automated testing coverage providing the team with a complete view of coverage across the application.

Recommended Products

Screenshot of list of manual test cases impacted in CTP.

How It Works

Leverage CTP in combination with DTP for reporting and analysis. Code coverage agents for Java and .NET are deployed to capture execution data as tests are performed.

Testers can import manual test definitions from their test management system in CTP’s intuitive web interface. As testers execute their test cases, CTP enables users to easily manage the coverage agents in synchronization with their testing, automatically capturing exactly which parts of the code are exercised by each test case.

After testing is complete, the collected data is automatically published to Parasoft DTP, where detailed reports correlate the manual test cases with the exercised portions of code. This gives teams a clear picture of what areas were covered by manual testing, identifies gaps and testing redundancies, and supports auditing or compliance needs. The manual testing coverage can also be merged and correlated with automated testing coverage providing the team with a complete view of coverage across the application.

Recommended Products

Screenshot of list of manual test cases impacted in CTP.

Aggregate Code Coverage Across Builds, Tests, and Environments

Get a complete, accurate view of test coverage without needing to run everything at once. Parasoft aggregates coverage data across testing practices, builds, and environments, including from partial test runs, so you can make confident, data-driven release decisions for C++, C, Java, .NET, and C# applications.

How It Works

Parasoft collects code coverage from all testing practices, including unit, API, microservices, UI, integration, end-to-end, and manual testing. And continuously aggregates the results in Parasoft DTP.

Advanced coverage agents support modern cloud and clustered environments. Teams can distribute coverage collection at scale and incrementally build a complete coverage picture across multiple builds. Instead of relying on a single, full test run, teams accumulate coverage over time from partial test executions, making it practical to analyze even the largest test suites.

DTP correlates and merges coverage data across testing practices and builds, providing a unified view of coverage, risk, and quality trends. This aggregated insight highlights untested, high-risk areas and helps teams prioritize where additional testing is needed.

Read Blog: Measuring Code Coverage: Guide to Effective Testing »

Screenshot of the Parasoft DTP reporting dashboard displaying complete code coverage from all types of run tests.

How It Works

Parasoft collects code coverage from all testing practices, including unit, API, microservices, UI, integration, end-to-end, and manual testing. And continuously aggregates the results in Parasoft DTP.

Advanced coverage agents support modern cloud and clustered environments. Teams can distribute coverage collection at scale and incrementally build a complete coverage picture across multiple builds. Instead of relying on a single, full test run, teams accumulate coverage over time from partial test executions, making it practical to analyze even the largest test suites.

DTP correlates and merges coverage data across testing practices and builds, providing a unified view of coverage, risk, and quality trends. This aggregated insight highlights untested, high-risk areas and helps teams prioritize where additional testing is needed.

Read Blog: Measuring Code Coverage: Guide to Effective Testing »

Two coworkers discussing automated software testing inside building holding laptop

Elevate your software testing with Parasoft solutions.

Contact Us