30 open-source projects similar to appleboy/gofight, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Gofight alternative.
A Go test assertion library for verifying that two representations of JSON are semantically equal
HTTP traffic mocking and testing made easy in Go ༼ʘ̚ل͜ʘ̚༽
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
GoMock is a mocking framework for the Go programming language.
go-fuzz is a coverage-guided randomized testing tool for identifying crashes and logic bugs in Go code. It consists of a fuzzer that evolves random inputs based on code execution paths, an instrumentation tool that produces binaries for tracking coverage, and a seed corpus manager. The tool utilizes compile-time binary instrumentation to monitor branch coverage and employs a feedback-driven mutation loop to prioritize inputs that reach new sections of the codebase. It includes capabilities for comparative differential testing to identify logic errors by executing different implementations of
go-cmp is a value comparison library for Go designed for use in test suites. It functions as a recursive data differ and assertion tool that determines if two complex data structures are semantically equal rather than relying on strict bitwise equality. The library provides a framework for defining specialized comparison logic, allowing users to register custom equality overrides for specific types. It includes mechanisms to manage how unexported fields are handled during traversal to prevent runtime panics during deep equality checks. The system utilizes reflection-based value traversal to
Record and replay your HTTP interactions for fast, deterministic and accurate tests
go-sqlmock is a Go library that simulates SQL driver behavior for unit testing by intercepting database calls through the standard database/sql/driver interface, eliminating the need for a real database connection. It provides a comprehensive mocking framework that allows developers to define expectations for SQL operations, including queries, executions, prepared statements, and transaction lifecycles, with precise control over the results and errors returned. The library distinguishes itself through its flexible matching and verification capabilities. It supports regex-based or exact SQL
Ruby on Rails like test fixtures for Go. Write tests against a real database
End-to-end HTTP and REST API testing for Go.
Testify is a comprehensive testing toolkit for Go that provides a suite of assertion libraries and mocking frameworks to validate code behavior. It enables developers to write automated tests by comparing actual results against expected outcomes, ensuring that functional requirements are met throughout the development process. The project distinguishes itself through its flexible failure propagation, which allows tests to either halt execution immediately upon a failed requirement or return boolean results for conditional logic. It includes deep-equality object comparison and JSON normalizati