为了账号安全,请及时绑定邮箱和手机立即绑定

如何在基准函数中使用“testing.Benchmark”

如何在基准函数中使用“testing.Benchmark”

Go
九州编程 2022-06-21 16:19:57
我的测试文件func BenchmarkA(b *testing.B) {    res := testing.Benchmark(BenchB)    if res.N <= 25{        b.Fatalf("fail!")    }func BenchB(b *testing.B) {for i := 0; i <= b.N; i++{        url := "****"        contentType := "application/x-www-form-urlencoded"        data := strings.NewReader("****")        _, err := http.Post(url, contentType, data)        if err != nil {            b.Fatal("fail ")        }    }}当我跑步时go test -bench=./router_test.go我得到一个fatal error: all goroutines are asleep - deadlock!如果我使用“package main”和“func main{}”,程序可以成功运行。接下来我该怎么做?(原谅我糟糕的英语)
查看完整描述

1 回答

?
紫衣仙女

TA贡献1839条经验 获得超15个赞

我觉得有一种方法不是特别好


func TestA(t *testing.T) {

    res := testing.Benchmark(BenchB)

    if res.N <= 25{

        t.Fatalf("fail!")

    }

基准测试->单元测试


查看完整回答
反对 回复 2022-06-21
  • 1 回答
  • 0 关注
  • 106 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信