Pytest-ramverk: Konfigurering och Körning av Automatiserade Tester
Installation
Först och främst behöver vi installera Pytest. Denna process är enkel tack vare Pythons pakethanterare, pip. Öppna din kommandorad eller terminal och skriv in följande kommando:
pip install pytest
Det är alltid bäst att göra detta i projektets virtuella miljö.
Syntaxförklaring
En av anledningarna till att Pytest är så uppskattat i Python-gemenskapen är dess enkla och lättlästa syntax. Till skillnad från vissa andra testningsramverk tillåter Pytest att testkod skrivs på ett mycket läsbart sätt. Här är en snabb översikt:
- Testfiler: pytest känner igen filer som börjar med test_ eller slutar med _test.py;
- Testfunktioner: funktioner som börjar med test_ i dessa filer identifieras automatiskt som testfunktioner av pytest;
- Assertioner: använd Pythons inbyggda
assert-sats för att verifiera att specifika villkor är uppfyllda.
Kodexempel
Låt oss tillämpa det vi har lärt oss med ett enkelt exempel. Antag att vi har en funktion som heter add som adderar två tal. Så här kan vi skriva ett test för den med Pytest:
# content of test_example.py
def add(a, b):
return a + b
def test_add():
assert add(2, 3) == 5
assert add('space', 'ship') == 'spaceship'
Detta kodexempel visar två tester: ett för tal och ett för strängar. Assert-satserna kontrollerar om funktionen beter sig som förväntat.
Hur man kör tester och tolkar resultat
Att köra tester med Pytest är mycket enkelt. Navigera till katalogen som innehåller din testfil och kör följande kommando:
pytest
Pytest kommer automatiskt att upptäcka och köra alla tester i katalogen och visa en rapport som visar om varje test passerade eller misslyckades. Här är ett exempel på vad du kan se:
===================== test session starts ======================
collected 2 items
test_example.py .. [100%]
====================== 2 passed in 0.12s =======================
Varje punkt representerar ett godkänt test. Pytest ger detaljerad utdata för misslyckade tester, inklusive radnummer och orsaken till felet, vilket gör det enkelt att diagnostisera och åtgärda problem.
===================== test session starts ======================
collected 2 items
test_example.py .F [100%]
====================== FAILURES ==========================
____________________ test_add _________________________
def test_add():
> assert add(2, 3) == 8
E AssertionError: assert 5 == 8
E + where 5 = add(2, 3)
test_example.py:6: AssertionError
===================== 1 passed, 1 failed in 0.23s ======================
Tolkning av resultaten
- Godkänd (.): testet kördes framgångsrikt och alla assertioner var
True; - Misslyckad (F): testet innehåller assertioner som inte var
True, vilket indikerar ett problem; - Hoppad (s): testet hoppades över, kanske på grund av en konfigurerad villkor eller beroende.
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
Fantastiskt!
Completion betyg förbättrat till 3.13
Pytest-ramverk: Konfigurering och Körning av Automatiserade Tester
Svep för att visa menyn
Installation
Först och främst behöver vi installera Pytest. Denna process är enkel tack vare Pythons pakethanterare, pip. Öppna din kommandorad eller terminal och skriv in följande kommando:
pip install pytest
Det är alltid bäst att göra detta i projektets virtuella miljö.
Syntaxförklaring
En av anledningarna till att Pytest är så uppskattat i Python-gemenskapen är dess enkla och lättlästa syntax. Till skillnad från vissa andra testningsramverk tillåter Pytest att testkod skrivs på ett mycket läsbart sätt. Här är en snabb översikt:
- Testfiler: pytest känner igen filer som börjar med test_ eller slutar med _test.py;
- Testfunktioner: funktioner som börjar med test_ i dessa filer identifieras automatiskt som testfunktioner av pytest;
- Assertioner: använd Pythons inbyggda
assert-sats för att verifiera att specifika villkor är uppfyllda.
Kodexempel
Låt oss tillämpa det vi har lärt oss med ett enkelt exempel. Antag att vi har en funktion som heter add som adderar två tal. Så här kan vi skriva ett test för den med Pytest:
# content of test_example.py
def add(a, b):
return a + b
def test_add():
assert add(2, 3) == 5
assert add('space', 'ship') == 'spaceship'
Detta kodexempel visar två tester: ett för tal och ett för strängar. Assert-satserna kontrollerar om funktionen beter sig som förväntat.
Hur man kör tester och tolkar resultat
Att köra tester med Pytest är mycket enkelt. Navigera till katalogen som innehåller din testfil och kör följande kommando:
pytest
Pytest kommer automatiskt att upptäcka och köra alla tester i katalogen och visa en rapport som visar om varje test passerade eller misslyckades. Här är ett exempel på vad du kan se:
===================== test session starts ======================
collected 2 items
test_example.py .. [100%]
====================== 2 passed in 0.12s =======================
Varje punkt representerar ett godkänt test. Pytest ger detaljerad utdata för misslyckade tester, inklusive radnummer och orsaken till felet, vilket gör det enkelt att diagnostisera och åtgärda problem.
===================== test session starts ======================
collected 2 items
test_example.py .F [100%]
====================== FAILURES ==========================
____________________ test_add _________________________
def test_add():
> assert add(2, 3) == 8
E AssertionError: assert 5 == 8
E + where 5 = add(2, 3)
test_example.py:6: AssertionError
===================== 1 passed, 1 failed in 0.23s ======================
Tolkning av resultaten
- Godkänd (.): testet kördes framgångsrikt och alla assertioner var
True; - Misslyckad (F): testet innehåller assertioner som inte var
True, vilket indikerar ett problem; - Hoppad (s): testet hoppades över, kanske på grund av en konfigurerad villkor eller beroende.
Tack för dina kommentarer!