Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Mi a különbség a Mockito ellenőrzési módszerében az (n) és a legalább (N) között


Mi a különbség a Mockito ellenőrzési módszerében az (n) és a legalább (N) között


A Mockito -ban az „N)” és a „Napeast (N)” -et használják a „ellenőrzés” módszeren belül, hogy ellenőrizzék, hányszor hívják meg egy módszert egy álobjektumon. Itt van egy részletes magyarázat:

Times (n)

- Cél: Ez a módszer igazolja, hogy egy módszert pontosan „n” -nek nevezzük. Ha a módszert több vagy kevesebbnek hívják, mint az „n”, akkor a teszt meghibásodik.
- Példa: `Ellenőrizze (ál, idő (2)). SomeMethod ();` biztosítja, hogy a „someMethod ()” pontosan kétszer hívják.
- Használja az esetet: Használja, ha pontos számú meghívást kell biztosítania.

legalább (n)

- Cél: Ez a módszer igazolja, hogy egy módszert legalább `n` időknek hívják. Ha a módszert kevesebb, mint „n” -nek hívják, akkor a teszt meghibásodik, de akkor elmúlik, ha több mint „n” -nek hívják.
- Példa: `Ellenőrizze (MOCK, legalább (2)). SomeMethod ();` biztosítja, hogy a „someMethod ()” legalább kétszer hívják.
- Használja az esetet: Használja, ha minimális számú meghívást szeretne biztosítani, de nem törődik a maximummal.

kulcsfontosságú különbségek

- Pontos vs. minimum: „Az idők (n)” pontos számú hívást igényel, míg a „legalább (n)” legalább ezt a számot igényli.
- Rugalmasság: "A legalább (N)" rugalmasabb, mivel több hívást tesz lehetővé, mint a megadott, míg az "N)" szigorúan a hívások számában szigorú.
- Hibakezelés: Ha egy módszert többször hívnak, mint a „Times (N)”, akkor a Mockito kivételt („ToomanyActualInvocations”) dob. A "NEAP (N)" esetén csak akkor kudarcot vall, ha a módszert kevesebb alkalommal hívják, mint a megadott ("ToolIttleActualInvocations").

Összefoglalva: az „n) időpontot használják a módszerhívások számának pontos ellenőrzésére, míg az„ legalább (n) ”a hívások minimális küszöbének biztosítása érdekében a hívások maximális számának korlátozása nélkül.

Idézetek:
[1] https://stackoverflow.com/questions/58176580/what-is-the-thefference-betwate-atleastonce-and-times1-in-mockito
[2] https://mincong.io/2019/09/22/mockito-evify/
[3] https://github.com/mockk/mockk
[4] https://site.mockito.org/javadoc/current/org/mockito/mockito.html
[5] https://www.lambdatest.com/automation-testing-advisor/selenium/methods/org.mockito.mockito.atleast
[6] https://stackoverflow.com/questions/60969650/use-of-everify-method-d-d-without-times1-parameter
[7] https://www.digitalocean.com/community/tutorials/mockito-everify
[8] https://stackoverflow.com/questions/27787487/java-everify-method-calls-ntimes-mithito
[9] https://www.javacodegeeks.com/2015/11/mockito-everification.html
[10] https://stackoverflow.com/questions/54233024/how-to-verify-a-method-which-was-called-multiple-times/54233921