Mockitoga töötades kasutatakse Hamcresti sageli ekspressiivsete sobitajate jaoks, mis suurendavad testide loetavust. Siiski on olemas alternatiivid, mis võivad Mockitoga hästi töötada, millel kõigil on oma tugevused ja nõrkused.
Assertj
Assertj on Hamcresti populaarne alternatiiv üksustestides väidete kirjutamiseks. See annab sujuva API, mida paljudel arendajatel on lihtsam kasutada ja väljendusrikkam kui Hamcrest. AdertJ süntaks on sageli eelistatud selle loetavuse ja võimaluse hõlpsaks kohandatud väidete loomiseks. Kuigi AssertJ ei integreeru otseselt Mockitoga nagu Hamcrest, saab seda Mockito kõrval kasutada väidete jaoks, muutes testid loetavamaks ja hooldatavamaks. Kuid AssertJ on keskendunud peamiselt väidetele, mitte Hamcresti laiematele sobivatele võimalustele [1] [3].
Tõde
Tõde on veel üks Google'i välja töötatud väitekogu. See pakub sujuvat API-d, mis on sarnane AssertJ-ga, kuid keskendub rohkem IDE-de parema automaatse valmistamise toe pakkumisele, mis võib olla kasulik saadaolevate väidete avastamiseks. Tõde ei kasutata Mockito puhul nii tavaliselt kui Hamcrest, kuid seda saab kasutada testides väideteks. Nagu Assertj, on tõde keskendunud pigem väidetele kui üldotstarbelisele sobitamisele, mida Hamcrest pakub [3].
Mockito sisseehitatud vasterid
Mockito ise pakub sobitajaid, mida saab kasutada mõnitavate objektidega suhtlemiseks ja kontrollimiseks. Need kokkulepped tagastavad tüübi, millega nad sobivad (nt `mis tahes (täisarvuline)` tagastab täisarvu), mis erineb Hamcresti matšidest, mis tagastavad `Matšeri". Hamcresti matšide kasutamiseks Mockito abil saate Hamcresti matši muutmiseks mockito-ühilduvaks vormiks kasutada `argthat" või "mockitohamcrest.argthat" [7].
Kohandatud rakendused
Stsenaariumide jaoks, kus eelistate mitte kasutada väliseid raamatukogusid, saate rakendada oma vasteid või väiteid. See lähenemisviis võimaldab täielikku kontrolli käitumise ja süntaksi üle, kuid nõuab rohkem pingutusi ja hooldust. Tavaliselt pole seda soovitatav, kui teil pole väga konkreetseid vajadusi, mida olemasolevad teegid ei täida.
Järeldus
Kuigi Hamcresti kasutatakse koos Mockitoga laialdaselt selle paindlikkuse ja ekspressiivsuse tõttu, võivad sellised alternatiivid nagu Assertj ja tõde parandada teie testide väiteosa. Kui otsite midagi, mis integreerub Mockitoga sobivaks eesmärkideks, on Hamcrest endiselt tugev valik, kuid põhjalikuma testimiskogemuse saamiseks võite kasutada selle matšid koos teiste väiteraamatukogudega. Lõppkokkuvõttes sõltub valik teie konkreetsetest vajadustest ja eelistustest loetavuse, kasutusmugavuse ja väidete või sobivate tüübist, mida peate oma testides täitma.
Tsitaadid:]
]
[3] https://truth.dev/comparison.html
]
]
]
]
]