Go测试

49次阅读
没有评论

共计 502 个字符,预计需要花费 2 分钟才能阅读完成。

Go 语言自带一个轻量级测试框架 testing 和 go test 命令来实现单元测试(T 类型)和性能测试(B 类型)。

单元测试

表格驱动测试

main.go

package main

import ("math")

func triangle(a, b int) int {c := int(math.Sqrt(float64(a*a + b*b)))
  return c
}

func main() {
  a, b := 3, 4
  c := triangle(a, b)
  println(c)
}

main_test.go

package main

import "testing"

func TestTriangle(t *testing.T) {tests := []struct{a, b, c int}{{3, 4, 5},
    {5, 12, 13},
    {8, 15, 17},
    {12, 35, 37},
    {30000, 40000, 50000},
  }

  for _, tt := range tests {if actual := triangle(tt.a, tt.b); actual != tt.c {t.Errorf("triangle(%d, %d): "+
        "got %d; expected %d",
        tt.a, tt.b, actual, tt.c)
    }
  }
}

性能测试

正文完
post-qrcode
 0
三毛
版权声明:本站原创文章,由 三毛 于2024-02-22发表,共计502字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)