Go Testing

Open-source Go projects categorized as Testing | Edit details

Top 23 Go Testing Projects

  • GitHub repo learn-go-with-tests

    Learn Go with test-driven development

    Project mention: My journey to writing my blog in Go | dev.to | 2021-04-14

    Go through Learn Go With Tests to learn how to test the code correctly in Go.

  • GitHub repo Gor

    GoReplay is an open-source tool for capturing and replaying live HTTP traffic into a test environment in order to continuously test your system with real data. It can be used to increase confidence in code deployments, configuration changes and infrastructure changes.

    Project mention: GoReplay - test your system with real data | reddit.com/r/programming | 2021-09-19
  • Nanos

    Run Linux Software Faster and Safer than Linux with Unikernels.

  • GitHub repo Testify

    A toolkit with common assertions and mocks that plays nicely with the standard library

    Project mention: Show HN: Caffeine, minimum viable back end for prototyping | news.ycombinator.com | 2021-11-16

    Very cool. You could simplify the tests by using testify [0] assertions and possibly a test suite. Then it'd be easier to add additional test cases.

    [0] https://github.com/stretchr/testify

  • GitHub repo toxiproxy

    :alarm_clock: :fire: A TCP proxy to simulate network and system conditions for chaos and resiliency testing

    Project mention: Simulate Slow internet and high Latency? (Satelite internet) | reddit.com/r/sysadmin | 2021-11-05

    Might be overkill but we use https://github.com/Shopify/toxiproxy for doing all sorts of evil network simulations.

  • GitHub repo chromedp

    A faster, simpler way to drive browsers supporting the Chrome DevTools Protocol.

    Project mention: Chromedp on real android device | reddit.com/r/golang | 2021-10-29

    Hi guys! I just wanted to ask if anyone of you managed to run chromedp on android device.

  • GitHub repo GoConvey

    Go testing in the browser. Integrates with `go test`. Write behavioral tests in Go.

    Project mention: Do you prefer go-convey over golang's t.Run? | reddit.com/r/golang | 2021-04-23

    For a generic usecase, do you see Go-convey adding any benefit over simple golang t.Run?

  • GitHub repo gomock

    GoMock is a mocking framework for the Go programming language. (by golang)

    Project mention: Gerando mocks de interfaces no go! | dev.to | 2021-11-10
  • Scout APM

    Scout APM: A developer's best friend. Try free for 14-days. Scout APM uses tracing logic that ties bottlenecks to source code so you know the exact line of code causing performance issues and can get back to building a great product faster.

  • GitHub repo terratest

    Terratest is a Go library that makes it easier to write automated tests for your infrastructure code.

    Project mention: Testing Terraform The Right Way | dev.to | 2021-10-25

    terratest — Terratest | Automated tests for your infrastructure code. (gruntwork.io)

  • GitHub repo ginkgo

    BDD Testing Framework for Go

    Project mention: Testza - A modern test framework with pretty output | reddit.com/r/golang | 2021-08-25

    What are people’s thoughts on testing frameworks? I’ve heard that most devs only use the testing package in the standard library and the testify package for assertions— I assume this is because Go is meant to be lightweight and scalable, and adding external dependencies basically goes against that. But I’ve also seen devs use packages like ginkgo to make tests more structured and readable. What do you guys think?

  • GitHub repo goss

    Quick and Easy server testing/validation

    Project mention: How To Use Terraform like a Pro: Part 1 | dev.to | 2021-09-09

    Use GOSS, a YML-based open-source tool that can assert the test results (i.e., verifying if the SSH port 22 is closed or not).

  • GitHub repo go-fuzz

    Randomized testing for Go

    Project mention: Go: Fuzzing Is Beta Ready | news.ycombinator.com | 2021-06-04

    > it shows the limitations of the language that you can't just build this inside the language.

    Not sure why you'd make that assumption. https://github.com/dvyukov/go-fuzz

  • GitHub repo realize

    Realize is the #1 Golang Task Runner which enhance your workflow by automating the most common tasks and using the best performing Golang live reloading.

  • GitHub repo go-grpc-middleware

    Golang gRPC Middlewares: interceptor chaining, auth, logging, retries and more.

    Project mention: [Question] Suggested way to update a database row using gRPC/PostgreSQL (pgx) ? | reddit.com/r/golang | 2021-11-16

    I do some basic validation at the server layer using a GRPC interceptor.

  • GitHub repo go-sqlmock

    Sql mock driver for golang to test database interactions

    Project mention: What are the REST API reference projects that can be used as a guide in 2021? | reddit.com/r/golang | 2021-11-24

    However your point is valid. Check matryer/is for unit test writing. DATA-DOG/go-sqlmock to test database interactions.

  • GitHub repo gotests

    Automatically generate Go test boilerplate from your source code.

    Project mention: gotests | reddit.com/r/devopskhan | 2021-10-29
  • GitHub repo mockery

    A mock code autogenerator for Golang (by vektra)

    Project mention: How do you install commands using go.mod | reddit.com/r/golang | 2021-11-02

    There are some packages in my project that are not used in the source code, but they're used as commands (i.e. https://github.com/vektra/mockery https://github.com/rubenv/sql-migrate).

  • GitHub repo Gauge

    Light weight cross-platform test automation

    Project mention: 9 Of The Best Java Testing Frameworks For 2021 | dev.to | 2021-05-14

    Gauge is a Behavior Driven Java testing framework launched by ThoughtWorks.Inc. This is also one of the best Java Testing Frameworks, which allows software engineers to develop automated frameworks and speed up the software development procedure.

  • GitHub repo go-cmp

    Package for comparing Go values in tests

    Project mention: What annoys you about Go? | reddit.com/r/golang | 2021-10-26

    When I use functional arguments, I either prefix all of the options with the same prefix or put them in a dedicated package (like cmpopts) to help the IDE.

  • GitHub repo selenoid

    Selenium Hub successor running browsers within containers. Scalable, immutable, self hosted Selenium-Grid on any platform with single binary.

    Project mention: What's the best way to spin up a remote desktop system for web browsing? | reddit.com/r/selfhosted | 2021-11-10
  • GitHub repo conftest

    Write tests against structured configuration data using the Open Policy Agent Rego query language

    Project mention: Kubernetes Security Checklist 2021 | dev.to | 2021-10-18

    Workload configuration should be audited regularly (Kics, Kubeaudit, Kubescape, Conftest, Kubesec, Checkov)

  • GitHub repo rod

    A Devtools driver for web automation and scraping

    Project mention: Mastering Web Scraping in Python: Crawling from Scratch | news.ycombinator.com | 2021-08-11

    If performance, Especially concurrency matters then we should include Go based libraries in the discussion as well.

    Colly[1] is a all batteries included scrapping library, But could be bit intimidating for someone new to HTML scrapping.

    rod [2] is a browser automation library based on DevTools Protocol which adheres to Go'ish way of doing things and so it's very intuitive but comes with overhead of running chromium browser even if its headless.

    [1] https://github.com/gocolly/colly

    [2] https://github.com/go-rod/rod

  • GitHub repo httpexpect

    End-to-end HTTP and REST API testing for Go.

    Project mention: Gostman: Postman like inside Go testing | reddit.com/r/golang | 2021-11-26

    I use this library: https://github.com/gavv/httpexpect

  • GitHub repo hoverfly

    Lightweight service virtualization/API simulation tool for developers and testers

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2021-11-26.

Go Testing related posts


What are some of the best open-source Testing projects in Go? This list will help you:

Project Stars
1 learn-go-with-tests 15,837
2 Gor 14,907
3 Testify 14,822
4 toxiproxy 7,358
5 chromedp 6,975
6 GoConvey 6,800
7 gomock 6,431
8 terratest 5,731
9 ginkgo 5,284
10 goss 4,521
11 go-fuzz 4,195
12 realize 4,146
13 go-grpc-middleware 4,133
14 go-sqlmock 3,939
15 gotests 3,549
16 mockery 3,078
17 Gauge 2,601
18 go-cmp 2,584
19 selenoid 2,041
20 conftest 2,016
21 rod 1,937
22 httpexpect 1,808
23 hoverfly 1,806
Find remote jobs at our new job board 99remotejobs.com. There are 34 new remote jobs listed recently.
Are you hiring? Post a new remote job listing for free.
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives