16 repositorios
Tools for measuring and reporting test suite coverage.
Explore 16 awesome GitHub repositories matching part of an awesome list · Code Coverage. Refine with filters or upvote what's useful.
gstack is an AI agent framework and development workflow system designed to automate the software development lifecycle. It coordinates specialized AI personas to manage tasks across product design, engineering management, and quality assurance, transforming product intent into technical specifications and final releases. The project is distinguished by its deep integration of headless browser automation and semantic code memory. It utilizes a persistent Chromium daemon for web scraping and visual auditing, and implements a searchable knowledge base that logs architectural decisions and repos
Identifies undocumented public surfaces by analyzing code diffs against required documentation types.
Jest is a JavaScript testing framework designed for writing and running automated test suites to verify the correctness of JavaScript and TypeScript code. It functions as a comprehensive toolset that integrates a test runner, a mocking and spying library, a snapshot testing tool, and a code coverage tool. The framework distinguishes itself through snapshot testing, which records the serialized state of data structures to detect regressions in future executions. It also includes a mocking and spying library for simulating external dependencies and tracking function calls to isolate code during
Analyzes the codebase to identify untested sections by tracking executed lines during test runs.
Istanbul is a JavaScript code coverage tool and instrumentation engine that measures the execution of statements, lines, functions, and branches. It functions as a test coverage analysis tool capable of monitoring code across unit, functional, and browser tests to identify untested areas of a codebase. The project distinguishes itself through a transparent instrumentation engine that uses module loader hooks to inject tracking code without requiring manual source modifications. It supports distributed test reporting by aggregating fragmented coverage data from multiple concurrent processes in
Enforces minimum coverage thresholds and triggers errors if requirements are not met.
TypeDoc is a documentation generator and AST analyzer that transforms TypeScript source code and comments into structured API reference websites or data files. It functions as a static site generator that converts code symbols into a searchable web interface. The project is an extensible framework, allowing users to modify the documentation process and generator logic through a programmable plugin system and custom themes. Its capabilities include API reference generation, source code parsing, and documentation coverage validation to ensure exported members are properly described. It support
Validates that all exported symbols have descriptions and treats missing documentation as build errors.
GoConvey is a behavioral testing framework for the Go programming language that provides a test runner, a code coverage tool, and a web-based monitoring dashboard. It integrates with the standard Go test command to organize tests into behavioral stories and conveyors. The project features a web interface that monitors the file system for source code changes and automatically triggers test execution to provide real-time feedback. This dashboard displays test results, failures, and a chronological history of execution status. The framework includes a state assertion system for verifying values
Translates Go coverage profiles into visual HTML reports that highlight unexercised code paths.
Jazzy is a source code documentation tool and API generator designed for Swift and Objective-C. It analyzes project roots and compiled modules to produce searchable HTML websites or offline docsets. The system functions as a multi-module API documenter, aggregating documentation from separate source modules into a single site with cross-module linking. It serves as a markdown-based documentation engine that integrates technical guides and LaTeX mathematical equations to complement generated API references. The tool covers a broad capability surface including multi-language API generation for
Tracks the percentage of documented symbols to analyze documentation gaps and generate coverage badges.
Skim is a cross-platform interactive fuzzy finder that runs as a terminal application, a Rust library, a Vim and Neovim plugin, and a shell integration tool. It provides real-time filtering and selection from lists of items, supporting keyboard and mouse navigation, live preview panes, and multi-select functionality across Linux, macOS, and Windows. The tool distinguishes itself through a composable query expression tree that supports fuzzy, exact, inverse, prefix, suffix, and logical AND/OR operators, combined with a Smith-Waterman scoring engine that penalizes typos and gaps for natural rel
Sets a minimum coverage percentage and treats violations as informational to avoid blocking pull requests.
jscpd is a code duplication detector that scans source code across 223 languages to find identical or near-identical copy-pasted blocks using a rolling hash algorithm. It is built with a Rust core for high performance, exposed through a Node.js API and CLI, and can be run as a standalone binary with no runtime dependencies. The tool detects duplicates in embedded languages within Vue, Svelte, Astro, and Markdown files by tokenizing each language block separately, and it supports extensionless scripts via shebang detection. The project distinguishes itself through its integration capabilities
Reads a .jscpd.json configuration file and exits with a non-zero code when duplication limits are exceeded.
nyc is a JavaScript code coverage tool and command-line interface that instruments source files to track the execution of lines, branches, and functions during test runs. It acts as a wrapper for Node.js test runners, intercepting the module loading process to collect coverage data. The tool functions as a coverage data merger and build gating tool, allowing users to combine results from multiple independent test runs or child processes into a single unified report. It can automatically fail the build process if code coverage percentages fall below defined minimum thresholds. The project sup
Instruments JavaScript and TypeScript source files to track executed lines, branches, and functions during test runs.
SimpleCov es una herramienta de cobertura de código para Ruby y motor de análisis utilizado para rastrear qué líneas, ramas y métodos de código se ejecutan durante las pruebas. Funciona como un ejecutor de umbrales de cobertura y agregador de suites de pruebas, registrando datos de ejecución para identificar áreas no probadas de una aplicación. La herramienta se distingue por la capacidad de fusionar resultados de cobertura de procesos trabajadores paralelos y subprocesos en un único informe unificado. Soporta la comparación de líneas base para detectar regresiones de cobertura y puede recopilar datos de código ejecutado mediante métodos de evaluación dinámica, como los utilizados en motores de plantillas. Sus capacidades más amplias incluyen la generación de informes en múltiples formatos, agrupación de archivos fuente y filtrado de archivos mediante expresiones regulares. El sistema también proporciona una interfaz de línea de comandos para mostrar estadísticas y listar archivos no cubiertos.
Observes and merges coverage data gathered from forked or spawned child processes into a unified report.
JaCoCo es una herramienta de cobertura de código Java y un instrumentador de bytecode que mide qué partes del código fuente se ejecutan durante las pruebas. Funciona como un agente de tiempo de ejecución para monitorear la ejecución de la aplicación sobre la marcha o como una biblioteca para la instrumentación de bytecode fuera de línea, lo que le permite capturar datos de ejecución en entornos donde los agentes de tiempo de ejecución están restringidos. El proyecto se distingue por proporcionar rutas de instrumentación dinámicas y estáticas para rastrear la ejecución. Incluye un agente de tiempo de ejecución para el monitoreo sobre la marcha y la capacidad de modificar archivos de clase compilados antes de la ejecución. Además, permite la recuperación de métricas de ejecución de procesos en ejecución a través de conexiones de red remotas sin interrumpir la aplicación activa. El sistema calcula métricas de cobertura cuantitativas a través de instrucciones, ramas, líneas, métodos y clases, junto con mediciones de complejidad ciclomática. Proporciona capacidades para fusionar datos de múltiples ejecuciones de prueba, hacer cumplir umbrales de cobertura dentro de puertas de calidad CI/CD y generar informes que mapean el bytecode ejecutado de vuelta al código fuente. La integración visual está disponible para mostrar estos resultados directamente dentro de los editores de código. La herramienta se integra con sistemas de automatización de compilación e interfaces de línea de comandos para automatizar la recolección de datos y la generación de informes.
Implements validation mechanisms that fail the build process if coverage percentages fall below a predefined minimum.
LoadLibrary is a binary instrumentation framework that loads and executes Windows PE/COFF DLLs natively within Linux processes. It provides a cross-platform binary execution layer that maps Windows portable executable files into Linux memory, resolving imports and relocations so that exported functions can be called as if they were native Linux library routines. The framework enables runtime interception and modification of Windows DLL function behavior, including redirecting API calls to Linux-native implementations through a binary patching hook engine. It includes a code coverage auditor t
Records every basic block executed in loaded Windows DLLs and produces coverage reports for fuzzing corpus distillation.
tbls is a Go-based command line utility used for documenting, analyzing, and linting relational database schemas. It functions as a documentation tool that generates structured reports and entity-relationship diagrams in Markdown, JSON, or Excel formats, as well as a schema diff tool for identifying discrepancies between a live database and its documentation. The project allows for schema augmentation and the definition of virtual relationships through external configuration files, enabling metadata overrides and table connections without requiring database migrations or native constraints. I
Calculates the percentage of tables and columns that possess descriptions to measure documentation coverage.
Compodoc es un generador de documentación de API para TypeScript, generador de sitios estáticos y visualizador de arquitectura de proyectos. Analiza el código fuente y los comentarios JSDoc para crear sitios de referencia técnica, catálogos de API y páginas HTML independientes que se pueden buscar. El proyecto se distingue por analizar las sentencias de importación para producir grafos de dependencia y mapas de módulos que ilustran las relaciones estructurales dentro de una base de código. Incluye soporte especializado para visualizar proyectos Angular, flujos de trabajo NestJS y componentes web Stencil, y puede incrustar demos funcionales en vivo directamente en las páginas de documentación. El sistema también funciona como un analizador de cobertura de documentación, proporcionando informes y aplicando umbrales mínimos de cobertura dentro de pipelines de integración continua para fallar builds si los niveles de documentación son insuficientes. Las capacidades adicionales incluyen integración con markdown, exportación de datos en múltiples formatos a JSON o Markdown, y un servidor de desarrollo local con monitoreo del sistema de archivos para reconstrucciones automáticas. Los usuarios pueden personalizar la salida a través de archivos de configuración, estilos CSS personalizados y filtrado de visibilidad de elementos para excluir símbolos específicos o etiquetas internas del sitio final.
Calculates the percentage of documented code and provides reports on documentation gaps.
Screwdriver es una plataforma de entrega continua diseñada para orquestar flujos de trabajo automatizados de compilación, prueba y despliegue. Funciona como un orquestador de compilación contenerizado que gestiona todo el ciclo de vida de entrega, desde la activación de pipelines basada en eventos hasta la ejecución de tareas dentro de entornos de contenedores aislados y conectables. La plataforma se distingue por una arquitectura modular que desacopla la lógica de compilación de los recursos informáticos subyacentes, permitiendo una ejecución consistente en diversas infraestructuras. Proporciona una gestión robusta de la configuración de pipelines, permitiendo a los equipos definir, versionar y compartir plantillas de compilación reutilizables. Este sistema cuenta además con servicios de identidad integrales, incluyendo integración con OAuth y control de acceso granular para secretos de pipeline y tokens programáticos. Más allá de la orquestación central, la plataforma ofrece amplias herramientas de observabilidad, incluyendo transmisión de registros en tiempo real, análisis de métricas de rendimiento y seguimiento del estado de compilación. Admite flujos de trabajo de equipo complejos a través de la organización de colecciones de pipelines y espacios de trabajo compartidos, manteniendo la estabilidad del sistema mediante la limitación de solicitudes y la gestión de estado persistente en bases de datos relacionales. El sistema está diseñado para su despliegue dentro de clústeres de Kubernetes, utilizando plantillas de empaquetado estandarizadas para arrancar la plataforma y sus componentes de infraestructura requeridos.
The platform generates temporary access tokens for authorized users to interact with external code coverage reporting services during build workflows.
Gradle plugin and CLI for computing code coverage of new/modified code based on a diff
Computes coverage for modified code based on diffs.