Testing 测试net/http?

Testing 测试net/http?,testing,go,Testing,Go,我对如何构造go web应用程序及其测试感到有点困惑。我读了这本书,但还是不懂。例如,我有一个名为“beacon”的go项目,根目录下有一个beacon.go文件。添加一个普通的beacon\u test.go文件(逐字复制自)会导致此错误: $ go test # github.com/jelder/beacon ./beacon_test.go:11: main redeclared in this block previous declaration at ./beacon.go:

我对如何构造go web应用程序及其测试感到有点困惑。我读了这本书,但还是不懂。例如,我有一个名为“beacon”的go项目,根目录下有一个
beacon.go
文件。添加一个普通的
beacon\u test.go
文件(逐字复制自)会导致此错误:

$ go test
# github.com/jelder/beacon
./beacon_test.go:11: main redeclared in this block
    previous declaration at ./beacon.go:216
FAIL    github.com/jelder/beacon [build failed]
果然,第11行是
func main()
。如果我改为在我的
beacon\u测试中更改
package main
行,转到
package hello
,我会得到以下错误:

can't load package: package github.com/jelder/beacon: found packages main (beacon.go) and hello (beacon_test.go) in /Users/jacob/src/github.com/jelder/beacon

beacon\u test.go
还有一个名为
main()
的函数,将其重命名为
TestFirst
(或任何其他名称,只要它以
test
开头,请注意大写的
T
很重要)。没有这个必要。只需从正在处理的包(包含*.go文件的包)内部运行
go测试。
。如果需要更多帮助,请发布完整文件