Junior — Middle
Wie bestimmt PyTest, welche Testfunktionen oder -fälle während des Testprozesses ausgeführt werden sollen?
sobes.tech KI
Antwort von AI
PyTest erkennt automatisch Testfunktionen und -methoden anhand bestimmter Namens- und Strukturregeln. Standardmäßig sucht es:
- Funktionen, deren Namen mit
test_beginnen. - Methoden innerhalb von Klassen, deren Namen mit
test_beginnen, vorausgesetzt, die Klasse beginnt ebenfalls mitTestund erbt nicht vonunittest.TestCase. - Dateien, deren Namen mit
test_beginnen oder auf_test.pyenden.
Auf diese Weise durchsucht PyTest Verzeichnisse, findet diese Dateien, importiert sie und führt alle Funktionen und Methoden aus, die diesen Kriterien entsprechen. Dies erleichtert die Organisation von Tests, ohne sie explizit registrieren zu müssen.
Beispiel:
# test_example.py
def test_sum():
assert sum([1, 2, 3]) == 6
class TestMath:
def test_multiply(self):
assert 2 * 3 == 6
Beim Ausführen von pytest werden diese beiden Tests erkannt und ausgeführt.