美文网首页
Go的单元测试

Go的单元测试

作者: 疾风2018 | 来源:发表于2018-08-16 14:10 被阅读0次

函数测试

以下形式的函数签名将被go test命令当做单元测试方法

func TestXxx(*testing.T)

按照Go语言的习惯,把一个go文件的测试代码放在相同的的package下,起名称为 xxx_test.go,```go test```命令会自动识别,在正式编译的时候会忽略掉这样的文件。

运行```go help test```会了解更多。

函数性能测评(benchmark)

用以下形式命名的函数被当成benchmark(性能评测)

func BenchmarkXxx(*testing.B)

类似于这样的代码就可以评测每次循环花费的时间

func BenchmarkHello(b *testing.B) {

    for i := 0; i < b.N; i++ {

        fmt.Sprintf("hello")

    }

}

一个特殊的测试函数是TestMain,如果它存在则所有的测试函数的执行都是通过调用它来实现,函数签名形式如下:

func TestMain(m *testing.M)

TestMain典型的代码是:

func TestMain(m *testing.M) {

     // setup

     // call flag.Parse() here if TestMain uses flags

     os.Exit(m.Run())

     // teardown

}


testing.T 与 testing.B 的常用函数说明

testing.T/B.Fail  ->  mark the function as having failed

testing.T/B.FailNow  ->  mark the function as having failed and stop execution

testing.T/B.Error  ->  Log + Fail

testing.T/B.Fatal  ->  Log + FailNow

相关文章

  • go 单元测试

    单元测试 Go 语言测试框架可以让我们很容易地进行单元测试,但是需要遵循五点规则: 含有单元测试代码的 go 文件...

  • golang 单元测试(gotests、mockery自动生成)

    golang 单元测试 文件格式:go单元测试,有固定的名称格式,所有以_test.go为后缀名的源文件在执行go...

  • go test 单元测试

    go test 单元测试 文件格式:go单元测试,有固定的名称格式,所有以_test.go为后缀名的源文件在执行g...

  • gotests

    Go单元测试 go 程序中一般使用官方的go test 做测试,面对一些复杂情况和紧急需求写单元测试就变得有些仓促...

  • Go单元测试框架简单使用

    约束: 使用go自身的单元测试框架testing包来写单元测试有如下约束: 单元测试,要导入 testing 包;...

  • Go单元测试(一):基本用法

    来自公众号:灰子学技术 原文链接 一、单元测试的基本规则介绍 Go的单元测试比较容易实现,因为Go语言为我们提供了...

  • gotests 单元测试 快速生成

    gotests 单元测试 快速生成 go test单元测试简介 gotests安装 源码地址:https://gi...

  • Go 语言 Unit Testing 单元测试

    关于 Go 的基本语法,参见:半天时间 Go 语言的基本实践 单元测试 Go 中提供了 testing 这个 pa...

  • 单元测试&基准测试&样本测试&测试覆盖率

    1.单元测试 1.1.go test 目录 1.2.go test 测试源码文件 测试的源码文件 1.3.go t...

  • go 用testify搭建完整易用的测试环境

    单元测试 单元测试在大型应用开发中是非常重要的一环。go 自身提供了单元测试框架,但是原生单元测试框架提供的功能太...

网友评论

      本文标题:Go的单元测试

      本文链接:https://www.haomeiwen.com/subject/nicgbftx.html