Summary
This chapter discussed go:generate
, code profiling and tracing, and testing Go code. You might find the Go way of testing boring, but this happens because Go is boring and predictable in general and that is a good thing! Remember that writing bug-free code is important, whereas writing the fastest code possible is not always that important.
Most of the time, you need to be able to write fast-enough code. So, spend more time writing tests than benchmarks, unless your code runs really slowly. You have also learned how to find unreachable code and how to cross-compile Go code.
Although the discussions of the Go profiler and go tool trace
are far from complete, you should understand that with topics such as profiling and code tracing, nothing can replace experimenting and trying new techniques on your own!
The next chapter is about fuzz testing, which is a modern way of testing Go code in addition to the testing techniques presented in this chapter. We will also look...