go基础详解2-go run & test

一 go run

编译运行一个main 包(package),常用的运行方式如下:

go run .
go run hello

go run 后面接路径,该路径(不含子路径)下所有的go源文件都属于main包。

==go run filename1 filename1 ==

go run 后面接go源文件,这些源文件必须要属于main包(package),并且要列出该程序所需的所有的源文件

二、go test

go 有一个轻量级(lightweight)的单元测试(unit testing)框架,可以很方便的测试相关函数。在使用此测试框架的时候需要注意以下 几点:

1、一般情况下,测试文件与被测试文件在同一个目录下,也可以不在同一个目录下;

2、当在同一个目录下的时候,如果被测试文件所在的包是fmt,那么测试文件所在的包一定要是fmt_test,否则会报错;

S C:\Users\love1\Documents\technology\go\gopathMode\hello\yyzc> go test -v .\greetings_test.go

#command-line-arguments

greetings_test.go:5:8: found packages greet (greetings.go) and greet1 (greetings_test.go) in C:\Users\love1\Documents\technology\go\gopathMode\hello\yyzc

FAIL command-line-arguments setup failed

FAIL

3、测试文件需要以_test.go为结尾;

4、测试文件中一般会包含类似TestXXX命名的函数,go测试框架会依次运行这些函数,这些函数示例如下;

go 复制代码
func TestXXX (t *testing.T){
}

否则会报如下错误

:\Users\love1\Documents\technology\go\gopathMode\hello\yyzc\greetings_test.go:8:1: wrong signature for TestHello, must be: func TestHello(t *testing.T)

FAIL command-line-arguments setup failed

FAIL

PS C:\Users\love1\Documents\technology\go\gopathMode\hello\yyzc>

5、执行方式

go test . 执行当前目录下的所有test文件
go test directory 执行yyzc目录下的所有test文件
go test filename 只执行指定的test文件

相关推荐
神奇小汤圆9 分钟前
深入理解MySQL事务隔离级别:MVCC机制与Next-Key Lock如何解决幻读问题?
后端
万少12 分钟前
一封邮件,让我重新打开了搁置半年的鸿蒙应用
前端·javascript·后端
周杰伦的稻香21 分钟前
Go + Redis:本地部署高性能图片主色调提取服务
开发语言·redis·golang
吴梓穆26 分钟前
Python 语法基础 函数
开发语言·python
Java编程爱好者28 分钟前
手把手看懂 Java 字节码:讲透 Integer 判等、静态方法重写与 try-finally 核心底层
后端
不负岁月无痕29 分钟前
C++ 模板核心内容与高频面试题汇总
java·开发语言·c++
Kobebryant-Manba33 分钟前
学习文本处理
开发语言·python
踏浪无痕36 分钟前
k8s发布服务,nacos未服务未下线紧急处理流程
后端
TYKJ02337 分钟前
物理安全:顶级机房为什么需要刷脸+指纹+工牌
后端
程序员黑豆43 分钟前
AI全栈开发 - Java:注释
前端·后端·ai编程