小编典典

Golang 测试:"no test files"

go

我正在我的包目录中创建一个名为 reverseTest.go 的简单测试

package main

import "testing"

func TestReverse(t *testing.T) {
    cases := []struct {
        in, want string
    }{
        {"Hello, world", "dlrow ,olleH"},
        {"Hello, 世界", "界世 ,olleH"},
        {"", ""},
    }

    for _, c := range cases {
        got := Reverse(c.in)
        if got != c.want {
            t.Errorf("Reverse(%q) == %q, want %q", c.in, got, c.want)
        }
    }
}

每当我尝试运行它时,输出是

exampleFolder[no test files] 

这是我的 go env

GOARCH="amd64"
GOBIN=""
GOCHAR="6"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/home/juan/go"
GORACE=""
GOROOT="/usr/lib/go"
GOTOOLDIR="/usr/lib/go/pkg/tool/linux_amd64"
TERM="dumb"
CC="gcc"
GOGCCFLAGS="-g -O2 -fPIC -m64 -pthread"
CXX="g++"
CGO_ENABLED="1"

任何帮助将不胜感激。谢谢!!


阅读 241

收藏
2021-12-14

共1个答案

小编典典

应调用包含测试的文件name_test,并带有_test后缀。它们应该与他们正在测试的代码一起出现。

递归地运行测试调用 go test -v ./...

如何编写 Go 代码

您可以通过创建一个名称以_test.go包含以TestXXXsignature命名的函数的文件来编写测试func (t *testing.T)。测试框架运行每个这样的函数;如果函数调用失败函数,例如t.Errort.Fail,则认为测试失败。

2021-12-14