Junior — Middle
Kāda ir atšķirība starp mock objektiem un stubs testēšanas kontekstā?
sobes.tech AI
Atbilde no AI
Testēšanas kontekstā mock objekti (mocks) un stub objekti kalpo kā aizvietotājiem reāliem komponentiem, bet tiem ir dažādi mērķi:
-
Stub — tas ir vienkāršs objekts, kas atgriež iepriekš noteiktus datus, lai tests varētu darboties ar paredzamu uzvedību. Tas ne pārbauda, kā tieši tas tiek izsaukts, tikai nodrošina nepieciešamos atbildes.
-
Mock — tas ir objekts, kas ne tikai imitē uzvedību, bet arī pārbauda, vai metodes ir izsauktas ar gaidītajiem parametriem un pareizajā secībā. Mocks tiek izmantoti mijiedarbību pārbaudei.
Piemērs:
- Stub var atgriezt viltus atbildi no tīkla pieprasījuma.
- Mock pārbaudīs, vai pieprasījuma metode ir izsaukta tieši vienu reizi ar noteiktu URL.
iOS, veidojot mock un stub, bieži izmanto tādus ietvarus kā OCMock vai Cuckoo.