Golang表示我只有50%的覆盖代码,而且我看到main中的代码没有被覆盖,我已经尝试搜索但没有找到任何解释如何覆盖main中的代码。
main.go
package main
func Sum(x int, y int) int {
return x + y
}
func main() {
Sum(5, 5)
}
main_test.go
package main
import (
"testing"
)
func TestSum(t *testing.T) {
total := Sum(5, 5)
if total != 10 {
t.Fail()
}
}
答案 0 :(得分:1)
测试文件通常直接位于他们测试的代码旁边。根据项目的大小,您不必将sum函数提取到另一个包中,只是为了测试它而且也不必公开:
<强> main.go 强>
package main
func main() {
sum()
}
func sum() int {
return 5 + 5
}
<强> main_test.go 强>:
package main
import (
"testing"
)
func TestSum(t *testing.T) {
total := sum()
if total != 10 {
t.Fail()
}
}