Vysmievať sa finálovým triedam a metódam s mockitom
1. Prehľad
V tomto krátkom článku sa zameriame na to, ako sa vysmievať posledným triedam a metódam - pomocou Mockita.
Rovnako ako v prípade iných článkov zameraných na rámec Mockito (napríklad Mockito Verify, Mockito When / Then a Mockito's Mock Methods), použijeme Môj zoznam trieda uvedená nižšie ako spolupracovník v testovacích prípadoch.
Pre tento tutoriál pridáme novú metódu:
public class MyList extends AbstractList {final public int finalMethod () {return 0; }}
A tiež ho rozšírime o konečné podtrieda:
verejná konečná trieda FinalList rozširuje MyList {@Override public int size () {návrat 1; }}
2. Nakonfigurujte Mockito pre konečné metódy a triedy
Predtým, ako bude možné program Mockito použiť na zosmiešňovanie záverečných tried a metód, je potrebné ho nakonfigurovať.
Musíme do projektu pridať textový súbor src / test / resources / mockito-rozšírenia adresár s názvom org.mockito.plugins.MockMaker a pridajte jeden riadok textu:
falošný výrobca
Mockito kontroluje rozšírenia adresár pre konfiguračné súbory, keď je načítaný. Tento súbor umožňuje zosmiešňovanie konečných metód a tried.
3. Vysmievajte sa záverečnej metóde
Keď je Mockito správne nakonfigurované, posledná metóda sa môže vysmievať ako každá iná:
@Test public void whenMockFinalMethodMockWorks () {MyList myList = new MyList (); MyList mock = falošný (MyList.class); when (mock.finalMethod ()). thenReturn (1); assertNotEquals (mock.finalMethod (), myList.finalMethod ()); }
Vytvorením konkrétnej a simulovanej inštancie Môj zoznam, môžeme porovnať hodnoty vrátené oboma verziami finalMethod () a overte, či sa volá falošný.
4. Vysmievajte sa finálovej triede
Napodobňovanie poslednej triedy je rovnako ľahké ako zosmiešňovanie akejkoľvek inej triedy:
@Test public void whenMockFinalClassMockWorks () {FinalList finalList = nový FinalList (); FinalList falošný = falošný (FinalList.class); when (mock.size ()). thenReturn (2); assertNotEquals (mock.size (), finalList.size ()); }
Podobne ako v teste vyššie, vytvoríme konkrétnu inštanciu a falošnú inštanciu našej finálnej triedy, zosmiešňujeme metódu a overíme, či sa falošná inštancia správa inak.
5. Záver
V tomto rýchlom výučbe sme sa venovali tomu, ako si vysmievať záverečné triedy a metódy s Mockitom pomocou rozšírenia Mockito.
Celé príklady, ako vždy, nájdete na GitHub.