Junior — Middle
Ի՞նչ տարբերություն կա մոկ-օբյեկտների և ստաբների միջև թեստավորման համատեքստում։
sobes.tech AI
Պատասխան AI-ից
Ինքնուրույն փորձարկման համատեքստում, mock օբյեկտները (mocks) և stub-երը ծառայում են իրական կոմպոնենտների փոխարինման համար, բայց ունեն տարբեր նպատակներ:
-
Stub — պարզ օբյեկտ է, որը վերադարձնում է նախապես սահմանված տվյալներ, որպեսզի փորձարկումը կարողանա աշխատել կանխատեսելի վարքագծով: Նա չի ստուգում, թե ինչպես է հենց կանչվում, պարզապես տրամադրում է անհրաժեշտ պատասխաններ:
-
Mock — դա օբյեկտ է, որը ոչ միայն իմիտացիա է անում վարքագծի, այլ նաև ստուգում է, որ մեթոդները կանչվել են սպասված պարամետրերով և ճիշտ հերթականությամբ: Մոկերը օգտագործվում են փոխազդեցությունները ստուգելու համար:
Օրինակ՝
- Stub-ը կարող է վերադարձնել կեղծ պատասխան ցանցային հարցումից:
- Mock-ը կստուգի, որ հարցման մեթոդը ճիշտ մեկ անգամ կանչվել է որոշակի URL-ով:
iOS-ում, mock-եր և stub-եր ստեղծելու համար հաճախ օգտագործվում են OCMock կամ Cuckoo Framework-ները։