Testy psacích jednotek mohou být obtížné a někdy musí být dobrý design obětován pouze za účelem testování.Testovatelnost často odpovídá dobrému designu, ale není tomu tak vždy.Například konečné třídy a metody nemohou být použity, soukromé metody někdy musí být chráněny nebo zbytečně přesunuty ke spolupracovníkovi, statickým metodám by se mělo úplně a tak dále vyhýbat jednoduše kvůli omezením stávajících rámců.PowerMock je rámec, který rozšiřuje další falešné knihovny, jako je EasyMock, o výkonnější funkce.PowerMock používá vlastní manipulaci s třídami a bytecode pro umožnění zesměšňování statických metod, konstruktérů, konečných tříd a metod, soukromých metod, odstraňování statických inicializátorů a dalších.Při použití vlastního třídicího stroje není třeba provádět žádné změny na IDE nebo na serverech s kontinuální integrací, což zjednodušuje jejich přijetí.Vývojáři, kteří jsou obeznámeni s podporovanými simulovanými frameworky, najdou PowerMock snadno použitelný, protože celé API očekávání je stejné, a to jak pro statické metody, tak pro konstruktéry.PowerMock si klade za cíl rozšířit existující API s malým počtem metod a anotací, které umožní další funkce.V současné době PowerMock podporuje EasyMock a Mockito .... Při psaní testů jednotek je často užitečné obejít enkapsulaci, a proto PowerMock obsahuje několik funkcí, které zjednodušují odrazy zvláště užitečné pro testování.To umožňuje snadný přístup k internímu stavu, ale také zjednodušuje částečné a soukromé zesměšňování.Upozorňujeme, že PowerMock je určen především pro lidi s odbornými znalostmi v testování jednotek.Uvedení do rukou juniorských vývojářů může způsobit více škody než užitku.
powermock