go test常用介绍

本文介绍了Go语言测试的基本规范,包括测试文件命名、测试函数格式、错误处理、跳过测试、子测试的组织以及TestMain的使用。此外,还讲解了基准测试的开启方式、基准测试案例的执行特点,强调了非稳态函数在基准测试中的风险。
摘要由CSDN通过智能技术生成
package main

import (
	"testing"
	"fmt"
)

func testPrint(t *testing.T) {
	ret := PrintMain()
	if ret == 0 {
		t.Errorf("error")
	}

	fmt.Println(ret)
}
func testPrint2(t *testing.T) {
	ret := PrintMain()
	if ret == 0 {
		t.Errorf("error")
	}
	ret++
	fmt.Println(ret)
}

func TestAll(t *testing.T){
	t.Run("testPrint",testPrint)
	t.Run("testPrint2",testPrint2)
}

func TestMain(m *testing.M){
	fmt.Println("Tests begins")
	//m.Run()
}

1.go的test一般以xxx_test.go为文件名,xxx并没有特别要求是要实测的文件名

2.tes文件里要测试的函数要大写Testxxx(t* testing.T)或者Testxxx(b* testing.B) 

3.t.Errorf("")为打印错误信息,并且当前test case会被跳过 

4.t.SkipNow()跳过当前test,并且直接按PASS处理继续下一个test

5.使用t.Run来执行subtests可以做到控制test输出以及test的顺序

6.TestMain作为初始化test , 并且使用m.Run()来调用其他tests可以完成一些需要初始化操作的testing,比如数据库链接,文件打开,REST服

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小卒曹阿瞒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值