Golang 测试的具体例子
以下是一个简单的Go语言测试函数的例子,该函数检查一个整数是否为奇数:
package main
import (
"fmt"
"testing"
)
// 检查整数是否为奇数的函数
func IsOdd(n int) bool {
return n%2 == 1
}
// 测试IsOdd函数
func TestIsOdd(t *testing.T) {
testCases := []struct {
input int
want bool
}{
{1, true},
{2, false},
{3, true},
{4, false},
{5, true},
}
for _, tc := range testCases {
got := IsOdd(tc.input)
if got != tc.want {
t.Errorf("IsOdd(%d) = %v; want %v", tc.input, got, tc.want)
}
}
}
func main() {
// 运行测试
fmt.Println("Running tests...")
testing.Main(func(patters []string, matchFunc func(pat string, name string) (matched bool, byPrefix bool, bySuffix bool), t *testing.T) {
for _, p := range patters {
matched, _, _ := matchFunc(p, "TestIsOdd")
if matched {
TestIsOdd(t)
}
}
}, nil, nil, "TestIsOdd")
}
在这个例子中,我们定义了一个IsOdd
函数来判断一个整数是否为奇数,并编写了一个TestIsOdd
测试函数来验证它的正确性。然后在main
函数中,我们模拟了Go测试框架的运行,通过testing.Main
函数来运行我们的测试函数。这个例子展示了如何进行Go语言中的单元测试。
评论已关闭