千家信息网

go语言怎么书写测试模块

发表于:2024-09-23 作者:千家信息网编辑
千家信息网最后更新 2024年09月23日,这篇文章主要讲解了"go语言怎么书写测试模块",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"go语言怎么书写测试模块"吧!如何在go语言中使用原生的te
千家信息网最后更新 2024年09月23日go语言怎么书写测试模块

这篇文章主要讲解了"go语言怎么书写测试模块",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"go语言怎么书写测试模块"吧!

如何在go语言中使用原生的testing模块书写测试模块

1.首先对于test模块如何去命名
    按照官方的规定在书写test包的时候,应该以源文件名加上_test.go的结尾来书写测试包。如原文件名为`main.go`则测试包按照规定应该写为`main_test.go`。当然假如你的这两个文件在同一个文件夹内是没有问题的,而且只要保证是_test结尾即可。
2.测试包的举例

源文件 main.go

package mainimport "fmt"func gotest(num int) {    total := 0    for n := 0; n < num; n ++ {        total += n        fmt.Println(total)    }}func main() {    gotest(100)}

测试文件 main_test.go

package mainimport (    "testing")func TestYou(t *testing.T) {  // 注意这里的TestYou必须采用驼峰命名法    gotest(100)}
3. 最后在终端执行 go test 即可,也可以明确指明文件 go test main.go main_test.go 或者 test go -v
4.如何有顺序的测试包中的代码呢?
对于test包中的代码执行是没有什么顺序可言的,但是若想让代码测试有顺序,比如在做web开发的时候,你应该先连接数据库等操作。所以这个时候就用到了t.run()这个函数了。

主函数 main.go

package mainimport "fmt"func gotest(num int) {    total := 0    for n := 0; n < num; n ++ {        total += n    }    fmt.Println(total)}func main() {    gotest(100)}

测试函数 main_test.go

package mainimport (    "testing")func testYou1(t *testing.T) {    gotest(100)}func testYou2(t *testing.T) {    gotest(100)}func TestAll(t *testing.T) {    t.Run("testYou1", testYou1)    t.Run("testYou2", testYou2)}
此外TestMain()函数会最先执行

感谢各位的阅读,以上就是"go语言怎么书写测试模块"的内容了,经过本文的学习后,相信大家对go语言怎么书写测试模块这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

0