Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Mikä on ero aikojen (n) ja ainakin (n) välillä Mockiton tarkistusmenetelmässä


Mikä on ero aikojen (n) ja ainakin (n) välillä Mockiton tarkistusmenetelmässä


Mockitossa `Times (n)` ja `vähintään (n)` käytetään `Vardify` -menetelmässä tarkistaaksesi kuinka monta kertaa menetelmää kutsutaan pilkkaobjektille. Tässä on yksityiskohtainen selitys jokaisesta:

Times (n)

- Tarkoitus: Tämä menetelmä varmistaa, että menetelmää kutsutaan täsmälleen `n` -aikoiksi. Jos menetelmää kutsutaan enemmän tai vähemmän kuin `n` aikoja, testi epäonnistuu.
- Esimerkki: `Vahvista (Mock, Times (2)). Somemethod ();` varmistaa, että `somemethod ()` kutsutaan tarkalleen kahdesti.
- Käytä tapausta: Käytä, kun sinun on varmistettava tarkka määrä kutsuja.

ainakin (n)

- Tarkoitus: Tämä menetelmä varmistaa, että menetelmää kutsutaan ainakin `n` kertaa. Jos menetelmää kutsutaan vähemmän kuin `n` kertaa, testi epäonnistuu, mutta se kulkee, jos sitä kutsutaan enemmän kuin` n` aikiksi.
- Esimerkki: `Vahvista (pilkkaa, ainakin (2)). Somemethod ();` varmistaa, että `somemethod ()` kutsutaan vähintään kahdesti.
- Käytä tapausta: Käytä, kun haluat varmistaa vähimmäismäärän kutsuja, mutta älä välitä maksimiarvosta.

keskeiset erot

- Tarkka vs. minimi: `Times (n)` vaatii tarkan määrän puheluita, kun taas `vähintään (n)` vaatii ainakin kyseisen määrän puheluita.
- Joustavuus: `ainakin (n)` on joustavampi, koska se sallii enemmän puheluita kuin määritettyjä, kun taas `Times (n)` on tiukat puhelujen lukumäärän suhteen.
- Virheenkäsittely: Jos menetelmää kutsutaan useammin kuin määritelty `aikoilla (n)`, Mockito heittää poikkeuksen ("toomanyactualInvocations"). Ainoa (n) ``, se epäonnistuu vain, jos menetelmää kutsutaan vähemmän kuin määritelty ("työkaluistleactualInvocations").

Yhteenvetona voidaan todeta, että "aikoja (n)" käytetään tarkkaan hallitsemaan menetelmäpuhelujen lukumäärää, kun taas 'vähintään (n) `käytetään puhelujen vähimmäiskynnyksen varmistamiseen rajoittamatta puheluiden enimmäismäärää.

Viittaukset:
.
[2] https://mincong.io/2019/09/22/mockito-verify/
[3] https://github.com/mockk/mockkk
[4] https://site.mockito.org/javadoc/current/org/mockito/mockito.html
.
.
[7] https://www.digitalocean.com/community/tutorials/mockito-verify
.
[9] https://www.javacodegeeks.com/2015/11/mockito-verification.html
[10.