Junior — Middle
Πώς καθορίζει το PyTest ποιες δοκιμαστικές λειτουργίες ή περιπτώσεις πρέπει να εκτελεστούν κατά τη διάρκεια της δοκιμής;
sobes.tech AI
Απάντηση από AI
Το PyTest ανιχνεύει αυτόματα τις δοκιμαστικές συναρτήσεις και μεθόδους σύμφωνα με συγκεκριμένους κανόνες ονοματοδοσίας και δομής. Από προεπιλογή, αναζητά:
- Συναρτήσεις των οποίων το όνομα αρχίζει με
test_. - Μεθόδους μέσα σε κλάσεις των οποίων το όνομα αρχίζει με
test_, υπό την προϋπόθεση ότι η κλάση αρχίζει επίσης μεTestκαι δεν κληρονομεί από τοunittest.TestCase. - Αρχεία των οποίων το όνομα αρχίζει με
test_ή τελειώνει σε_test.py.
Έτσι, το PyTest σαρώσει καταλόγους, βρίσκει αυτά τα αρχεία, τα εισάγει και εκτελεί όλες τις συναρτήσεις και μεθόδους που πληρούν αυτά τα κριτήρια. Αυτό διευκολύνει την οργάνωση των δοκιμών χωρίς να χρειάζεται να τις καταχωρίσετε ρητά.
Παράδειγμα:
# test_example.py
def test_sum():
assert sum([1, 2, 3]) == 6
class TestMath:
def test_multiply(self):
assert 2 * 3 == 6
Όταν τρέχετε το pytest, αυτοί οι δύο έλεγχοι θα ανιχνευθούν και θα εκτελεστούν.