Heim >Backend-Entwicklung >Golang >Warum zeigt „go test' trotz einer Testfunktion an, dass „keine Tests auszuführen sind'?

Warum zeigt „go test' trotz einer Testfunktion an, dass „keine Tests auszuführen sind'?

Barbara Streisand
Barbara StreisandOriginal
2024-12-05 22:52:10472Durchsuche

Why Does

Warum „keine Tests ausgeführt werden können“, obwohl eine Testfunktion vorhanden ist

Go-Tests erfordern eine bestimmte Namenskonvention für Testfunktionen. Der Funktionsname muss mit einem Großbuchstaben „T“ beginnen und dem Format TestXxx(t *testing.T) folgen.

Im bereitgestellten Codeausschnitt heißt die Testfunktion testNormalizePhoneNum, was gegen diese Konvention verstößt. Das Testtool ignoriert diese Funktion, was zur Meldung „Keine Tests zum Ausführen“ führt.

Lösung:

Um dieses Problem zu beheben, benennen Sie die Testfunktion in TestNormalizePhoneNum um ein großes „T“:

package main

import (
    "testing"
)

func TestNormalizePhoneNum(t *testing.T) {
    // ...
}

Alternative Lösung:

Alternativ können Sie das Testtool zwingen, die Funktion auszuführen, indem Sie das Flag -run verwenden:

go test -run=testNormalizePhoneNum

Dieser Ansatz wird jedoch nicht empfohlen, da er die Funktion umgeht Standard-Namenskonvention.

Das obige ist der detaillierte Inhalt vonWarum zeigt „go test' trotz einer Testfunktion an, dass „keine Tests auszuführen sind'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn