golang单元测试之生成二进制测试文件

本文介绍了Golang单元测试的规范,包括测试文件命名和测试函数格式。当测试函数在其他源文件中定义时,需将源文件作为`go test`命令参数。同时,讲解了如何将单元测试文件编译为二进制可执行文件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、golang单元测试规范介绍:

    1、单元测试文件名称:*_test.go;

    2、单元测试文件中,函数的名称为:TestXXX,其中xxx必须以大写字母开头;

 

二、当执行go test命令进行单元测试时,*_test.go文件中要测试的函数没在该文件中定义,而是在其它源文件(.go文件)中定义的,需要把对应源文件也作为go test命令的参数,比如源码文件结构如下所示:

//源文件:project/sum.go

package sum

func Sum(num1, num2 int64) int64 {
	return num1+num2
}

// 单元测试文件:project/sum_test.go

package sum

import "testing"

func TestSum(t *testing.T) {
	t.Log(Sum(1,2))
}

虽然单元测试文件(sum_test.go)和被测试函数(Sum)在同一个包下,但是通过命令行go test来运行但云测试文件时,执行:

go test sum_test.go //会报"undefined: Sum"错误,即找不到Sum函数的定义

正确方式为:
go test sum_test.go sum.go  //(工作目录为project时)
或者
go test project //(工作目录为../project时)代码结构为project/sum.go、project/sum_test.go

三、单元测试文件编译为二进制可执行文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值