Go testing vs NUnit
Go testing
go.devNUnit
nunit.orgSide by side
| Figure | Go testing | NUnit |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| iOS | — | Yes |
| Android | — | Yes |
| API | — | Yes |
| Self-hosted | — | Yes |
| Plans published | 1 | 1 |
| Spec score · Unit Testing | 8.0 (#8) | 7.8 (#13) |
| Spec score · Unit Testing Frameworks | 8.1 (#9) | 7.8 (#19) |
Plans
In their own words
Go testing
Go testing is the testing toolkit built into Go, an open-source programming language supported by Google. Developers run it with the `go test` command and `testing` package. It discovers test functions named `TestXXX` in files ending in `_test.go`; adding `-v` displays tests and their results. The standard toolchain also supports native fuzzing, which varies inputs to help find bugs, as well as benchmarking and profiling. The race detector can be enabled with `go test -race`, though it detects races only in code paths exercised during a run. For vulnerability checks, `govulncheck` identifies known issues affecting code and prioritizes them according to whether vulnerable functions or methods are called. Its JSON output can feed CI/CD systems, and the Go team provides a GitHub Action. Go is free and has releases for Linux, macOS, and Windows, along with source archives and other ports. Its cryptography libraries can be used in FIPS 140-3 compliant mode. The language is used for cloud and network services, command-line interfaces, web development, DevOps, and site reliability engineering.
NUnit
NUnit is a unit-testing framework for .NET languages, with supported languages listed as C#, VB.NET, F#, and C++. NUnit 3 and later releases use the MIT license, which permits free use in commercial and noncommercial applications and libraries. NUnit 5 adds attributes for declaring dependencies between tests and fixtures. Its Repeat feature can set a required pass percentage from 1 to 100 and optionally stop once the outcome is determined. NUnit 5 ships builds targeting net462, net8.0, and net10.0. Installation options include project templates for Visual Studio, Visual Studio Code, and Rider, along with the dotnet new nunit command; release packages are available through NuGet and GitHub. The Visual Studio template references the NUnit Test Adapter, NUnit Analyzer, Microsoft Test SDK, and coverlet code coverage package. Documentation describes automated runs on clean machines, including Azure DevOps and GitHub Actions build agents. The project is supported by the .NET Foundation and maintained by a core team and community contributors.