zoukankan      html  css  js  c++  java
  • go-test知识点

    • 命令 go test 或 go test -v

    • 文件名必须以_test.go的格式命名

    • 使用t.Run来执行可实现顺序执行

    • testing.m 初始化test,如果有testing.m则其他方法都不会执行,必须使用m.Run才会执行其他方法

    • benchMark 性能测试,命令:go test -bench=.

      b.N会不断的调整

    代码示例:

    package main
    
    import (
        "fmt"
        "testing"
    )
    
    func TestMain(m *testing.M) {
        fmt.Println("初始化")
        m.Run()
    }
    
    func TestAll(t *testing.T) {
        t.Run("TestEchoHello1", testEchoHello1)
        t.Run("TestEchoHello3", testEchoHello3)
        t.Run("TestEchoHello2", testEchoHello2)
    }
    
    
    func testEchoHello1(t *testing.T) {
        fmt.Println("TestEchoHello1")
        EchoHello()
    }
    
    func testEchoHello2(t *testing.T) {
        fmt.Println("TestEchoHello2")
        EchoHello()
    }
    
    func testEchoHello3(t *testing.T) {
        fmt.Println("TestEchoHello3")
        EchoHello()
    }
    
    func BenchmarkEchoHello(b *testing.B) {
        for i:=0;i<b.N ;i++  {
            EchoHello()
        }
    }
    
    //查看b.N的变化
    func BenchmarkEchoHello1(b *testing.B) {
        count := 0
        for i:=0;i<b.N ;i++  {
            if i==0 {
                fmt.Println(b.N)
            }
            count ++
        }
        fmt.Println("count:",count)
    }

     

  • 相关阅读:
    TCP协议的三次握手、四次挥手
    .NET Framework 3.5 安装
    grep命令总结
    线性回归
    K-Mean聚类算法
    Logistic回归
    朴素贝叶斯
    Decision Tree
    KNN
    GCC for Win32开发环境介绍
  • 原文地址:https://www.cnblogs.com/dqh123/p/13225535.html
Copyright © 2011-2022 走看看