Running without Go
August 2, 2023 ยท View on GitHub
gotestsum may be run without Go as long as the package to be tested has
already been compiled using go test -c, and the test2json tool is available.
The test2json tool can be compiled from the Go source tree so that it can be distributed to the environment that needs it.
GOVERSION=1.17.6
OS=$(uname -s | sed 's/.*/\L&/')
mkdir -p gopath
GOPATH=$(realpath gopath)
HOME=$(realpath ./)
curl -L --silent https://go.dev/dl/go${GOVERSION}.${OS}-amd64.tar.gz | tar xz -C ./
env HOME=$HOME GOOS=linux GOARCH=amd64 CGO_ENABLED=0 GOPATH=$GOPATH ./go/bin/go build -o test2json -ldflags="-s -w" cmd/test2json
mv test2json /usr/local/bin/test2json
Or if you have Go installed already:
env GOOS=linux GOARCH=amd64 CGO_ENABLED=0 go build -o test2json -ldflags="-s -w" cmd/test2json
mv test2json /usr/local/bin/test2json
Example: running without a Go installation
export GOVERSION=1.13
gotestsum --raw-command -- test2json -t -p pkgname ./binary.test -test.v
Note: Compiled test binaries do not cache test results, like the same go test . command would.