Audience
DevOps teams looking for a Unit Testing solution
About MockK
Mocking is a technique to make testing code readable and maintainable. In three consequent articles, I would like to show the basics, features, and quirks of the MockK library. It is a new open-source library (github repository) focused on making mocking in Kotlin great. Injection first tries to match properties by name, then by class or superclass. Check the lookupType parameter for customization. Properties are injected even if private is applied. Constructors for injection are selected from the biggest number of arguments to lowest.
Other Popular Alternatives & Related Software
PowerMock
Writing unit tests can be hard and sometimes good design has to be sacrificed for the sole purpose of testability. Often testability corresponds to good design, but this is not always the case. For example final classes and methods cannot be used, private methods sometimes need to be protected or unnecessarily moved to a collaborator, static methods should be avoided completely and so on simply because of the limitations of existing frameworks. PowerMock is a framework that extends other mock libraries such as EasyMock with more powerful capabilities. PowerMock 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. By using a custom classloader no changes need to be done to the IDE or continuous integration servers which simplifies adoption.
Learn more
Telerik JustMock
JustMock allows you to easily isolate your testing scenario and lets you focus on the logic you want to verify. It integrates seamlessly with your favorite unit testing framework and makes unit testing and mocking simple and fast. Mock everything like non-virtual methods, sealed classes, static methods and classes, as well as non-public members and types everywhere even members of MsCorLib. The perfect tool for unit testing your .NET code whether you're dealing with complex and hard to maintain legacy code or code written with best practices in mind. From finding what arguments your mock object is called with to why it’s not called or why it’s called repeatedly, the JustMock Debug Window helps you find the answers you are looking for while debugging your unit tests. JustMock allows you to receive critical feedback about the completeness and thoroughness of your unit tests—an absolute must for any organization that strives for high-quality code.
Learn more
EasyMock
Most parts of a software system do not work in isolation, but collaborate with other parts to get their job done. In a lot of cases, we do not care about using real collaborators implementation in unit testing, as we trust these collaborators. Mock objects replace collaborators of the unit under test. To test a unit in isolation or mount a sufficient environment, we have to simulate the collaborators in the test. A Mock Object is a test-oriented replacement for a collaborator. It is configured to simulate the object that it replaces in a simple way. In contrast to a stub, a Mock Object also verifies whether it is used as expected. EasyMock has been the first dynamic Mock Object generator, relieving users of hand-writing Mock Objects, or generating code for them. EasyMock provides Mock Objects by generating them on the fly using Java proxy mechanism.
Learn more
Mockito
Mockito is a mocking framework that tastes really good. It lets you write beautiful tests with a clean & simple API. Mockito doesn’t give you hangover because the tests are very readable and they produce clean verification errors. Read more about features & motivations. Top 10 Java library across all libraries, not only the testing tools. In late 2013 there was an analysis made of 30.000 GitHub projects. Although Mockito reached number 9 in the main report, mockito-core and mockito-all are the same tool and therefore the factual position of Mockito is number 4, surpassing famous tools like Guava or Spring. Treat this study as an indicator of a big impact that Mockito makes every day on unit tests written in Java.
Learn more
Pricing
Starting Price:
Free
Free Version:
Free Version available.
Company Information
MockK
mockk.io
Other Useful Business Software
Gemini 3 and 200+ AI Models on One Platform
Build generative AI apps with Vertex AI. Switch between models without switching platforms.
Product Details
Platforms Supported
Windows
Mac
Linux
Training
Documentation
Support
Online