| // Copyright 2009 The Go Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style |
| // license that can be found in the LICENSE file. |
| |
| /* |
| |
| Gotest is an automated testing tool for Go packages. |
| |
| Normally a Go package is compiled without its test files. Gotest |
| is a simple script that recompiles the package along with any files |
| named *_test.go. Functions in the test sources named TestXXX |
| (where XXX is any alphanumeric string starting with an upper case |
| letter) will be run when the binary is executed. Gotest requires |
| that the package have a standard package Makefile, one that |
| includes go/src/Make.pkg. |
| |
| The test functions are run in the order they appear in the source. |
| They should have signature |
| |
| func TestXXX(t *testing.T) { ... } |
| |
| Benchmark functions can be written as well; they will be run only |
| when the -benchmarks flag is provided. Benchmarks should have |
| signature |
| |
| func BenchmarkXXX(b *testing.B) { ... } |
| |
| See the documentation of the testing package for more information. |
| |
| By default, gotest needs no arguments. It compiles all the .go files |
| in the directory, including tests, and runs the tests. If file names |
| are given, only those test files are added to the package. |
| (The non-test files are always compiled.) |
| |
| The package is built in a special subdirectory so it does not |
| interfere with the non-test installation. |
| |
| Usage: |
| gotest [pkg_test.go ...] |
| |
| The resulting binary, called (for amd64) 6.out, has a couple of |
| arguments. |
| |
| Usage: |
| 6.out [-test.v] [-test.run pattern] [-test.bench pattern] |
| |
| The -test.v flag causes the tests to be logged as they run. The |
| -test.run flag causes only those tests whose names match the regular |
| expression pattern to be run. By default all tests are run silently. |
| If all the specified test pass, 6.out prints PASS and exits with a 0 |
| exit code. If any tests fail, it prints FAIL and exits with a |
| non-zero code. The -test.bench flag is analogous to the -test.run |
| flag, but applies to benchmarks. No benchmarks run by default. |
| |
| */ |
| package documentation |