Denne browser understøttes ikke længere.
Opgrader til Microsoft Edge for at drage fordel af de nyeste funktioner, sikkerhedsopdateringer og teknisk support.
Hvad er en nyttig funktion til at definere armaturer i en conftest.py-fil ?
Tests i samme mappe og dens undermapper kan anmode om disse fixtures ved navn uden at importere dem.
Fixtures defineret i conftest.py kun køre, når testfilen importerer dem.
Fixtures i conftest.py kan kun anmodes om via tests i præcis den samme fil.
Hvad gør en test til en god kandidat til @pytest.mark.parametrize?
@pytest.mark.parametrize
Når den samme testlogik skal køre for flere inputværdier eller input/forventede-værdi-par.
Når urelaterede adfærdsmønstre skal tjekkes i én testfunktion.
Når en test skal køre parallelt.
Hvordan parametriserer man en test, der kræver både en inputværdi og en forventet værdi?
Brug en komma-separeret argumentnavnestreng og en liste af tupler, såsom @pytest.mark.parametrize("test_input, expected_value", [("3+5", 8), ("3*4", 12)]).
@pytest.mark.parametrize("test_input, expected_value", [("3+5", 8), ("3*4", 12)])
Brug én liste for alle inputværdier og en separat, ikke-relateret liste for alle forventede værdier.
Undgå navne på flere argumenter, fordi pytest ikke understøtter dem.
Hvad gør den scope="module" for en pytest-armatur?
scope="module"
Pytest opretter og cacher én fixture-værdi for modulet, og skiller den derefter ned under modulenedbrydningen, efter pytest har afsluttet den sidste test i det modul.
Pytest opretter en ny fixture-værdi før hver assertion i modulet.
Pytest gør armaturet tilgængeligt uden fil conftest.py .
conftest.py
I en yield-baseret fixture, hvornår kører koden efterfølgende yield ?
yield
Under adskillelsen, efter at den anmodede test eller armaturscope er færdig.
Før pytest består fiksturværdien til testen.
Kun når testen fejler.
Hvorfor bruge fixturen, monkeypatch når man udskifter en funktion eller miljøværdi i en test?
monkeypatch
Den annullerer automatisk ændringen, når den anmodede test eller armatur er færdig.
Den ændrer applikationskoden permanent, så senere tests ser samme værdi.
Den kører parametriserede tests parallelt.
Du skal svare på alle spørgsmål, før du kontrollerer dit arbejde.
Var denne side nyttig?
Har du brug for hjælp til dette emne?
Vil du prøve at bruge Ask Learn til at tydeliggøre eller guide dig gennem dette emne?