在testing.M
中,对于单元测试,示例测试和性能测试,都有一个内部类型用于存储编译生成的执行参数。模糊测试也有:
在1.18中三种内部类型增加成4种了。
在编译的时候,load操作也增加了 Fuzz
开头的模糊测试函数
在渲染测试的main入口中,也增加了模糊测试的模板
在testing.M.Run中,增加了模糊测试的支持
InternalFuzzTarget的结构:
type InternalFuzzTarget struct {
Name string
Fn func(f *F)
}
很简单,和单元测试等的结构非常类似,name和对应的func,func 的参数是 *testing.F