Heim >Backend-Entwicklung >Golang >Schritt-für-Schritt-Analyse zum Schreiben eines GO-Projekttests

Schritt-für-Schritt-Analyse zum Schreiben eines GO-Projekttests

藏色散人
藏色散人nach vorne
2021-09-12 16:39:161890Durchsuche

Dieser Artikel wird in der Tutorial-Kolumne „Go-Sprache“ vorgestellt, um das Schreiben von Golang-Projekttests vorzustellen. Ich hoffe, dass er Freunden in Not hilfreich sein wird! Schreiben des TGolang-Projekttests

Geschäftscode

        package main
        
        import "fmt"
        
        func sum(a int,b int) int {
            return a+b
        }
        
        func main()  {
            fmt.Println("hello test")
        }
E
    TEST-Testfall
    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")
        }
    }
E
  • Jede Testdatei muss unter jedem Testfall einen Testfall IMPORTIEREN. Sie muss mit Test beginnen und dem TestXxx-Format entsprechen. Andernfalls wählt go test den Test direkt aus und führt ihn nicht aus
  • go test sucht automatisch nach der Testdatei in diesem Verzeichnis, go test -v zeigt den Ausführungsprozess im Detail an

  • Der Eingabeparameter des Testfall ist t

    testing.T oder b

    testing.B
  • t.Error dient zum Drucken der Fehlermeldung und der aktuelle Testfall wird übersprungen
  • t.SkipNow() dient zum Überspringen des Tests. und drücken Sie direkt PASS, um den nächsten Test zu verarbeiten. Er muss in die erste Zeile des Testfalls geschrieben werden, andernfalls ist er ungültig.

  • gos Test garantiert nicht, dass mehrere TestXxx nacheinander ausgeführt werden, dies ist jedoch normalerweise der Fall Um die sequentielle Ausführung zu ermöglichen, können Sie t.Run(name string, f func) verwenden, um die sequentielle Ausführung

  • TestMain(m *testing.M) als Initialisierungstest sicherzustellen, und m.Run() verwenden um andere Tests zum Abschließen aufzurufen. Einige Tests, die Initialisierungsvorgänge erfordern, wie Datenbankverbindung, Dateiöffnung, REST-Dienstanmeldung, wenn m.Run() nicht in testMain aufgerufen wird, werden andere Testfälle außer TestMain nicht ausgeführt.

  • Mehr Golang-bezogenes Wissen finden Sie in der

  • Golang
  • Tutorial-Kolumne!

Das obige ist der detaillierte Inhalt vonSchritt-für-Schritt-Analyse zum Schreiben eines GO-Projekttests. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:segmentfault.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen