Sobes.tech
Junior — Middle

Kuo skiriasi mock objektai ir stubs testavimo kontekste?

sobes.tech AI

Atsakymas iš AI

Testų kontekste, mock objektai (mocks) ir stub'ai tarnauja kaip tikriems komponentams pakeisti, tačiau turi skirtingus tikslus:

  • Stub — tai paprastas objektas, kuris grąžina iš anksto apibrėžtus duomenis, kad testas galėtų veikti su prognozuojamu elgesiu. Jis nepatikrina, kaip tiksliai jis yra iškviečiamas, tik teikia reikalingus atsakymus.

  • Mock — tai objektas, kuris ne tik imituoja elgesį, bet ir patikrina, ar metodai buvo iškviesti su tikėtinais parametrais ir tinkama tvarka. Mocks naudojami sąveikų patikrinimui.

Pavyzdys:

  • Stub gali grąžinti fiktyvų atsakymą iš tinklo užklausos.
  • Mock patikrins, ar užklausos metodas buvo iškviestas tik vieną kartą su tam tikru URL.

iOS, kuriant mocks ir stub'us, dažnai naudojami tokie karkasai kaip OCMock ar Cuckoo.