Junior — Middle
Cum determină PyTest ce funcții sau cazuri de test trebuie să fie executate în timpul testării?
sobes.tech AI
Răspuns de la AI
PyTest detectează automat funcțiile și metodele de testare conform unor reguli specifice de denumire și structură. În mod implicit, caută:
- Funcții al căror nume începe cu
test_. - Metode din clase al căror nume începe cu
test_, cu condiția ca și clasa să înceapă cuTestși să nu moștenească de launittest.TestCase. - Fișiere al căror nume încep cu
test_sau se termină cu_test.py.
Astfel, PyTest scanează directoarele, găsește aceste fișiere, le importă și rulează toate funcțiile și metodele care corespund acestor criterii. Acest lucru facilitează organizarea testelor fără a fi nevoie să le înregistrezi explicit.
Exemplu:
# test_example.py
def test_sum():
assert sum([1, 2, 3]) == 6
class TestMath:
def test_multiply(self):
assert 2 * 3 == 6
Când rulezi pytest, aceste două teste vor fi detectate și executate.