87 dépôts
Frameworks for unit testing, benchmarking, and memory analysis.
Explore 87 awesome GitHub repositories matching part of an awesome list · Testing and Debugging. Refine with filters or upvote what's useful.
json-server is a development toolset used to simulate a full REST API from a JSON file. It functions as a customizable mock API server that allows for the simulation of CRUD operations and resource relationships without the need to write backend code. The project enables rapid prototyping by generating a fake backend that persists data changes back to a local JSON file. It distinguishes itself by providing a static asset file server to deliver local documents, images, and stylesheets alongside the mock API endpoints. The server includes capabilities for data querying, such as parameter-based
Tool for serving REST APIs from static JSON files.
Ce projet est un framework de test unitaire C++ complet conçu pour vérifier la logique du code et identifier les régressions grâce à une suite de macros d'assertion, de fixtures de test et d'exécuteurs. Il automatise la découverte et l'enregistrement des cas de test lors de l'initialisation statique, permettant aux développeurs de définir des environnements de test isolés qui garantissent des conditions répétables et prévisibles pour chaque exécution. Le framework se distingue par une bibliothèque d'objets mock sophistiquée qui permet la simulation de composants et l'application d'exigences d'interaction strictes. En interceptant les appels de méthodes virtuelles, il permet une validation précise des modèles d'arguments, du nombre d'appels et des comportements de retour. Cette approche basée sur les attentes est complétée par un langage d'assertion déclaratif et un moteur piloté par les données, qui soutiennent ensemble une validation complexe des structures de données, du contenu des conteneurs et des résultats de fonctions à travers des configurations d'entrée variées. Au-delà de la vérification de base, le projet fournit une surveillance étendue du cycle de vie et des interfaces d'écoute d'événements, permettant l'intégration avec des systèmes de reporting et de journalisation externes. Il inclut un support robuste pour la génération de tests paramétrés, des extensions de mock personnalisées et la vérification de la terminaison des processus, garantissant que les développeurs peuvent gérer divers scénarios de test et des exigences de validation uniques. Le framework s'intègre directement dans les systèmes de build standard, gérant les dépendances du projet et les configurations du compilateur pour maintenir la cohérence entre les environnements de développement. Il est distribué sous forme de bibliothèque basée sur les sources qui utilise des fichiers de configuration standard pour automatiser la configuration de l'environnement et l'exécution des binaires de test.
Library for writing mock classes and unit tests.
Insomnia is a cross-platform API development environment that integrates a request debugger, schema design tools, a mocking server, and a test automation framework. It provides a unified workspace for sending requests and analyzing responses across REST, GraphQL, gRPC, and WebSocket protocols. The platform enables the design and preview of API specifications through a visual editor and allows for the simulation of backend behavior using mocking tools. It supports organizing and synchronizing API collections via local storage, cloud synchronization, or Git. The suite includes a command-line i
Cross-platform client for testing HTTP and GraphQL APIs.
HTTPie is a command-line HTTP client and REST API testing tool designed for sending requests to web services and APIs. It functions as a JSON-native network client and interactive HTTP debugger, providing a terminal interface for constructing and validating API requests and responses. The tool simplifies the process of interacting with APIs by automatically handling JSON payloads and applying colorized formatting to responses for human readability. It supports the simulation of request generation to verify headers and bodies before they are sent over the network. The project covers a broad r
User-friendly command-line HTTP client for developers.
jq is a command-line JSON processor and data transformer. It provides a functional query language used to slice, filter, map, and transform structured JSON data directly within a terminal. The utility functions as a data transformer that reshapes JSON input into different structures or formats based on declarative logic. This allows for the extraction and analysis of structured data from sources such as API responses and system logs.
Command-line processor for manipulating JSON API responses.
Catch2 is a comprehensive framework for C++ software validation, providing an environment for unit testing, integration verification, and performance analysis. It enables developers to define and execute automated test suites and micro-benchmarks directly within their applications. The framework is distinguished by its header-only distribution, which allows for integration into existing build systems without requiring complex external dependencies. It utilizes a hierarchical section-based execution model that supports behavior-driven testing, allowing for shared setup and teardown logic acros
Header-only framework for unit testing and TDD.
Laravel Debugbar is a web-based debugging toolbar and application profiler for Laravel. It provides a visual interface to inspect database queries, logs, and performance metrics in real time to identify and resolve bugs during development. The tool features a database query monitor to capture SQL statements and timings, as well as a request inspector for analyzing route metadata, loaded views, and HTTP request data. It includes a profiler for measuring execution time and memory usage to identify bottlenecks in the request lifecycle. Its observability capabilities cover exception capture, app
Integrates a comprehensive debugging toolbar.
MailHog is an email testing tool that functions as a local SMTP server to capture outgoing messages during the development process. By intercepting SMTP traffic, it allows developers to verify email content, headers, and attachments without transmitting messages to actual external recipients. Captured data is stored in an in-memory buffer, ensuring that sensitive information remains accessible for inspection through a dedicated web-based dashboard. The platform distinguishes itself by incorporating network simulation capabilities, which allow for the injection of artificial delays or connecti
Local SMTP server for testing email sending in development.
This project is a performance measurement framework and microbenchmarking library designed for C++ and Python. It provides a toolset for measuring the execution time of small code fragments using high-resolution timers, calculating statistical aggregates, and analyzing asymptotic complexity. The framework distinguishes itself through specialized capabilities for multithreaded performance testing, using synchronized execution to measure parallel throughput. It includes mechanisms to prevent compiler optimizations from removing benchmarked code and supports complex parameterization via Cartesia
Library for microbenchmarking C++ code.
Awesome Emacs is a curated directory of community-driven resources, packages, and configurations designed to extend the functionality of the Emacs text editor. It serves as a comprehensive index for users seeking to transform their editor into a specialized development environment or a highly personalized productivity workspace. The collection highlights tools that enable deep customization of the Emacs experience, ranging from ergonomic key binding schemes and visual interface themes to advanced window management and navigation utilities. It provides a centralized reference for discovering e
Integrates external build systems and debuggers directly into the development environment.
http-prompt is an interactive HTTP client and API testing CLI designed for constructing and debugging network requests to REST and GraphQL endpoints. It functions as a command-line request builder and a shell extension built on top of HTTPie. The tool provides an interactive shell interface featuring request autocomplete and real-time syntax highlighting for requests and responses. It incorporates stateful session management to maintain request history and session data across multiple commands. The project covers API request automation and REST API debugging, allowing users to send and verif
Interactive HTTP client with autocomplete and syntax highlighting.
Rest-assured is a Java-based REST API testing framework and HTTP client library designed for automating web service tests. It provides a fluent domain-specific language and assertion library to send HTTP requests and validate response metadata, including status codes, headers, cookies, and bodies. The framework is distinguished by a method-chaining DSL that creates readable specifications for API interactions. It features a filter-based request interception pipeline, object-mapping serialization for converting Java objects to JSON or XML, and a path-based parsing system to isolate specific fi
Java DSL for testing REST services.
doctest est un framework de tests unitaires et une bibliothèque d'assertions pour C++ livrée sous forme de bibliothèque à en-tête unique. Il fournit un exécuteur de tests avec une interface en ligne de commande pour exécuter les tests, filtrer les suites de tests et générer des rapports d'exécution. Le framework prend en charge les tests unitaires in-source et permet la suppression complète de la logique de test des binaires compilés via le stripping par préprocesseur afin d'éliminer la surcharge de performance dans les environnements de production. Il permet également le partage de registres de tests entre binaires, permettant à un exécutable d'utiliser l'exécuteur de tests d'un autre. Les capacités incluent les tests paramétrés, la vérification d'assertions thread-safe pour la validation de logiciels concurrents, et la génération automatique de rapports de tests pour l'analyse de régression. Il utilise l'enregistrement automatique des tests pour collecter les cas de test sans nécessiter de listes manuelles de fonctions à exécuter.
Lightweight, feature-rich single-header testing framework.
Clockwork is a PHP development debugging tool that collects and displays runtime data from server-side middleware in a browser-based interface. It captures request details, performance metrics, logs, database queries, and stack traces for HTTP requests, commands, queue jobs, and tests without requiring modifications to application code. The tool provides a client-side rendered toolbar and full web interface for inspecting collected data, including a searchable performance timeline viewer, an HTTP request monitor with timing and response details, and inline variable logging helpers that return
Profiles and debugs applications via browser integration.
Unity est un framework de test unitaire léger pour C, fournissant la bibliothèque d'assertions, le lanceur de tests et les mécanismes de reporting nécessaires pour vérifier l'exactitude du code. Il fonctionne comme une infrastructure de test de base pour organiser et exécuter des tests unitaires dans des environnements C. Le framework est conçu pour la validation de logiciels système et embarqués, avec des capacités spécifiques pour vérifier le firmware et les pilotes matériels. Il se concentre sur l'intégrité de la mémoire et la validité des pointeurs, permettant la validation des états des pointeurs et l'inspection des blocs de mémoire bruts. L'ensemble d'outils couvre un large éventail de types de comparaison, y compris la vérification numérique pour les entiers, les modèles de bits et les valeurs à virgule flottante. Il fournit également des utilitaires pour valider les chaînes terminées par null, le contenu des tableaux et la logique booléenne, tout en prenant en charge des messages d'échec personnalisés pour fournir du contexte lors du débogage.
Simple unit testing for C.
Telescope est un tableau de bord de débogage et un outil de développement pour les applications Laravel qui fournit une interface web pour surveiller les requêtes, les exceptions, les requêtes de base de données et les logs. Il fonctionne comme un moniteur d'application PHP et un assistant de diagnostic, retraçant le cycle de vie d'exécution du système pour identifier et résoudre les bugs. L'outil se distingue en offrant des profileurs spécialisés pour les requêtes SQL et les commandes Redis, ainsi qu'un système de prévisualisation dans le navigateur pour les e-mails sortants. Il inclut également un système d'audit dédié pour les commandes console et les vérifications de portes d'autorisation afin de vérifier la logique des permissions. La plateforme couvre un large éventail de domaines d'observabilité, notamment le suivi des tâches et processus en arrière-plan, l'inspection des opérations de cache et la surveillance des événements d'application. Elle analyse le cycle de vie des requêtes via les données d'en-tête et de session, enregistre les traces de pile complètes pour les exceptions et surveille le rendu des vues et l'hydratation des modèles. L'accès à l'interface de surveillance est géré via une porte d'autorisation centralisée.
Provides an elegant dashboard for monitoring and debugging.
backward-cpp est une bibliothèque de stack trace C++ et un utilitaire de débogage conçu pour capturer, résoudre et imprimer des traces d'exécution détaillées et des rapports de crash. Il fonctionne comme un rapporteur de crash et un imprimeur de pile d'appels qui traduit les adresses mémoire brutes en noms de fonctions, noms de fichiers et numéros de ligne lisibles par l'homme. Le projet fournit des rapports de crash automatisés en enregistrant des gestionnaires système pour les erreurs fatales, telles que les erreurs de segmentation, afin de générer automatiquement des traces d'exécution lors de la défaillance du programme. Il se distingue en extrayant des fragments de fichiers sources du disque pour afficher des lignes de code spécifiques aux côtés des frames de pile résolues. L'ensemble d'outils couvre le déroulement des frames de pile et la résolution des adresses mémoire pour analyser la séquence d'appels de fonction menant à un crash. Il inclut des capacités pour la traduction différée des symboles et le rendu colorisé pour formater les données de trace pour la sortie terminal.
Stack trace pretty printer for C++.
Heaptrack est un profileur de mémoire tas (heap) et un outil de diagnostic pour les applications s'exécutant sur Linux. Il fonctionne comme un détecteur de fuites de mémoire et un système d'analyse de performance qui enregistre les allocations de tas et les traces de pile pour identifier les points chauds de mémoire et les modèles de consommation. Le projet fournit un visualiseur graphique d'allocation de tas pour explorer l'utilisation de la mémoire via des vues en arbre et des rapports de mémoire de pointe. Il utilise des graphiques en flamme (flame graphs) et des graphiques d'allocation pour visualiser les points chauds de mémoire et aider à la détection des fuites. L'ensemble d'outils inclut des capacités pour le traçage de l'allocation de mémoire tas et la génération de rapports de mémoire via des utilitaires en ligne de commande. Ces utilitaires produisent des résumés ASCII des consommateurs de mémoire de pointe et permettent la conversion des données de profil.
Heap memory profiler for Linux.
Single C file, Realtime CPU/GPU Profiler with Remote Web Viewer
Single-file profiler with a web viewer.
A dbg(…) macro for C++
Macro for convenient debugging output.