Average Ratings 0 Ratings

Total
ease
features
design
support

No User Reviews. Be the first to provide a review:

Write a Review

Average Ratings 0 Ratings

Total
ease
features
design
support

No User Reviews. Be the first to provide a review:

Write a Review

Description

Mocking serves as an effective method to enhance the readability and maintainability of code during testing. In a series of three articles, I aim to explore the foundational concepts, features, and unique aspects of the MockK library. This innovative open-source library, available on GitHub, is dedicated to simplifying the mocking process in Kotlin. When it comes to property injection, the library first attempts to align properties by their names, followed by matching them based on class or superclass hierarchies. For further customization, users can refer to the lookupType parameter. Notably, property injection continues to function even when private visibility is enforced. Additionally, when selecting constructors for injection, the library prioritizes those with the highest number of arguments, proceeding to those with fewer. This thoughtful design enhances the user experience and flexibility in testing scenarios.

Description

Creating unit tests can be a challenging endeavor, and at times, it may require compromising good design principles solely to enhance testability. While good design often aligns with improved testability, this correlation does not hold true in every situation. For instance, the use of final classes and methods can become problematic, with private methods occasionally needing to be altered to protected or shifted to a collaborator unnecessarily. Additionally, static methods are best avoided altogether due to the constraints imposed by various frameworks. PowerMock is a robust framework that supplements other mocking libraries, such as EasyMock, offering enhanced capabilities. Through the utilization of a custom classloader and bytecode manipulation, PowerMock allows for the mocking of static methods, constructors, final classes, private methods, and the removal of static initializers, among other features. Importantly, because it employs a custom classloader, users can integrate it without needing to modify their IDEs or continuous integration systems, thus streamlining the process of implementation. Ultimately, the ability to mock such diverse elements can significantly improve the flexibility and effectiveness of unit testing efforts.

API Access

Has API

API Access

Has API

Screenshots View All

Screenshots View All

Integrations

JUnit
Bootstrap
EasyMock
Java
Kotlin
Mockito
Parasoft

Integrations

JUnit
Bootstrap
EasyMock
Java
Kotlin
Mockito
Parasoft

Pricing Details

Free
Free Trial
Free Version

Pricing Details

Free
Free Trial
Free Version

Deployment

Web-Based
On-Premises
iPhone App
iPad App
Android App
Windows
Mac
Linux
Chromebook

Deployment

Web-Based
On-Premises
iPhone App
iPad App
Android App
Windows
Mac
Linux
Chromebook

Customer Support

Business Hours
Live Rep (24/7)
Online Support

Customer Support

Business Hours
Live Rep (24/7)
Online Support

Types of Training

Training Docs
Webinars
Live Training (Online)
In Person

Types of Training

Training Docs
Webinars
Live Training (Online)
In Person

Vendor Details

Company Name

MockK

Website

mockk.io

Vendor Details

Company Name

PowerMock

Website

github.com/powermock/powermock

Alternatives

Alternatives

Telerik JustMock Reviews

Telerik JustMock

Progress Telerik
Telerik JustMock Reviews

Telerik JustMock

Progress Telerik