对结构字使用字段标签

在表格驱动的测试中,最好为每个测试用例指定密钥。当测试用例覆盖了大量的垂直空间(例如,超过20-30行),当有相同类型的相邻字段,以及当你希望省略具有零值的字段时,这是有帮助的。比如说:

// Good:
tests := []struct {
    foo     *pb.Foo
    bar     *pb.Bar
    want    string
}{
    {
        foo: pb.Foo_builder{
            Name: "foo",
            // ...
        }.Build(),
        bar: pb.Bar_builder{
            Name: "bar",
            // ...
        }.Build(),
        want: "result",
    },
}