Go SDK のバージョンが 1.18 未満の場合にファズテストがあることを報告します
ファズテストは、プログラムのクラッシュを引き起こす、または無効な挙動を示す可能性がある入力データを直接的に探る自動テストの手法です。 Go は Go 1.18 以降でファズテストをサポートしています。
ファズテストの例:
func Div(a, b int) int {
return a / b
}
func FuzzDiv(f *testing.F) {
f.Fuzz(func(t *testing.T, a, b int) {
Div(a, b) // ランタイムエラーが報告されます: 整数のゼロ除算
})
}
詳細は、Go Fuzzing を参照してください。