87 个仓库
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.
本项目是一个全面的 C++ 单元测试框架,旨在通过一套断言宏、测试夹具和执行运行器来验证代码逻辑并识别回归。它在静态初始化期间自动发现并注册测试用例,允许开发者定义隔离的测试环境,确保每次执行都有可重复且可预测的条件。 该框架的独特之处在于其复杂的模拟对象(mock object)库,能够模拟组件并强制执行严格的交互要求。通过拦截虚方法调用,它允许对参数模式、调用次数和返回行为进行精确验证。这种基于期望的方法辅以声明式断言语言和数据驱动引擎,共同支持对各种输入配置下的数据结构、容器内容和函数结果进行复杂验证。 除了核心验证外,该项目还提供广泛的生命周期监控和事件监听器接口,支持与外部报告和日志系统集成。它包括对参数化测试生成、自定义模拟扩展和进程终止验证的强大支持,确保开发者能够处理多样化的测试场景和独特的验证要求。 该框架直接集成到标准构建系统中,管理项目依赖项和编译器配置,以保持开发环境的一致性。它作为基于源码的库分发,利用标准配置文件来自动化环境设置和测试二进制文件的执行。
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 是一个 C++ 单元测试框架和断言库,以单头文件库的形式提供。它提供了一个带有命令行界面的测试运行器,用于执行测试、过滤测试套件并生成执行报告。 该框架支持源内单元测试,并允许通过预处理器剥离从编译后的二进制文件中完全移除测试逻辑,从而消除生产环境中的性能开销。它还支持跨二进制文件的测试注册表共享,允许一个可执行文件利用另一个的测试运行器。 功能包括参数化测试、用于并发软件验证的线程安全断言验证,以及用于回归分析的自动化测试报告。它利用自动测试注册来收集测试用例,而无需手动列出要执行的函数。
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 是一个用于 C 语言的轻量级单元测试框架,提供了验证代码正确性所需的断言库、测试运行器和报告机制。它作为在 C 环境中组织和执行单元测试的核心测试基础设施。 该框架专为系统级和嵌入式软件验证而设计,具有验证固件和硬件驱动程序的特定功能。它专注于内存完整性和指针有效性,允许验证指针状态并检查原始内存块。 该工具集涵盖了广泛的比较类型,包括针对整数、位模式和浮点值的数值验证。它还提供用于验证以空字符结尾的字符串、数组内容和布尔逻辑的实用程序,同时支持自定义失败消息以在调试期间提供上下文。
Simple unit testing for C.
Telescope 是一个用于 Laravel 应用程序的调试仪表板和开发工具,提供了一个 Web 界面来监控请求、异常、数据库查询和日志。它作为一个 PHP 应用程序监控器和诊断助手,追踪系统的执行生命周期以识别和解决 Bug。 该工具的独特之处在于为 SQL 查询和 Redis 命令提供了专门的分析器,以及一个用于外发邮件的浏览器内预览系统。它还包括一个专门的审计系统,用于控制台命令和授权门控检查,以验证权限逻辑。 该平台涵盖了广泛的可观测性领域,包括后台作业和进程跟踪、缓存操作检查以及应用程序事件监控。它通过 Header 和会话数据分析请求生命周期,记录异常的完整堆栈跟踪,并监控视图渲染和模型水合。 监控界面的访问通过集中的授权门控进行管理。
Provides an elegant dashboard for monitoring and debugging.
backward-cpp 是一个 C++ 堆栈跟踪库和调试工具,旨在捕获、解析并打印详细的执行轨迹和崩溃报告。它作为崩溃报告器和调用堆栈打印机,将原始内存地址转换为人类可读的函数名、文件名和行号。 该项目通过注册系统处理程序来处理致命错误(如段错误),从而实现自动崩溃报告,并在程序失败时自动生成执行轨迹。它的独特之处在于能从磁盘提取源代码片段,在解析后的堆栈帧旁显示具体的代码行。 该工具集涵盖了堆栈帧展开和内存地址解析,以分析导致崩溃的函数调用序列。它包括延迟符号翻译和彩色渲染功能,用于格式化终端输出的跟踪数据。
Stack trace pretty printer for C++.
Heaptrack 是一个用于在 Linux 上运行的应用程序的堆内存分析器和诊断工具。它作为一个内存泄漏检测器和性能分析系统,记录堆分配和堆栈跟踪,以识别内存热点和消耗模式。 该项目提供了一个图形化堆分配可视化器,用于通过树状视图和峰值内存报告探索内存使用情况。它利用火焰图和分配图来可视化内存热点并协助检测泄漏。 该工具集包括用于堆内存分配跟踪的功能,以及通过命令行实用程序生成内存报告的功能。这些实用程序生成峰值内存消耗者的 ASCII 摘要,并允许转换配置文件数据。
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.