go test can't find function in a same package
来源:互联网 发布:演技排行榜知乎 编辑:程序博客网 时间:2024/06/05 21:15
go test can't find function in a same package
Ask Question
http://stackoverflow.com/questions/14723229/go-test-cant-find-function-in-a-same-package
up vote14down votefavorite
1
The directory structure is :
src src/pkg src/pkg/t1.go src/pkg/t1_test.go
t1.go
package pkgimport ("fmt")func SayHI(){ fmt.Println("this is t1")}
t1_test.go
package pkgimport ( "testing")func TestXYZ(t *testing.T) { SayHI()}
Invoke go test from command line at dir src/pkg
go test t1_test.go
error: ./t1_test.go:8: undefined: SayHI FAIL command-line-arguments [build failed]
but the function is there
thanks for any hints
go
2
What happens if you run only "go test" in your package, without the filename? – Kiril Feb 6 '13 at 7:02
add a comment
1 Answer
activeoldestvotes
up vote20down vote
It is working as intended.
jnml@fsc-r630:~/src/pkg$ go help testusage: go test [-c] [-i] [build flags] [packages] [flags for test binary]'Go test' automates testing the packages named by the import paths.It prints a summary of the test results in the format: ok archive/tar 0.011s FAIL archive/zip 0.022s ok compress/gzip 0.033s ...followed by detailed output for each failed package.'Go test' recompiles each package along with any files with names matchingthe file pattern "*_test.go". These additional files can contain test functions,benchmark functions, and example functions. See 'go help testfunc' for more.By default, go test needs no arguments. It compiles and tests the packagewith source in the current directory, including tests, and runs the tests.The package is built in a temporary directory so it does not interfere with thenon-test installation.In addition to the build flags, the flags handled by 'go test' itself are: -c Compile the test binary to pkg.test but do not run it. -i Install packages that are dependencies of the test. Do not run the test.The test binary also accepts flags that control execution of the test; theseflags are also accessible by 'go test'. See 'go help testflag' for details.For more about build flags, see 'go help build'.For more about specifying packages, see 'go help packages'.See also: go build, go vet.jnml@fsc-r630:~/src/pkg$
IOW:
go test
is okay.go test pkg
(assuming $GOPATH is ~ and the package is in ~/src/pkg) is okay.go test whatever_test.go
is not okay as that is not supported as documented above.
To select which tests to run use the -run RE
flag (RE is a regexp, interpreted like *RE*
). For example
$ go test -run Say # from within the package's directory
or
$ go test -run Say my/package/import/path # from anywhere
I misunderstand the doc, thanks for detail explanation – davyzhang Feb 6 '13 at 14:46
0 0
- go test can't find function in a same package
- 【Go】解决“can't load package: no buildable Go source files in /...”
- GMF提示Can't find genClass for class '...' in package ...model的解决办法
- How can a member function in my derived class call the same function from its base class?
- Max OS 安装go (解决can't load package)
- Python can't find '__main__' module in ''
- Python can't find '__main__' module in ''
- svn: Can't find a temporary directory
- ruby TkPackage can't find package BWidget 之解决办法
- linux compile with error can't find a register in class 'GENERAL_REGS' while reloading 'asm'
- error: can't find a register in class 'GENERAL_REGS' while reloading 'asm'
- Tcl_Init error: Can't find a usable init.tcl in the following directories
- go can't find import: "github.com/** 错误
- MFC can't find the defintion of this function解决方法
- Solution : Can't quit Packagekit - adding software package in OpenSuse
- can't locate node [xxxx] in package [yyyy]
- python sh package can't execute in crontab[sh.CommandNotFound]
- php Can't use function return value in write context
- C语言,函数皮毛。
- struts2中input和是s:textfield的使用
- 驱动程序调试方法之printk
- 第一篇碎碎念
- 第三只爬虫-----豆瓣影评
- go test can't find function in a same package
- matlab 曲线拟合
- 错误:找不到或无法加载主类
- 2017滴滴新锐计划研发岗面试中的编程题
- Could not get unknown property 'ANDROID_BUILD_SDK_VERSION'
- 学习笔记
- liferay文档结构,主要是portlet 名称或路径变化后修改的配置文件
- enote笔记语言(4)(ver0.3)——“5w1h2k”分析法
- linux内核模块初始化