【发布时间】:2018-07-11 04:21:46
【问题描述】:
我在 main.go 中有一个函数 main() 可以完成这项工作,所有其他函数都在它下面(我没有在这里包含它们)。因此,当我为 main 中包含的所有 funcs 编写测试时,我可以测试它们。但是代码覆盖率很低,因为它表明我没有覆盖我的main func 中的代码。
我知道测试库中有一个 TestMain func 应该可以完成这项工作,但我只是不知道如何让它工作,以便测试涵盖 func main()。
下面是我的main() func,它没有被测试覆盖......
func main() {
c, err := getConfig()
if err != nil {
log.Fatal(err)
}
slideshows, err := getSlideshows(c)
if err != nil {
log.Fatal(err)
}
displaySlideshows(slideshows)
}
另外,我在互联网上没有找到太多关于它的信息,所以,如果这是一个愚蠢的问题,请向我解释为什么这是一个如此愚蠢的问题以及我应该在哪里寻找解决方案!
我将不胜感激!
【问题讨论】:
-
TestMain与测试main()无关。 -
如果您在 main() 中有真正的功能,请将其移至其他位置以便于测试,然后让 main 调用它。