Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon Kuidas erinevad Verifyzeroteractions teistest Mockito kontrollimismeetoditest


Kuidas erinevad Verifyzeroteractions teistest Mockito kontrollimismeetoditest


Mockitos on `Verifyzeroteractions` spetsiaalne kontrollimismeetod, mida kasutatakse selleks, et testi ajal mõnitatud objektil ei tehta meetodikõnesid. See meetod on ühikatestide puhtuse säilitamiseks ülioluline, hoides ära tahtmatu koostoime, mis võib osutada loogika või ebavajalike sõltuvuste puudustele.

Erinevused muudest kontrollimismeetoditest

1. eesmärk ja käitumine:
- `Verifyzeroteractions»: see meetod kontrollib, kas pilkatud objektil pole ühtegi meetodit kõnet tehtud. Kui mõni meetodikõne tuvastatakse, viskab Mockito erandi, põhjustades testi ebaõnnestumise. Seda kasutatakse selleks, et väita, et mõnitava objekt jääb testi täitmise ajal puutumata [1] [4].
- "Verify": seda meetodit kasutatakse selleks, et kontrollida, kas konkreetseid meetodikõnesid toimub ootuspäraselt. See võimaldab teil kontrollida, kas meetodil kutsutakse konkreetsete argumentidega ja seda saab kasutada mitmesuguste kinnitusrežiimidega, näiteks "Times ()", "AtlesEast ()" ja "Atmost ()", et täpsustada kutsumiste arv [2] [7].

2. kontrollimisrežiimid:
- `Verifyzeroteractions` ei toeta kontrollimisrežiime. See kontrollib lihtsalt igasuguste interaktsioonide puudumist.
- "Verify" toetab mitmeid kontrollimisrežiime, näiteks "Times ()`, "AthelEast ()`, "Atleasonce ()` ja "Atmost ()`, võimaldades teil täpsustada, mitu korda tuleks nimetada [2] [7].

3. kutsumise järjekord:
- `Verifyzeroteractions 'ei puuduta ennast meetodikõnede järjekorraga, kuna see kontrollib üldse interaktsioone.
- `Verify 'saab kasutada koos informeerimisega, et kontrollida meetodite kutsutamise järjekorda mõnitavatele objektidele. See on kasulik, kui meetodikõnede jada on oluline [2] [7].

4. Kasutage juhtumeid:
- `Verifyzeroteractions” kasutatakse tavaliselt siis, kui soovite veenduda, et mõnitavat objekti ei kasutataks testistsenaariumi korral üldse. See aitab katsetatava seadme isoleerida ja tagada, et ootamatute interaktsioonide tõttu ei ilmne kõrvaltoimeid [1] [4].
- "Verify" kasutatakse stsenaariumides, kus peate kinnitama, et objektide vahel toimuvad konkreetsed koostoimed. See on hädavajalik katsetatava süsteemi eeldatava käitumise testimiseks [2] [7].

Super Savings on Servers!

Ad

5. Seos "VerifyNoMoreInteractions" -ga:
- `Verifyzeroteractions` kontrollib, kas interaktsioone pole üldse toimunud.
- `VerifyNoMoreteractions` kontrollib, kas kõik pilkava objekti interaktsioonid on kontrollitud. See tagab, et pärast konkreetsete meetodikõnede jaoks kontrollige kontrollimata interaktsioone [3] [9].

Kokkuvõtlikult võib öelda, et "Verifyzeroteractions" on spetsiaalne meetod, mis keskendub interaktsioonide toimumise tagamisele, samas kui "Verify" on mitmekülgsem, võimaldades teil kontrollida konkreetseid koostoimeid ja nende sagedust. Mõlemad meetodid on olulised Mockito ühiku testimisel, teenides sõltuvalt testistsenaariumist erinevaid eesmärke.

Tsitaadid:
]
]
[3] https://stackoverflow.com/questions/52396683/difference-between-ventifynomoreteractions-and-verifyzeroIteractions-in-Mockit
]
]
]
[7] https://www.toptal.com/java/a-guide-o-veryday-mockito
[8] https://www.baeldung.com/mockito-erify
]