gocheck works as an extension to the testing package and to the "go test"
runner. That allows keeping all current tests and using gocheck-based tests
right away for new tests without conflicts. The gocheck API was purposefully
made similar to the testing package for a smooth migration.
gocheck includes features such as:
* helpful error reporting to aid on figuring problems out
* richer test helpers: assertions which interrupt the test immediately, deep
multi-type comparisons, string matching, etc
* suite-based grouping of tests
* fixtures: per suite and/or per test set up and tear down
* benchmarks integrated in the suite logic (with fixtures, etc)
* management of temporary directories
* panic-catching logic, with proper error reporting
* proper counting of successes, failures, panics, missed tests, skips, etc
* explicit test skipping
* support for expected failures
* verbosity flag which disables output caching
* multi-line string reporting for more comprehensible failures
* inclusion of comments surrounding checks on failure reports