I really disagree though. The native testing framework is overly clunky and verbose. It also makes things harder to debug when they fail. Just look at the example it gives! You don't even know why the test failed, it combines 4 different tests in one line. Are you supposed to inspect the entire object that gets printed out to figure it out? How terrible.
Yeah, it's a really bad example. I would just cmp.Diff, and if I only cared about 4 fields, I would delete the data from got.FieldIDontCareAbout before comparison. (You can also make cmp.Diff do this if you want to do it every time.)
https://github.com/golang/go/wiki/TestComments#assert-librar...
https://github.com/golang/go/wiki/TestComments#got-before-wa...
They did at least:
https://github.com/golang/go/wiki/TestComments#compare-full-...
Although the diff-ing is significantly more limited than cmp.