Best Code Coverage Tools for Codecov

Find and compare the best Code Coverage tools for Codecov in 2025

Use the comparison tool below to compare the top Code Coverage tools for Codecov on the market. You can filter results by user reviews, pricing, features, platform, region, support options, integrations, and more.

  • 1
    Xcode Reviews
    Introducing Xcode 12, which features a fresh design perfectly suited for macOS Big Sur. This version boasts customizable font sizes for the navigator, improved code completion, and innovative document tabs, making the coding experience more efficient and visually appealing. By default, Xcode 12 creates Universal apps that seamlessly run on Macs equipped with Apple Silicon without requiring any code alterations. With its layout tailored for macOS Big Sur, Xcode 12 showcases a navigator sidebar that extends to the top of the window and features distinctly clear toolbar buttons. The larger default font enhances readability, while users can select from various size options to suit their preferences. The introduction of new document tabs simplifies the organization of files within your workspace, allowing for a more structured workflow. This tab model enables users to effortlessly open new tabs with a double-click or keep track of selected files as they navigate. Furthermore, document tabs can be rearranged to form a cohesive set of files, and users have the ability to customize how content is displayed in each tab for optimal efficiency. Overall, Xcode 12 enhances the development experience with its thoughtful design and user-friendly features.
  • 2
    Go Reviews

    Go

    Golang

    Free
    Thanks to a comprehensive array of tools and APIs available from leading cloud providers, developing services in Go has never been more accessible. The language's extensive open-source libraries, combined with its powerful standard library, make it ideal for crafting swift and sophisticated command-line interfaces. Go's exceptional memory management and compatibility with multiple integrated development environments enhance its capability to drive rapid and scalable web applications. With quick compilation times and a clean syntax, along with built-in formatting and documentation tools, Go is tailored to meet the needs of both DevOps professionals and site reliability engineers. This is a deep dive into everything related to Go. Whether you are embarking on a fresh project or looking to refine your existing Go skills, there’s a structured interactive introduction that is divided into three parts. Each part offers practical exercises to reinforce your understanding, and the Playground feature allows users to write Go code directly in a browser, which is then compiled, linked, and executed on our servers instantly. This hands-on approach makes learning Go not only effective but also enjoyable.
  • 3
    PHPUnit Reviews

    PHPUnit

    PHPUnit

    Free
    PHPUnit necessitates the activation of the dom and json extensions, which are typically enabled by default, alongside the pcre, reflection, and spl extensions that are also standard and cannot be disabled without modifying PHP's build system or source code. Additionally, to generate code coverage reports, the Xdebug extension (version 2.7.0 or newer) and the tokenizer extension must be present, while the ability to create XML reports relies on the xmlwriter extension. Writing unit tests is fundamentally a best practice for developers to detect and resolve bugs, refactor code, and provide documentation for a unit of software being tested. Ideally, unit tests should encompass all potential execution paths within a program to maximize effectiveness. Generally, a single unit test is aligned with one specific path in a particular function or method. Nonetheless, it is important to recognize that a test method may not function as a completely isolated or independent unit, as there can often be subtle dependencies between various test methods that stem from the underlying implementation of a test scenario. This interconnectedness can sometimes lead to challenges in maintaining test integrity and reliability.
  • 4
    Devel::Cover Reviews
    This module offers metrics for code coverage specifically tailored for Perl, highlighting the extent to which tests engage with the code. By utilizing Devel::Cover, users can identify sections of their code that remain untested and decide on additional tests necessary to enhance coverage. Essentially, code coverage serves as a proxy indicator of software quality. Devel::Cover has reached a commendable level of stability, incorporating an array of features typical of effective coverage tools. It provides detailed reports on statement, branch, condition, subroutine, and pod coverage. Generally, the data on statement and subroutine coverage is reliable, while branch and condition coverage may not always align with expectations. For pod coverage, it leverages Pod::Coverage, and if Pod::Coverage::CountParents is accessible, it will utilize that for more comprehensive insights. Overall, Devel::Cover stands out as an essential tool for Perl developers seeking to improve their code's robustness through better testing practices.
  • 5
    LuaCov Reviews

    LuaCov

    LuaCov

    Free
    LuaCov serves as a straightforward coverage analysis tool for Lua scripts. By running a Lua script with the luacov module activated, it produces a statistics file detailing the execution count for each line within the script and its associated modules. This statistics file is then processed by the luacov command-line tool to create a report, enabling users to identify untraversed code paths, which is essential for assessing the thoroughness of a test suite. The tool offers a variety of configuration options, with the default settings found in src/luacov/defaults.lua, representing the global defaults. For those needing project-specific configurations, they can create a Lua script that either sets options as global variables or returns a table containing specific options, saving this file as .luacov in the project directory where luacov is executed. For instance, such a configuration could specify that only the foo module and its associated submodules should be included in the coverage analysis, indicating that these are located within the src directory. This flexibility allows developers to fine-tune their coverage analysis to better align with their project needs.
  • 6
    Tarpaulin Reviews

    Tarpaulin

    Tarpaulin

    Free
    Tarpaulin serves as a tool for reporting code coverage specifically designed for the cargo build system, drawing its name from a durable cloth typically employed to protect cargo on ships. At present, it effectively provides line coverage, though it may still exhibit some minor inaccuracies in its output. Significant efforts have been made to enhance its compatibility across various projects, yet unique combinations of packages and build configurations can lead to potential issues, so users are encouraged to report any discrepancies they encounter. Additionally, the roadmap offers insights into upcoming features and improvements. On Linux systems, Tarpaulin utilizes Ptrace as its default tracing backend, which is limited to x86 and x64 architecture; however, this can be switched to llvm coverage instrumentation by specifying the engine as llvm, which is the default method on Mac and Windows platforms. Furthermore, Tarpaulin can be deployed in a Docker environment, making it a practical solution for users who prefer not to run Linux directly but still wish to utilize its capabilities locally. This versatility makes Tarpaulin a valuable tool for developers looking to improve their code quality through effective coverage analysis.
  • 7
    grcov Reviews

    grcov

    grcov

    Free
    grcov is a tool that gathers and consolidates code coverage data from various source files. It is capable of processing .profraw and .gcda files produced by llvm/clang or gcc compilers. Additionally, grcov can handle lcov files for JavaScript coverage and JaCoCo files for Java applications. This versatile tool is compatible with operating systems including Linux, macOS, and Windows, making it widely accessible for developers across different platforms. Its functionality enhances the ability to analyze code quality and test coverage effectively.
  • 8
    kcov Reviews

    kcov

    kcov

    Free
    Kcov is a code coverage testing tool available for FreeBSD, Linux, and OSX that caters to compiled languages, Python, and Bash. Initially derived from Bcov, Kcov has developed into a more robust tool, incorporating an extensive array of features beyond those offered by its predecessor. Similar to Bcov, Kcov leverages DWARF debugging data from compiled programs, enabling the gathering of coverage metrics without the need for specific compiler flags. This functionality streamlines the process of assessing code coverage, making it more accessible for developers across various programming languages.
  • 9
    test_coverage Reviews
    A straightforward command-line utility designed to gather test coverage data from Dart VM tests, making it an essential tool for developers who require local coverage reports while working on their projects. This tool streamlines the process of analyzing test effectiveness and ensures that developers can easily monitor their code's test coverage in real-time.
  • 10
    coverage Reviews

    coverage

    pub.dev

    Free
    Coverage offers tools for gathering, processing, and formatting coverage data specifically for Dart. The function Collect_coverage retrieves coverage information in JSON format from the Dart VM Service, while format_coverage transforms this JSON coverage data into either the LCOV format or a more readable, pretty-printed layout for easier interpretation. This set of tools enhances the ability to analyze code coverage effectively.
  • 11
    cloverage Reviews

    cloverage

    cloverage

    Free
    Cloverage defaults to using clojure.test for testing, but you can switch to midje by including the --runner :midje option. Previously, in older releases of Cloverage, it was essential to enclose midje tests within clojure.test's deftest, but that requirement has been removed in the latest versions. If you wish to utilize eftest, simply provide the --runner :eftest flag. Additionally, you have the option to customize the runner by specifying :runner-opts with a map in your project settings. It's worth noting that other testing libraries might offer their own integrations with Cloverage beyond what is provided here, so be sure to consult their documentation for more information. Overall, this flexibility allows you to tailor your testing environment to better suit your development needs.
  • 12
    Slather Reviews

    Slather

    Slather

    Free
    To create test coverage reports for Xcode projects and integrate them into your continuous integration (CI) system, make sure to activate the coverage feature by checking the "Gather coverage data" option while modifying the scheme settings. This setup will help you track code quality and ensure that your tests effectively cover the necessary parts of your application, streamlining your development process.
  • 13
    NCover Reviews

    NCover

    NCover

    Free
    NCover Desktop is a Windows-based tool designed to gather code coverage data for .NET applications and services. Once the coverage data is collected, users can view comprehensive charts and metrics through a browser interface that enables detailed analysis down to specific lines of source code. Additionally, users have the option to integrate a Visual Studio extension known as Bolt, which provides integrated code coverage features, showcasing unit test outcomes, execution times, branch coverage visualization, and highlighted source code directly within the Visual Studio IDE. This advancement in NCover Desktop significantly enhances the accessibility and functionality of code coverage solutions. By measuring code coverage during .NET testing, NCover offers insights into which parts of the code were executed, delivering precise metrics on unit test coverage. Monitoring these statistics over time allows developers to obtain a reliable gauge of code quality throughout the entire development process, ultimately leading to a more robust and well-tested application. By utilizing such tools, teams can ensure a higher standard of software reliability and performance.
  • 14
    JaCoCo Reviews

    JaCoCo

    EclEmma

    Free
    JaCoCo, a free Java code coverage library developed by the EclEmma team, has been refined through years of experience with existing libraries. The master branch of JaCoCo is built and published automatically, ensuring that each build adheres to the principles of test-driven development and is therefore fully functional. For the most recent features and bug fixes, users can consult the change history. Additionally, the SonarQube metrics assessing the current JaCoCo implementation can be found on SonarCloud.io. It is possible to integrate JaCoCo seamlessly with various tools and utilize its features right away. Users are encouraged to enhance the implementation and contribute new functionalities. While there are multiple open-source coverage options available for Java, the development of the Eclipse plug-in EclEmma revealed that most existing tools are not well-suited for integration. A significant limitation is that many of these tools are tailored to specific environments, such as Ant tasks or command line interfaces, and lack a comprehensive API for embedding in diverse contexts. Furthermore, this lack of flexibility often hinders developers from leveraging coverage tools effectively across different platforms.
  • 15
    OpenClover Reviews

    OpenClover

    OpenClover

    Free
    Allocate your efforts wisely between developing applications and writing corresponding test code. For Java and Groovy, utilizing an advanced code coverage tool is essential, and OpenClover stands out by evaluating code coverage while also gathering over 20 different metrics. This tool highlights the areas of your application that lack testing and integrates coverage data with metrics to identify the most vulnerable sections of your code. Additionally, its Test Optimization feature monitors the relationship between test cases and application classes, allowing OpenClover to execute only the tests pertinent to any modifications made, which greatly enhances the efficiency of test execution time. You may wonder if testing simple getters and setters or machine-generated code is truly beneficial. OpenClover excels in its adaptability, enabling users to tailor coverage measurement by excluding specific packages, files, classes, methods, and even individual statements. This flexibility allows you to concentrate your testing efforts on the most critical components of your codebase. Moreover, OpenClover not only logs the results of tests but also provides detailed coverage analysis for each individual test, ensuring that you have a thorough understanding of your testing effectiveness. Emphasizing such precision can lead to significant improvements in code quality and reliability.
  • 16
    SimpleCov Reviews

    SimpleCov

    SimpleCov

    Free
    SimpleCov is a Ruby tool designed for code coverage analysis, leveraging Ruby's native Coverage library to collect data, while offering a user-friendly API that simplifies the processing of results by allowing you to filter, group, merge, format, and display them effectively. Although it excels in tracking the covered Ruby code, it does not support coverage for popular templating systems like erb, slim, and haml. For most projects, obtaining a comprehensive overview of coverage results across various types of tests, including Cucumber features, is essential. SimpleCov simplifies this task by automatically caching and merging results for report generation, ensuring that your final report reflects coverage from all your test suites, thus providing a clearer picture of any areas that need improvement. It is important to ensure that SimpleCov is executed in the same process as the code for which you wish to analyze coverage, as this is crucial for accurate results. Additionally, utilizing SimpleCov can significantly enhance your development workflow by identifying untested code segments, ultimately leading to more robust applications.
  • 17
    DeepCover Reviews

    DeepCover

    DeepCover

    Free
    Deep Cover strives to be the premier tool for Ruby code coverage, delivering enhanced accuracy for both line and branch coverage metrics. It serves as a seamless alternative to the standard Coverage library, providing a clearer picture of code execution. A line is deemed covered only when it has been fully executed, and the optional branch coverage feature identifies any branches that remain untraveled. The MRI implementation considers all methods available, including those created through constructs like define_method and class_eval. Unlike Istanbul's method, DeepCover encompasses all defined methods and blocks when reporting coverage. Although loops are not classified as branches within DeepCover, accommodating them can be easily arranged if necessary. Even once DeepCover is activated and set up, it requires only a minimal amount of code loading, with coverage tracking starting later in the process. To facilitate an easy migration for projects that have previously relied on the built-in Coverage library, DeepCover can integrate itself into existing setups, ensuring a smooth transition for developers seeking improved coverage analysis. This capability makes DeepCover not only versatile but also user-friendly for teams looking to enhance their testing frameworks.
  • 18
    pytest-cov Reviews
    This plugin generates detailed coverage reports that offer more functionality compared to merely using coverage run. It includes support for subprocess execution, allowing you to fork or run tasks in a subprocess while still obtaining coverage seamlessly. Additionally, it integrates with xdist, enabling the use of all pytest-xdist features without sacrificing coverage reporting. The plugin maintains consistent behavior with pytest, ensuring that all functionalities provided by the coverage package are accessible either via pytest-cov's command line options or through coverage's configuration file. In rare cases, a stray .pth file might remain in the site packages after execution. To guarantee that each test run starts with clean data, the data file is cleared at the start of testing. If you wish to merge coverage results from multiple test runs, you can utilize the --cov-append option to add this data to that of previous runs. Furthermore, the data file is retained at the conclusion of testing, allowing users to leverage standard coverage tools for further analysis of the results. This additional functionality enhances the overall user experience by providing better management of coverage data throughout the testing process.
  • 19
    Xdebug Reviews

    Xdebug

    Xdebug

    Free
    Xdebug is a powerful PHP extension that enhances the development workflow by offering various tools and functionalities. It allows developers to step through code in their integrated development environment as scripts run, making debugging much easier. The extension provides an enhanced version of the var_dump() function and delivers stack traces for notices, warnings, errors, and exceptions, clearly indicating the path leading to issues. Additionally, it logs all function calls, including arguments and their locations, to the disk, and can be configured to also record every variable assignment and return value for each function. This feature set enables developers, with the aid of visualization tools, to thoroughly examine the performance of their PHP applications and identify any bottlenecks. Moreover, Xdebug reveals the sections of code that are executed during unit testing with PHPUnit, aiding in better test coverage. For convenience, installing Xdebug via a package manager is typically the quickest method; simply replace the PHP version with the version you are currently using. You can also install Xdebug using PECL on both Linux and macOS, utilizing Homebrew for a streamlined setup process. Overall, Xdebug significantly enhances PHP development by providing essential debugging tools and performance insights.
  • 20
    OpenCppCoverage Reviews

    OpenCppCoverage

    OpenCppCoverage

    Free
    OpenCppCoverage is a free and open-source tool designed for measuring code coverage in C++ applications on Windows platforms. Primarily aimed at enhancing unit testing, it also aids in identifying executed lines during program debugging. The tool is compatible with compilers that generate program database files (.pdb) and allows users to execute their programs without the need for recompilation. Users can exclude specific lines based on regular expressions, and it offers coverage aggregation, enabling the merging of multiple coverage reports into a singular comprehensive document. It requires Microsoft Visual Studio 2008 or newer, including the Express edition, although it may also function with earlier versions of Visual Studio. Furthermore, tests can be conveniently run through the Test Explorer window, streamlining the testing process for developers. This versatility makes OpenCppCoverage a valuable asset for those focused on maintaining high code quality.
  • 21
    PCOV Reviews

    PCOV

    PCOV

    Free
    A standalone driver compatible with CodeCoverage for PHP is known as PCOV. When PCOV is not configured, it will search for directories named src, lib, or app in the current working directory sequentially; if none of these are located, it defaults to using the current directory, which can lead to inefficient use of resources by storing coverage data for the entire test suite. If the PCOV configuration includes test code, it is advisable to utilize the exclude command to optimize resource usage. To prevent the unnecessary allocation of additional memory arenas for traces and control flow graphs, PCOV should be adjusted based on the memory demands of the test suite. Furthermore, to avoid table reallocations, the PCOV setting should exceed the total number of files being tested, including all test files. It's important to note that interoperability with Xdebug is not achievable. Internally, PCOV overrides the executor function, which can disrupt any extension or SAPI that attempts to do the same. Notably, PCOV operates at zero cost, allowing code to execute at full speed, thus enhancing performance without additional overhead. This efficiency makes it a valuable tool for developers looking to maintain high performance while ensuring effective code coverage.
  • 22
    dotCover Reviews

    dotCover

    JetBrains

    $399 per user per year
    dotCover is a powerful code coverage and unit testing tool designed for .NET that seamlessly integrates into Visual Studio and JetBrains Rider. This tool allows developers to assess the extent of their code's unit test coverage while offering intuitive visualization features and is compatible with Continuous Integration systems. It effectively calculates and reports statement-level code coverage for various platforms including .NET Framework, .NET Core, and Mono for Unity. As a plug-in to popular IDEs, dotCover enables users to analyze and visualize coverage directly within their coding environment, facilitating the execution of unit tests and the review of coverage outcomes without having to switch contexts. Additionally, it boasts support for customizable color themes, new icons, and an updated menu interface. Bundled with a unit test runner shared with ReSharper, another JetBrains product for .NET developers, dotCover enhances the testing experience. It also supports continuous testing, allowing it to dynamically identify which unit tests are impacted by code modifications as they occur. This real-time analysis ensures that developers can maintain high code quality throughout the development process.
  • 23
    Testwell CTC++ Reviews
    Testwell CTC++ is an advanced tool that focuses on instrumentation-based code coverage and dynamic analysis specifically for C and C++ programming languages. By incorporating additional components, it can also extend its functionality to languages such as C#, Java, and Objective-C. Moreover, with further add-ons, CTC++ is capable of analyzing code on a wide range of embedded target machines, including those with very limited resources, such as minimal memory and lacking an operating system. This tool offers various coverage metrics, including Line Coverage, Statement Coverage, Function Coverage, Decision Coverage, Multicondition Coverage, Modified Condition/Decision Coverage (MC/DC), and Condition Coverage. As a dynamic analysis tool, it provides detailed execution counters, indicating how many times each part of the code is executed, which goes beyond simple executed/not executed data. Additionally, users can utilize CTC++ to assess function execution costs, typically in terms of time taken, and to activate tracing for function entry and exit during testing phases. The user-friendly interface of CTC++ makes it accessible for developers seeking efficient analysis solutions. Its versatility and comprehensive features make it a valuable asset for both small and large projects.
  • 24
    Cobertura Reviews

    Cobertura

    Cobertura

    Free
    Cobertura is an open-source tool for Java that measures how much of your code is tested, helping to pinpoint areas in your Java application that may not have sufficient test coverage. This tool is derived from jcoverage and is offered at no cost. The majority of its components are licensed under the GNU General Public License, which permits users to redistribute and modify the software in accordance with the terms set forth by the Free Software Foundation, specifically under version 2 of the License or any subsequent version you choose. For additional information, it is advisable to consult the LICENSE.txt file included in the distribution package, which provides more detailed guidance on the licensing terms. By utilizing Cobertura, developers can ensure a more robust testing strategy and enhance the overall quality of their Java applications.
  • 25
    Gcov Reviews

    Gcov

    Oracle

    Free
    Gcov is a tool that provides open-source capabilities for measuring code coverage. It helps developers analyze which parts of their code are executed during testing, allowing for better optimization and debugging.
  • Previous
  • You're on page 1
  • 2
  • Next