Junior — Middle
Hoe bepaalt PyTest welke testfuncties of -gevallen tijdens het testen moeten worden uitgevoerd?
sobes.tech AI
Antwoord van AI
PyTest detecteert automatisch testfuncties en -methoden volgens bepaalde naamgevings- en structuurregels. Standaard zoekt het:
- Functies waarvan de naam begint met
test_. - Methoden binnen klassen waarvan de naam begint met
test_, op voorwaarde dat de klasse ook begint metTesten niet erft vanunittest.TestCase. - Bestanden waarvan de naam begint met
test_of eindigt op_test.py.
Op deze manier scant PyTest directories, vindt deze bestanden, importeert ze en voert alle functies en methoden uit die aan deze criteria voldoen. Dit maakt het organiseren van tests eenvoudig zonder ze expliciet te hoeven registreren.
Voorbeeld:
# test_example.py
def test_sum():
assert sum([1, 2, 3]) == 6
class TestMath:
def test_multiply(self):
assert 2 * 3 == 6
Bij het uitvoeren van pytest worden deze twee tests gedetecteerd en uitgevoerd.