Ich habe ein Socket-Programm - 2 Skripte, Server und Client. Auf Serverseite habe ich viele Funktionen. Ich möchte diese Funktionen testen. Ich bin neu in Python. Gefunden etwas namens Pytest. Also für alle Funktionen auf meiner Serverseite habe ich so etwas gemacht.pytest sammeln 0 Artikel
def fun(a):
// fn definition
return b
def test_fun():
assert fun(test_case) == "expected value"
Ich nannte dieses Server-Skript als test_server.py und importierte Pytest. Ich habe auch pytest auf Client-Seite importiert und umbenannt das Skript dann auf test_client.py wenn ich
py.test test_server.py
und dann
py.test unter Verwendung eines Lauf test_client.py
Auf Server-Seite heißt es sammeln 0 Elemente, und das ist es. Es sammelt keine. Irgendeine Idee, wo ich falsch liege. Übrigens habe ich es mit einfachen Python-Codes versucht. Dort funktioniert pytest richtig. Ist es, dass pytest nicht mit Socket-Programmierung funktioniert oder mache ich einen Fehler? Es gibt auch keine Fehler in den Codes, ohne pytest zu verwenden. Es arbeitet völlig in Ordnung, wenn ich
Python test_server.py
tue und dann,
Python test_client.py
Vielen Dank. Ich wusste, dass py.test Funktionen, die mit test_ beginnen, als Testfälle betrachtet, aber ich wusste nicht, dass es nur diese Funktionen ausführt. Jetzt kann ich vielleicht nicht mehr tun, was Sie gesagt haben, weil ich auf der Serverseite testen muss, nicht auf der Clientseite. Also, ich habe den Teil des Server-Codes, der Socket-Verbindung in einer Funktion kümmert und benannte es mit test_ und jetzt sein Sammeln aller Elemente. –
Ich habe viele Funktionen auf der Serverseite, die ich testen muss. Wenn eine Funktion nach dem Aufruf definiert wird, zeigt sie einen Fehler an, der besagt, dass sie vor der Zuweisung verwendet wurde. Gut, das wird erwartet. Aber wenn ich die Funktionsdefinition vor der Verwendung anbringe, hängt die Serverseite einfach auf und zeigt nichts an. Ich kann nicht sehen, wo ich falsch gelaufen bin. Kann jemand mich auf irgendein Material hinweisen, wo ich darüber lernen kann, wie pytest mit Socket-Programmierung verwendet wird. Zumindest würde ich den Ausführungsablauf mit pytest sehen. –