首頁 > 後端開發 > Golang > 分步驟解析GO項目test的寫法

分步驟解析GO項目test的寫法

藏色散人
發布: 2021-09-12 16:39:57
轉載
1898 人瀏覽過

本文由go語言教學專欄為大家介紹golang專案test的寫法,希望對需要的朋友有幫助!

golang專案test的寫法

  • #業務代碼
        package main
        
        import "fmt"
        
        func sum(a int,b int) int {
            return a+b
        }
        
        func main()  {
            fmt.Println("hello test")
        }
登入後複製
  • test測試用例
    package main
    
    import (
        "fmt"
        "testing"
    )
    
    func TestSum(t *testing.T)  {
        var a = 3
        var b =4
        res :=sum(a,b)
        fmt.Printf("%d 与%d之和:为%d",a,b,res)
        if res != 7{
            t.Error("error")
        }
    }
登入後複製
  • 每一個test檔案必須import一個testing.

  • #test檔案下每一個test case都必須以Test開頭並且符合TestXxx形式,否則go test會直接挑過測試不執行.

  • go test會自動尋找該目錄下的test檔, go test -v會詳細的顯示執行的過程

  • test case的入參數為t testing.T或b testing.B

  • t.Error為列印錯誤訊息,並當前test case會被跳過

  • t.SkipNow()為跳過test,並直接按PASS處理下一個test, 並必須寫在test case的第一行, 否則無效

  • go的test不會保證多個TestXxx是順序執行,但是通常會按順序執行, 為了,讓起順序執行,可以採用t.Run(name string, f func)來確保順序執行

  • TestMain(m *testing.M)作為初始化test,並使用m.Run()來呼叫其他tests可以完成一些需要初始化操作testing,例如資料庫連線,檔案開啟,REST服務登陸,如果沒有在testMain呼叫m.Run(),則除了TestMain以外其他test case都不會執行.

##更多golang相關知識,請造訪

golang教學欄位!

以上是分步驟解析GO項目test的寫法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:segmentfault.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板