Mock之easymock, powermock, and mockito

时间:2022-07-10 23:48:10

easymock, powermock, and mockito

Easymock Class Mocking Limitations

To be coherent with interface mocking, EasyMock provides a built-in behavior for equals(), toString(), hashCode() and finalize() even for class mocking. It means that you cannot record your own behavior for these methods. This limitation is considered to be a feature that prevents you from having to care about these methods.
    Final methods cannot be mocked. If called, their normal code will be executed.
    Private methods cannot be mocked. If called, their normal code will be executed. During partial mocking, if your method under test is calling some private methods, you will need to test them as well since you cannot mock them.
    Class instantiation is performed using Objenesis. Supported JVMs are listed here.

--from http://easymock.org/user-guide.html

EasyMock Add-ons

Powermock is built on top of EasyMock. It uses a custom classloader and bytecode manipulation to enable mocking of static methods, constructors, final classes and methods, private methods, removal of static initializers and more

Junit and EasyMock

https://dzone.com/refcardz/junit-and-easymock